0% found this document useful (0 votes)
25 views

Iterative Development Model

The document discusses the iterative development model. It describes how iterative development starts with a simple implementation of some requirements and iteratively enhances the software through repeated cycles until completion. Each iteration adds new functionality and makes design modifications until the full system is implemented.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

Iterative Development Model

The document discusses the iterative development model. It describes how iterative development starts with a simple implementation of some requirements and iteratively enhances the software through repeated cycles until completion. Each iteration adds new functionality and makes design modifications until the full system is implemented.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

ITERATIVE

dEVElopmEnT modEl
Iterative process starts with a simple implementation of a small set of the
software requirements and iteratively enhances the evolving versions until the
complete system is implemented and ready to be deployed

An iterative life cycle model does not attempt to start with a full specification of
requirements. Instead, development begins by specifying and implementing just
part of the software, which is then reviewed to identify further requirements.
This process is then repeated, producing a new version of the software at the end
of each iteration of the model.
Iterative process starts with a simple implementation of a subset of the
software requirements and iteratively enhances the evolving versions until the
full system is implemented.

At each iteration, design modifications are made and new functional


capabilities are added. The basic idea behind this method is to develop a system
through repeated cycles (iterative) and in smaller portions at a time
(incremental)
 Iterative and Incremental development is a combination of both iterative design or
iterative method and incremental build model for development.
 "During software development, more than one iteration of the software development
cycle may be in progress at the same time."
 This process may be described as an "evolutionary acquisition" or "incremental build"
approach
 In this incremental model, the whole requirement is divided into various builds.
 During each iteration, the development module goes through the requirements, design,
implementation and testing phases.
 Each subsequent release of the module adds function to the previous release. The process
continues till the complete system is ready as per the requirement
 The key to a successful use of an iterative software development lifecycle is rigorous
validation of requirements, and verification & testing of each version of the software
against those requirements within each cycle of the model.
 As the software evolves through successive cycles, tests must be repeated and extended to
verify each version of the software.
ITERATIVE modEl - ApplIcATIon
Iterative and incremental development has some specific applications in the
software industry. This model is most often used in the following scenarios

 Requirements of the complete system are clearly defined and understood.


 Major requirements must be defined; however, some functionalities or
requested enhancements may evolve with time.
 There is a time to the market constraint.
 A new technology is being used and is being learnt by the development team
while working on the project.
 Resources with needed skill sets are not available and are planned to be used
on contract basis for specific iterations.
 There are some high-risk features and goals which may change in the future.
AdVAnTAgEs of ITERATIVE dEVElopmEnT modEl
Feedback Path
In the classical waterfall model, there are no feedback paths, so there is no
mechanism for error correction. But in the 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.
Simple
Iterative Development model is very simple to understand and use. That’s why it is
one of the most widely used software development models.
Cost-Effective
It is highly cost-effective to change the plan or requirements in the model. Moreover,
it is best suited for agile organizations.
Well-organized
In this model, less time is consumed on documenting and the team can spend more
time on development and designing.
dIsAdVAnTAgE of ITERATIVE dEVElopmEnT modEl

Difficult to incorporate change requests


The major drawback of the iterative waterfall model is that all the requirements
must be clearly stated before starting the development phase. Customers may
change requirements after some time but the iterative waterfall model does not
leave any scope to incorporate change requests that are made after the
development phase starts.

Incremental delivery not supported


In the iterative waterfall model, the full software is completely developed and
tested before delivery to the customer. There is no scope for any intermediate
delivery. So, customers have to wait a long for getting the software
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.

Risk handling not supported


Projects may suffer from various types of risks. But, the Iterative waterfall model
has no mechanism for risk handling.

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.

You might also like