Introduction To Software Engineering
Introduction To Software Engineering
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
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)
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.
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.
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.
Evaluation Customers evaluate the software and provide their Features implemented document
feedback and approval
PICTORIAL REPRESENTATION
DIFFERENCES BETWEEN WATERFALL MODEL AND SPIRAL MODEL
Customer Involvement
Usage
Simplicity
The waterfall model is simple and easy. The spiral model is a complex model.