Chapter 3 Flashcards

1
Q

What is the topic of Chapter 3?

A

SDLC Models

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

List the SDLC models covered in the outline.

A

Introduction, Waterfall, Iterative, Spiral, V Model, Big Bang, Agile, RAD, Prototype

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

What are the 6 phases shown in the Software Development Cycle diagram?

A

1: Planning, 2: Analysis, 3: Design, 4: Implementation, 5: Testing & Integration, 6: Maintenance

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

What is Phase 1 in the SDLC diagram?

A

Planning

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

What is Phase 2 in the SDLC diagram?

A

Analysis

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

What is Phase 3 in the SDLC diagram?

A

Design

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

What is Phase 4 in the SDLC diagram?

A

Implementation

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

What is Phase 5 in the SDLC diagram?

A

Testing & Integration

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

What is Phase 6 in the SDLC diagram?

A

Maintenance

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

What is another term for SDLC models?

A

Software development process models

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

What does each SDLC process model follow?

A

A series of steps unique to its type to ensure success in the process of software development.

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

List the most important and popular SDLC models mentioned in the introduction.

A

Waterfall model, Iterative model, Spiral model, V-model, Big bang model, Agile model, RAD model, Prototype model

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

What are the sequential phases shown in the Waterfall Model diagram?

A

Requirement Analysis, System Design, Implementation, Testing, Deployment, Maintenance

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

What happens during the ‘Requirement Gathering and analysis’ phase of the Waterfall model?

A

All possible requirements of the system to be developed are captured in this phase and documented in a requirement specification document.

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

What is the purpose of the ‘System Design’ phase in the Waterfall model?

A

The requirement specifications from first phase are studied in this phase and the system design is prepared. This system design helps in specifying hardware and system requirements and helps in defining the overall system architecture.

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

How is the system developed during the ‘Implementation’ phase of the Waterfall model?

A

With inputs from the system design, the system is first developed in small programs called units, which are integrated in the next phase. Each unit is developed and tested for its functionality (Unit Testing).

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

What occurs during the ‘Integration and Testing’ phase of the Waterfall model?

A

All the units developed in the implementation phase are integrated into a system after testing of each unit. Post integration the entire system is tested for any faults and failures.

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

When does the ‘Deployment of system’ phase happen in the Waterfall model?

A

Once the functional and non-functional testing is done; the product is deployed in the customer environment or released into the market.

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

What does the ‘Maintenance’ phase involve in the Waterfall model?

A

Fixing issues which come up in the client environment (patches are released). Enhancing the product with better versions. Delivering these changes in the customer environment.

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

Advantage of Waterfall Model: Simplicity?

A

Simple and easy to understand and use

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

Advantage of Waterfall Model: Manageability?

A

Easy to manage due to the rigidity of the model. Each phase has specific deliverables and a review process.

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

Advantage of Waterfall Model: Phasing?

A

Phases are processed and completed one at a time.

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

Advantage of Waterfall Model: Suitability for small projects?

A

Works well for smaller projects where requirements are very well understood.

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

Advantage of Waterfall Model: Stages?

A

Clearly defined stages.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Advantage of Waterfall Model: Milestones?
Well understood milestones.
26
Advantage of Waterfall Model: Task Arrangement?
Easy to arrange tasks.
27
Advantage of Waterfall Model: Documentation?
Process and results are well documented.
28
Disadvantage of Waterfall Model: Working Software Timing?
No working software is produced until late during the life cycle.
29
Disadvantage of Waterfall Model: Risk?
High amounts of risk and uncertainty.
30
Disadvantage of Waterfall Model: Suitability for complex projects?
Not a good model for complex and object-oriented projects.
31
Disadvantage of Waterfall Model: Suitability for long projects?
Poor model for long and ongoing projects.
32
Disadvantage of Waterfall Model: Progress Measurement?
It is difficult to measure progress within stages.
33
Disadvantage of Waterfall Model: Changing Requirements?
Cannot accommodate changing requirements.
34
Disadvantage of Waterfall Model: Scope Adjustment?
Adjusting scope during the life cycle can end a project.
35
Disadvantage of Waterfall Model: Integration Timing?
Integration is done as a "big-bang" at the very end, which doesn't allow identifying any technological or business bottleneck or challenges early.
36
What does the Iterative Model diagram show happening in parallel or sequence for different builds?
Multiple builds (Build 1, Build 2, Build 3) each going through Design & Development, Testing, and Implementation phases, based on initial Requirements.
37
What are the phases within a single iteration shown in the Iterative Model diagram?
Requirement, Analysis, Design, Testing, Implementation, Review (potentially followed by Deployment and Maintenance).
38
How does the Iterative process begin and evolve?
The iterative process starts with a simple implementation of requirements and iteratively enhances the evolving versions until the complete system is implemented.
39
Does the Iterative model start with full requirements?
Does not attempt to start with a full specification of requirements.
40
How does development begin in the Iterative model?
Development begins by specifying and implementing just part of the software, which is then reviewed to identify further requirements.
41
What is produced at the end of each iteration in the Iterative model?
A new version of the software at the end of each iteration of the model.
42
What happens at each iteration regarding design and functionality in the Iterative model?
At each iteration, design modifications are made and new functional capabilities are added.
43
What is the basic idea behind the Iterative method?
To develop a system through repeated cycles (iterative) and in smaller portions at a time (incremental).
44
Advantage of Iterative Model: Testing?
Testing and debugging during smaller iteration is easy.
45
Advantage of Iterative Model: Development Planning?
A Parallel development can be planned.
46
Advantage of Iterative Model: Adaptability?
It is easily acceptable to the ever-changing needs of the project.
47
Advantage of Iterative Model: Risk Management?
Risks are identified and resolved during iteration.
48
Advantage of Iterative Model: Documentation/Design Time?
Limited time spent on documentation and extra time on designing.
49
Disadvantage of Iterative Model: Suitability for small projects?
It is not suitable for smaller projects.
50
Disadvantage of Iterative Model: Resources?
More Resources may be required.
51
Disadvantage of Iterative Model: Design Changes?
Design can be changed again and again because of imperfect requirements.
52
Disadvantage of Iterative Model: Budget?
Requirement changes can cause over budget.
53
Disadvantage of Iterative Model: Completion Date?
Project completion date not confirmed because of changing requirements.
54
What are the four main activities represented in the quadrants of the Spiral Model diagram?
Object Identification, Evaluation (Risk Management, Prototypes), Implementation (Design, Code, Integration, Test), Review/Next Phase Planning.
55
What concepts spiral outwards in the Spiral Model diagram?
Cost, Risk Management, Prototypes, Design, Code, Integration, Test, Implementation, Release.
56
What does the outward spiral represent in the Spiral Model?
Progress through iterative cycles, increasing cost and project completeness.
57
When is the Spiral Model suitable regarding budget and risk?
When there is a budget constraint and risk evaluation is important.
58
What type of projects is the Spiral Model suitable for regarding risk level?
For medium to high-risk projects.
59
Why is the Spiral Model suitable for long-term projects?
Long-term project commitment because of potential changes to economic priorities as the requirements change with time.
60
When is the Spiral Model suitable regarding customer requirements clarity?
Customer is not sure of their requirements which is usually the case.
61
When is the Spiral Model suitable regarding requirement complexity?
Requirements are complex and need evaluation to get clarity.
62
How can the Spiral Model be used for new product lines?
New product line which should be released in phases to get enough customer feedback.
63
When is the Spiral Model suitable regarding expected changes?
Significant changes are expected in the product during the development cycle.
64
Advantage of Spiral Model: Risk Analysis?
High amount of risk analysis.
65
Advantage of Spiral Model: Project Suitability?
Useful for large and mission-critical projects.
66
Advantage of Spiral Model: Requirement Changes?
Changing requirements can be accommodated.
67
Advantage of Spiral Model: Prototypes?
Allows extensive use of prototypes.
68
Advantage of Spiral Model: Requirement Accuracy?
Requirements can be captured more accurately.
69
Advantage of Spiral Model: User Visibility?
Users see the system early.
70
Advantage of Spiral Model: Development Division?
Development can be divided into smaller parts, and the risky parts can be developed earlier, which helps in better risk management.
71
Disadvantage of Spiral Model: Cost?
Can be a costly model to use.
72
Disadvantage of Spiral Model: Expertise?
Risk analysis requires highly specific expertise.
73
Disadvantage of Spiral Model: Suitability for small projects?
Doesn't work well for smaller projects.
74
Disadvantage of Spiral Model: Management Complexity?
Management is more complex.
75
Disadvantage of Spiral Model: End Date?
End of the project may not be known early.
76
Disadvantage of Spiral Model: Process Complexity?
Process is complex.
77
Disadvantage of Spiral Model: Duration?
Spiral may go on indefinitely.
78
Disadvantage of Spiral Model: Documentation?
Large number of intermediate stages requires excessive documentation.
79
What are the two sides of the V-Model representing?
Developer's life Cycle (Verification Phase) and Tester's Life Cycle (Validation Phase).
80
List the phases on the Verification (left) side of the V-Model
top to bottom.
81
List the phases on the Validation (right) side of the V-Model
bottom to top.
82
In the V-Model
what verification phase corresponds to Acceptance Testing?
83
In the V-Model
what verification phase corresponds to System Integration Testing?
84
In the V-Model
what verification phase corresponds to Component Testing?
85
In the V-Model
what verification phase corresponds to Unit Testing?
86
Define Verification in the context of the V-Model.
It involves a static analysis method (review) done without executing code. It is the process of evaluating the product development process to find whether specified requirements are met.
87
Define Validation in the context of the V-Model.
It involves a dynamic analysis method (functional, non-functional), and testing is done by executing code. Validation is the process to classify the software after the completion of the development process to determine whether the software meets the customer's expectations and requirements.
88
How is the testing phase planned in the V-Model?
Under the V-Model, the testing phase of the development process is planned in parallel.
89
Under what conditions is the V-Model suitable regarding requirements?
Requirements are well defined, clearly documented and fixed. There are no ambiguous or undefined requirements.
90
Under what conditions is the V-Model suitable regarding product definition?
Product definition is stable.
91
Under what conditions is the V-Model suitable regarding technology?
Technology is not dynamic and is well understood by the project team.
92
What is the typical project duration suitable for the V-Model?
The project is short.
93
Advantage of V-Model: Discipline?
This is a highly-disciplined model, and Phases are completed one at a time.
94
Advantage of V-Model: Project Suitability?
Works well for smaller projects where requirements are very well understood.
95
Advantage of V-Model: Simplicity?
Simple and easy to understand and use.
96
Advantage of V-Model: Manageability?
Easy to manage due to the rigidity of the model. Each phase has specific deliverables and a review process.
97
Disadvantage of V-Model: Risk?
High risk and uncertainty.
98
Disadvantage of V-Model: Suitability for complex projects?
Not a good model for complex and object-oriented projects.
99
Disadvantage of V-Model: Suitability for long projects?
Poor model for long and ongoing projects.
100
Disadvantage of V-Model: Suitability for changing requirements?
Not suitable for projects where requirements are at a moderate to high risk of changing.
101
Disadvantage of V-Model: Flexibility during testing?
Once an application is in the testing stage, it is difficult to go back and change a functionality.
102
Disadvantage of V-Model: Working Software Timing?
No working software is produced until later in the life cycle.
103
What are the inputs shown for the Big Bang model?
Time, Efforts, Resources.
104
What is the output of the Big Bang model?
Software.
105
How is the process depicted in the Big Bang model diagram?
As a central 'Big Bang' transforming inputs (Time, Efforts, Resources) directly into the output (Software).
106
Does the Big Bang model follow a specific process?
Do not follow any specific process.
107
How does development start in the Big Bang model?
The development just starts with the required money and efforts as the input.
108
What kind of projects typically follow the Big Bang model?
Usually this model is followed for small projects.
109
How much planning is required for the Big Bang model?
Very little planning required.
110
When is the Big Bang model considered ideal?
Ideal model for the product where requirements are not well understood.
111
Advantage of Big Bang Model: Simplicity?
This is a very simple model.
112
Advantage of Big Bang Model: Planning?
Little or no planning required.
113
Advantage of Big Bang Model: Management?
Easy to manage.
114
Advantage of Big Bang Model: Resources?
Very few resources required.
115
Advantage of Big Bang Model: Flexibility?
Gives flexibility to developers.
116
Advantage of Big Bang Model: Learning?
It is a good learning aid for newcomers or students.
117
Disadvantage of Big Bang Model: Risk?
Very High risk and uncertainty.
118
Disadvantage of Big Bang Model: Suitability for complex projects?
Not a good model for complex and object-oriented projects.
119
Disadvantage of Big Bang Model: Suitability for long projects?
Poor model for long and ongoing projects.
120
Disadvantage of Big Bang Model: Cost Risk?
Can turn out to be very expensive if requirements are misunderstood.
121
What are the main phases shown cyclically in the Agile Development Methodology diagram?
Brainstorm (Requirement Analysis), Design, Development, Quality Assurance, Deployment.
122
What inputs/activities feed into the Agile cycle phases according to the diagram?
Requirement Analysis -> Brainstorm; Design Document & Prototype -> Design; Iterations, Demo & Feedback -> Development & QA; Production & Technical Support -> Deployment.
123
What is done during 'Requirements gathering' (Step 1) in Agile?
Define the requirements. Explain business opportunities and plan the time and effort needed. Evaluate technical and economic feasibility.
124
What is done during 'Design the requirements' (Step 2) in Agile?
Work with stakeholders to define requirements. Use user flow diagram or high-level UML diagram to show work of new features.
125
What happens during 'Construction/iteration' (Step 3) in Agile?
Team defines requirements, work begins. Designers and developers start working, aiming to deploy a working product. Product undergoes improvement stages, includes simple, minimal functionality initially.
126
What is the purpose of 'Testing' (Step 4) in Agile?
The Quality Assurance team examines the product's performance and looks for bug.
127
What occurs during 'Deployment' (Step 5) in Agile?
The team issues a product for the user's work environment.
128
What is 'Feedback' (Step 6) in Agile?
After releasing the product, the team receives feedback about the product and works through the feedback.
129
Advantage of Agile Model: Delivery?
Frequent Delivery.
130
Advantage of Agile Model: Communication?
Face-to-Face Communication with clients.
131
Advantage of Agile Model: Design Efficiency?
Efficient design and fulfils the business requirement.
132
Advantage of Agile Model: Changes?
Anytime changes are acceptable.
133
Advantage of Agile Model: Development Time?
It reduces total development time.
134
Disadvantage of Agile Model: Documentation Issues?
Due to the shortage of formal documents, it creates confusion and crucial decisions taken throughout various phases can be misinterpreted at any time by different team members.
135
Disadvantage of Agile Model: Maintenance Issues?
Due to the lack of proper documentation, once the project completes and the developers allotted to another project, maintenance of the finished project can become a difficulty.
136
What are the core phases shown repeatedly or per module in the RAD model diagram?
Business Modelling, Data Modelling, Process Modelling, Application generation, Testing & Turnover.
137
How does the RAD model diagram depict handling multiple modules?
It shows potentially parallel development streams for different modules (Module 1, Module 2, Module 3), each going through the core RAD phases.
138
What is 'Business Modelling' in the RAD model?
The business model for the product under development is designed in terms of the flow of information and the distribution of information between various business channels. A complete business analysis is performed to find the vital information for the business and how it can be obtained.
139
What is 'Data Modelling' in the RAD model?
The attributes of all data sets are identified and defined. The relation between these data objects is established and defined in detail in relevance to the business model.
140
What is 'Process Modelling' in the RAD model?
The data object sets defined in the Data Modelling phase are converted to establish the business information flow needed to achieve specific business objectives as per the business model. Process descriptions for adding, deleting, retrieving or modifying a data object are given.
141
What is 'Application Generation' in the RAD model?
The actual system is built, and coding is done by using automation tools to convert process and data models into actual prototypes.
142
What is 'Testing and Turnover' in the RAD model?
The overall testing time is reduced in the RAD model as the prototypes are independently tested during every iteration.
143
Advantage of RAD Model: Flexibility?
This model is flexible for change.
144
Advantage of RAD Model: Adaptability?
In this model, changes are adoptable.
145
Advantage of RAD Model: Functionality Delivery?
Each phase in RAD brings highest priority functionality to the customer.
146
Advantage of RAD Model: Development Time?
It reduced development time.
147
Advantage of RAD Model: Reusability?
It increases the reusability of features.
148
Disadvantage of RAD Model: Skill Requirement?
It required highly skilled designers.
149
Disadvantage of RAD Model: Compatibility?
All application is not compatible with RAD.
150
Disadvantage of RAD Model: Suitability for small projects?
For smaller projects, we cannot use the RAD model.
151
Disadvantage of RAD Model: Technical Risk?
On the high technical risk, it's not suitable.
152
Disadvantage of RAD Model: User Involvement?
Required user involvement.
153
What are the two main development stages shown in the Prototype Model diagram?
Prototype Development and Iterative Development.
154
What are the steps within 'Prototype Development' in the Prototype Model diagram?
Requirement gathering -> Quick Decision -> Build Prototype -> Customer evaluation of Prototype -> Refine requirement incorporation customer Suggestion (feedback loop to Build Prototype).
155
What are the steps within 'Iterative Development' shown after prototype acceptance in the Prototype model diagram?
Acceptance by customer -> Design -> Implementation -> Testing -> Maintenance.
156
What is the core requirement of the Prototype model before developing actual software?
The prototype model requires that, before carrying out the development of actual software, a working prototype of the system should be built.
157
What is a prototype?
A prototype is a toy implementation, which is a simplified or minimal version of a system.
158
What are the typical characteristics of a prototype compared to the actual system?
A prototype usually turns out to be a very crude version of the actual system, possibly exhibiting limited functional capabilities, low reliability, and inefficient performance as compared to actual software.
159
List the phases of the Prototype Model mentioned in the description slide.
1.Requirement Gathering and Analyst, 2.Quick Decision, 3.Build a Prototype, 4.Assessment or User Evaluation, 5.Prototype Refinement, 6.Engineer Product.
160
Advantage of Prototype Model: User Involvement?
Increased user involvement in the product even before its implementation.
161
Advantage of Prototype Model: User Understanding?
Since a working model of the system is displayed, the users get a better understanding of the system being developed.
162
Advantage of Prototype Model: Cost/Time?
Reduce time and cost as the defects can be detected much earlier.
163
Advantage of Prototype Model: Feedback?
Quicker user feedback is available, leading to better solutions.
164
Advantage of Prototype Model: Functionality Identification?
Missing functionality can be identified easily.
165
Advantage of Prototype Model: Usability Identification?
Confusing or difficult functions can be identified.
166
Disadvantage of Prototype Model: Requirement Analysis Risk?
Risk of insufficient requirement analysis owing to too much dependency on the prototype.
167
Disadvantage of Prototype Model: User Confusion?
Users may get confused between the prototypes and the actual systems.
168
Disadvantage of Prototype Model: Complexity/Scope Creep?
Practically, this methodology may increase the complexity of the system as the scope of the system may expand beyond the original plans.
169
Disadvantage of Prototype Model: Prototype Reuse Risk?
Developers may try to reuse the existing prototypes to build the actual system, even when it is not technically feasible.
170
Disadvantage of Prototype Model: Effort Investment?
The effort invested in building prototypes may be too much if it is not monitored properly.