You are on page 1of 7

INTRODUCTION TO

SOFTWARE ENGINEERING
RIMSHA SHAKOOR
FA19-BSE-007
WATERFALL MODEL
The Waterfall Model was the first Process Model to be introduced. It is very simple to
understand and use. In a Waterfall model, each phase must be completed before the next
phase can begin and there is no overlapping in the phases. The waterfall model is the
earliest SDLC  approach that was used for software development.
In “The Waterfall” approach, the whole process of software development is divided into
separate phases. The outcome of one phase acts as the input for the next phase
sequentially. This means that any phase in the development process begins only if the
previous phase is complete. The waterfall model is a sequential design process in which
progress is seen as flowing steadily downwards (like a waterfall) through the phases
of Conception, Initiation, Analysis, Design, Construction, Testing,
Production/Implementation, and Maintenance.
As the Waterfall Model illustrates the software development process in a linear sequential
flow; hence it is also referred to as a Linear-Sequential Life Cycle Model.
PHASES OF WATERFALL MODEL:

Sr.
Phase Activities Performed Deliverables
No

1 Requirement 1. Capture all the requirements. RUD (Requirements


Analysis 2. Do brainstorming and walkthrough to understand the Understanding
requirements. Document)
3. Do the requirements feasibility test to ensure that the
requirements are testable or not.

2 System Design 1. As per the requirements, create the design HLD ( High Level
2. Capture the hardware / software requirements. Design document)
3. Document the designs
LLD (Low level design
document)

3 Implementation 1. As per the design create the programmes / code Programs


2. Integrate the codes for the next phase. Unit test cases and
3. Unit testing of the code results

4 System Testing 1. Integrate the unit tested code and test it to make sure if it Test cases
works as expected. 2. Perform all the testing activities Test reports
(Functional and non-functional) to make sure that the system Defect reports
meets the requirements. Updated matrices.
3. In case of any anomaly, report it.
4. Track your progress on testing through tools like
traceability metrics, ALM
5. Report your testing activities.

5 System 1. Make sure that the environment is up User Manual


Deployment 2. Make sure that there are no sev 1 defects open.
3. Make sure that the test exit criteria are met. Environment
4. Deploy the application in the respective environment. definition /
5. Perform a sanity check in the environment after the specification
application is deployed to ensure the application does not
break.

6 System 1. Make sure that the application is up and running in the User Manual
maintenance respective environment.
2. In case user encounters and defect, make sure to note and List of production
fix the issues faced. tickets
3. In case any issue is fixed; the updated code is deployed in
the environment. List of new features
4. The application is always enhanced to incorporate more implemented.
features, update the environment with the latest features
SPIRAL MODEL
Spiral Model is a combination of Iterative Development Model and Waterfall Model with
very high emphasis on risk analysis. It allows for incremental releases of the product, or
incremental refinement through each iteration around the spiral.
This model is best used for large projects which involves continuous enhancements. There
are specific activities which are done in one iteration (spiral) where the output is a small
prototype of the large software. The same activities are then repeated for all the spirals till the
entire software is build.

PHASES OF SPIRAL MODEL:


There are four phases of spiral model.
 Planning Phase
 Risk Analysis Phase
 Engineering Phase
 Evaluation Phase
Phase
Activities performed Deliverables / Output
Name

Planning -Requirements are studied and gathered. Requirements understanding document


- Feasibility study
- Reviews and walkthroughs to streamline the Finalized list of requirements.
requirements

Risk Requirements are studied and brain storming sessions Document which highlights all the risks
Analysis are done to identify the potential risks and its mitigation plans.

Once the risks are identified, risk mitigation strategy is


planned and finalized

Engineering Actual development and testing if the software take Code


place in this phase Test cases and test results
Test summary report and defect report.

Evaluation Customers evaluate the software and provide their Features implemented document
feedback and approval

PICTORIAL REPRESENTATION
DIFFERENCES BETWEEN WATERFALL MODEL AND SPIRAL MODEL

Waterfall Model Spiral Model


The waterfall model is a relatively linear sequential The spiral model is a risk driven process
design approach to develop software projects. model generator for software projects. 

 Customer Involvement

In spiral model, the customer involvement is


In waterfall model, the customer involvement is
high. The customer has an awareness of what
minimum.
the product is.

Flow of the Phases

In waterfall model, after completing a phase and


Spiral model operates on iterations, so it is
reached a new phase, it is not possible to go back to
possible to go back to the previous phases.
the previous phase.

 Usage

The spiral model can be used for large,


The waterfall model can be used for small projects
complex project that requires continuous risk
and for projects with clear requirements.
analysing.

Simplicity

The waterfall model is simple and easy. The spiral model is a complex model.

You might also like