Lecture - 04 - SDLC (Iterative Waterfall & Incremental Process Model)
Lecture - 04 - SDLC (Iterative Waterfall & Incremental Process Model)
2
The iterative waterfall model provides feedback
paths from every phase to its preceding phases,
which is the main difference from the classical
waterfall model.
3
The main focus of this phase is to determine whether it
would be financially and technically feasible to develop
the software.
4
The feedback paths allow the phase to be reworked
in which errors are committed and these changes
are reflected in the later phases. But, there is no
feedback path to the stage – feasibility study,
because once a project has been taken, does not
give up the project easily.
5
Feedback Path: In the classical waterfall model, there are
no feedback paths, so there is no mechanism for error
correction. But in iterative waterfall model feedback path
from one phase to its preceding phase allows correcting
the errors that are committed and these changes are
reflected in the later phases.
6
Difficult to incorporate change requests: The major drawback
of the iterative waterfall model is that all the requirements must
be clearly stated before starting of the development phase.
Customer may change requirements after some time but the
iterative waterfall model does not leave any scope to incorporate
change requests that are made after development phase starts.
7
Overlapping of phases not supported: Iterative waterfall
model assumes that one phase can start after completion of
the previous phase, But in real projects, phases may
overlap to reduce the effort and time needed to complete
the project.
8
Limited customer interactions: Customer interaction
occurs at the start of the project at the time of
requirement gathering and at project completion at the
time of software delivery. These fewer interactions with
the customers may lead to many problems as the finally
developed software may differ from the customers’
actual requirements.
9
Incremental process model is also known as
Successive version model.
11
Life cycle activities –
Requirements of Software are first broken down into several modules that can be
incrementally constructed and delivered. At any time, the plan is made just for the
next increment and not for any kind of long term plans. Therefore, it is easier to
modify the version as per the need of the customer. Development Team first
undertakes to develop core features (these do not need services from other
features) of the system.
Once the core features are fully developed, then these are refined to increase levels
of capabilities by adding new functions in Successive versions. Each incremental
version is usually developed using an iterative waterfall model of development.
As each successive version of the software is constructed and delivered, now the
feedback of the Customer is to be taken and these were then incorporated in the
next version. Each version of the software have more additional features over the
previous ones.
12
13
Error Reduction: The core modules are used by the
customer from the beginning and therefore these get tested
thoroughly. This reduces chances of errors in the core
modules of the final product, leading to greater reliability
of the software.
required.
15