You are on page 1of 12

Waterfall Model:-

 The waterfall Model was the first Process Model to be introduced. It is also
referred to as a linear- sequential life cycle model. It is very simple and easy to
use. In a waterfall model, each phase must be completed before the next phase can
begin, and there is no overlapping in the phases.
 It illustrate the software development process in a linear sequential flow. This
model was the first SDLC Model to be used widely in software engineering to
ensure success of the project. In this model typically the outcome of one phase act
as the input for the next phase sequentially.
 Over the years, the industry has seen more popular software development
methodologies like Agile, DevOps etc. However such methodologies have not
been able to suit all project scenarios.
 In order to overcome the challenge associated with such methodologies, software
development process could combine the Agile's interactivity with the step of
waterfall process.
 The following illustration is a representation of different phase of the waterfall
model:-
Requirement
Analysis

System
Design

Implementation

Testing

Deployment

Maintenance
Waterfall Model:-
Advantages:-
1. Simple and easy to understand and use.
2. Easy to manage due to the rigidity of the model.
3. Phases are processed and completed one at a time.
4. Works well for smaller projects where requirements are
very well understood.
5. Clearly defined stages.
6. Easy to arrange tasks.
7. Process and results are well documented.
Disadvantages:-
1. No working software is produced until late during the
lifecycle.
2. High amount of risk and uncertainty.
3. Not a good model for complex and object-oriented
projects.
4. Poor model for long and ongoing projects.
5. It is difficult to measure progress within stages.
6. Adjusting scope during the lifecycle can end a project.
V-Model:-

 The V-model is a type of SDLC model where process executes in a sequential


manner in V-shape. It is also known as Verification and Validation model. It is
based on the association of a testing phase for each corresponding development
stage.
 The next starts only after completion of the previous phase i.e. for each
development activity, there is a testing activity corresponding to it.
1. Verification:- It involves a static analysis method done without executing
code. It is the process of evaluation of the product development process to
find whether specified requirements meet.
2. Validation:- It involves dynamic analysis method, testing is done by
executing a code. Validation is the process to classify the software after the
completion of the development.
Acceptance test design Acceptance
Requirement
testing
Analysis
System test design
System testing
System design

Integration test design


Integration
Architecture
testing
design
Unit test design

Module design Unit testing

Coding

V-Model
Design phase:-
 Requirement analysis
 System design
 Architecture design
 Module design
Testing phase:-
 Unit testing
 Integration testing
 System testing
 Acceptance testing
Advantages:-

1. It is used for small projects where project requirements are clear.


2. This is a highly disciplined model and Phases are completed one at a time.
3. Simple and easy to understand and use.
4. It focuses on verification and validation activities.

Disadvantages:-
5. High risk and uncertainty.
6. It is not a good for complex and object-oriented projects.
7. This model does not support iteration of phase.
8. It does not easily handle concurrent events.
Incremental Process Model:-
 Incremental Model is a process of software development where requirements divided
into multiple standalone modules of the software development cycle. In this model,
each module goes through the requirements, design, implementation, and testing
phases.
 Every subsequent release of the module adds function to the previous release. The
process continues until the complete system achieved.
 The various phases of this model are:-
1. Requirement analysis
2. Design & development
3. Testing
4. Implementation
Build1 Design and Testing Implementation
development

Build2
Design and
Requirements Testing Implementation
development

Build3
Design and Testing Implementation
development

Incremental model
Advantages:-
1. Errors are easy to be recognized.
2. Easier to test and debug.
3. More flexible
4. Simple to manage risk because it handled during its iteration.
5. The client gets important functionality early.
Disadvantages:-
6. Need for good panning.
7. Total cost is high.
8. Well defined module interfaces are needed.
Advantages:-
1. Reduced development time.
2. Increases reusability of components.
3. Quick initial reviews occur.
4. Encourages customer feedback.
Disadvantages:-
5. Requires highly skilled developers/designers.
6. High dependency on modelling skills.
7. Needs strong team collaboration.

You might also like