Chapter 6 - Development lifecycle and approaches Flashcards

1
Q

What does the System Development Lifecycle (SDLC) cover?

A

The SDLC covers the entire life of a system, including feasibility study, analysis, specification, design, development, operation, maintenance, and enhancement.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

what is the focus of the Project Lifecycle?

A

The Project Lifecycle focuses on delivering a specified business product within constraints of time, cost, resources, and quality.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How do projects and system development lifecycles differ?

A

System development lifecycles typically cover technical deliverables, while project lifecycles include management, quality aspects, and all elements necessary for project success.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How does PRINCE2 classify project products?

A

PRINCE2 divides products into two groups: Specialist Products (actual IS deliverables like software and user manuals) and Management Products (project management tools like organization, plans, and reports, including quality criteria and controls).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Why is choosing an appropriate lifecycle model important for project success?

A

It is important for project success to have a defined lifecycle model to ensure clarity and alignment of project activities.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Who typically determines the lifecycle model for a project?

A

The lifecycle model may be predetermined by the organization or project strategy.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the characteristics of the Waterfall Model?

A

The Waterfall model is a sequential development process with distinct stages. Each stage must be completed before the next begins, and outputs from one stage serve as inputs to the next.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How does the Spiral Model differ from the Waterfall Model?

A

The Spiral Model is an iterative development process with a focus on risk analysis.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is verification and validation in the context of the Waterfall model?

A

Verification ensures that the product is built correctly according to specifications, while validation ensures that the product is fit for its intended use.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are the strengths of the Waterfall model?

A

The sequencing of activities enhances quality management via verification and validation. It also facilitates configuration management through baselining products at the end of each stage and complements project management planning, control techniques, and change control processes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are the limitations of the Waterfall model?

A

It lacks explicit mechanisms for management control, planning, and risk management. It is best suited for projects with well-understood requirements and stable business contexts, being less effective for projects with unclear requirements or subject to significant changes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What weaknesses does the ‘b’ model address in the Waterfall model?

A

The ‘b’ model addresses the inadequacy of covering the maintenance phase adequately and treating it as a separate, distinct stage.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Why is maintenance considered important in the ‘b’ model?

A

Maintenance is crucial because it constitutes the majority of effort in a system’s lifecycle and can represent over 70% of total lifecycle costs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is the purpose of the Incremental model?

A

The Incremental model delivers system functionality in phases over time, also known as phased delivery.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are the advantages of the Incremental model?

A

It makes delivery and testing more manageable, allows for the gradual introduction of new system components, and facilitates familiarization with changes within the organization.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What challenges does the Incremental model pose?

A

It requires phases that are internally consistent, introduces overhead due to integration and retesting of each phase, and necessitates a complete scope and clear requirements before defining increments.

17
Q

How does the Spiral model compare with the Waterfall model?

A

The Spiral model contrasts with the Waterfall’s sequential process by being an evolutionary or iterative approach to systems development.

18
Q

What are the key phases in the Spiral model?

A

The Spiral model, developed by Barry Boehm, is divided into four quadrants: determining objectives and constraints, evaluating alternatives and resolving risks, development phase similar to the waterfall, and planning the next phase or iteration.

19
Q

What are the key concepts emphasized in the Spiral model?

A

It emphasizes risk management, objective setting, and iterative planning to effectively manage project constraints over iterative cycles.

20
Q

What is the traditional approach to systems development?

A

The traditional approach refers to unstructured and non-specific methods, often based on variations of the waterfall model.

21
Q

What are the key characteristics of the traditional approach to systems development?

A

It lacks user involvement throughout the development process, relies primarily on text-based documentation, and emphasizes how tasks are to be achieved rather than defining what needs to be achieved.

22
Q

How are users engaged in the traditional approach?

A

Users are involved only initially during the analysis stage and again after the requirements specification, with limited formal involvement.

23
Q

What are the advantages of the traditional approach?

A

It suits analysts and users who prefer intuitive methods and makes minimal demands on users’ time due to simplified documentation in English.

24
Q

What are the disadvantages of the traditional approach?

A

Text-based documentation can be ambiguous and interpreted differently, often resulting in poor-quality systems due to a lack of user input and ownership, and fostering blame between users and developers.

25
Q

Why did agile approaches emerge?

A

Agile approaches emerged as a reaction to the perceived inefficiencies of structured methods like the waterfall model, aiming to deliver results more quickly amidst rapid business changes, evolving technology, and increasing user expectations.

26
Q

What is the focus of Rapid Application Development (RAD) and agile methods?

A

RAD and agile methods emphasize rapid delivery despite potential imperfections, quick response to business opportunities and changes, and minimizing external changes during development.

27
Q

How does agile development employ iterative and incremental development?

A

Agile development uses iterative cycles where each iteration adds functionality or enhances performance based on evolving requirements and insights, with prototyping playing a crucial role in clarifying requirements and incorporating user feedback.

28
Q

What is Scrum in the context of agile methods?

A

Scrum is an iterative approach with 30-day sprints that emphasizes frequent, time-boxed deliveries, facilitated by a ScrumMaster who guides rather than directs the process.

29
Q

What is DSDM (Dynamic System Development Method)?

A

DSDM is a UK-based agile method focusing on business needs, timeboxing, collaboration, and quality.

30
Q

For what types of projects is agile suitable, and what are some challenges?

A

Agile is suitable for projects where requirements are unstable and scope may evolve, with challenges for project managers including maintaining control amidst rapid development cycles and evolving requirements.

31
Q

What benefits do organizations gain from successful agile implementations?

A

Organizations benefit from agile’s ability to deliver usable software quickly, enhancing user satisfaction and adapting to changing business needs.

32
Q

What are the fundamentals of objects in object-oriented development?

A

Objects encapsulate both data (variables) and processes (methods), and communication between objects occurs via messages, resembling real-world interactions.

33
Q

What are the advantages of OO principles in large-scale system development?

A

OO principles ease coordination, localize changes to specific objects (minimizing system-wide modifications), and enhance maintainability.

34
Q

What challenges does OO analysis present compared to traditional structured analysis?

A

Traditional structured analysis separates data and processes, whereas OO analysis requires integrating methods and variables together for effective system design.

35
Q

What is the purpose of the Unified Modelling Language (UML) in OO projects?

A

UML provides a visual language for modeling object-oriented projects, standardizing the way OO systems are represented and understood.

36
Q

What is the Unified Process (UP) and how does it relate to UML?

A

UP offers a process model for project development, utilizing UML for visual representation. It standardizes the approach to managing OO projects.

37
Q

What is the Rational Unified Process (RUP)?

A

RUP is a commercially available set of processes and tools based on the Unified Process, created by Rational Corporation, and has become a widely adopted industry standard.

38
Q

What are the four phases of the Unified Process?

A

The four phases are Inception (defining project scope and objectives), Elaboration (detailed analysis and risk mitigation), Construction (design and implementation), and Transition (deployment and user training).

39
Q

What are the five key workflows in each phase of the Unified Process?

A

The five key workflows are requirements, analysis, design, implementation, and test. The balance of these workflows varies by phase to ensure appropriate focus at each stage of development.