SlideShare a Scribd company logo
Iterative model in sdlc
Software testing tools
By
Md Abdullah Al Rumi
Definition
An iterative lifecycle 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 can
then be reviewed in order to identify further requirements. This
process is then repeated, producing a new version of the software
for each cycle of the model.
For Example:
continue..
In the diagram when we work iteratively we create rough product or
product piece in one iteration, then review it and improve it in next
iteration and so on until it’s finished. As shown in the image above,
in the first iteration the whole painting is sketched roughly, then in
the second iteration colors are filled and in the third iteration
finishing is done. Hence, in iterative model the whole product is
developed step by step.
Diagram of Iterative model:
Advantages of Iterative model:
In iterative model we can only create a high-level design of the application before we
actually begin to build the product and define the design solution for the entire
product. Later on we can design and built a skeleton version of that, and then evolved
the design based on what had been built.
In iterative model we are building and improving the product step by step. Hence we can
track the defects at early stages. This avoids the downward flow of the defects.
In iterative model we can get the reliable user feedback. When presenting sketches and
blueprints of the product to users for their feedback, we are effectively asking them to
imagine how the product will work.
In iterative model less time is spent on documenting and more time is given for
designing.
Disadvantages of Iterative model:
Each phase of an iteration is rigid with no overlaps
Costly system architecture or design issues may arise
because not all requirements are gathered up front
for the entire lifecycle
When to use iterative model:
Requirements of the complete system are clearly
defined and understood.
When the project is big.
Major requirements must be defined; however, some
details can evolve with time.
Summary
The word increment fundamentally means add onto. The word iterate
fundamentally means re-do. Sadly, iterative development has come to mean either
incremental or iterative, indiscriminately. That was an unfortunate turn for our
industry since each serves a different purpose and needs to be managed
differently. Incremental development gives you opportunities to improve your
development process, as well as adjust the requirements to the changing world.
Iterative development helps you improve your product quality. Yes, it is rework,
and yes, you probably need to do some rework to make your product shine. The
development process, feature set, and product quality all need constant
improvement. Use an incremental strategy, with reflection, to improve the first
two.

More Related Content

Iterative model in sdlc

  • 1. Iterative model in sdlc Software testing tools By Md Abdullah Al Rumi
  • 2. Definition An iterative lifecycle 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 can then be reviewed in order to identify further requirements. This process is then repeated, producing a new version of the software for each cycle of the model.
  • 4. continue.. In the diagram when we work iteratively we create rough product or product piece in one iteration, then review it and improve it in next iteration and so on until it’s finished. As shown in the image above, in the first iteration the whole painting is sketched roughly, then in the second iteration colors are filled and in the third iteration finishing is done. Hence, in iterative model the whole product is developed step by step.
  • 6. Advantages of Iterative model: In iterative model we can only create a high-level design of the application before we actually begin to build the product and define the design solution for the entire product. Later on we can design and built a skeleton version of that, and then evolved the design based on what had been built. In iterative model we are building and improving the product step by step. Hence we can track the defects at early stages. This avoids the downward flow of the defects. In iterative model we can get the reliable user feedback. When presenting sketches and blueprints of the product to users for their feedback, we are effectively asking them to imagine how the product will work. In iterative model less time is spent on documenting and more time is given for designing.
  • 7. Disadvantages of Iterative model: Each phase of an iteration is rigid with no overlaps Costly system architecture or design issues may arise because not all requirements are gathered up front for the entire lifecycle
  • 8. When to use iterative model: Requirements of the complete system are clearly defined and understood. When the project is big. Major requirements must be defined; however, some details can evolve with time.
  • 9. Summary The word increment fundamentally means add onto. The word iterate fundamentally means re-do. Sadly, iterative development has come to mean either incremental or iterative, indiscriminately. That was an unfortunate turn for our industry since each serves a different purpose and needs to be managed differently. Incremental development gives you opportunities to improve your development process, as well as adjust the requirements to the changing world. Iterative development helps you improve your product quality. Yes, it is rework, and yes, you probably need to do some rework to make your product shine. The development process, feature set, and product quality all need constant improvement. Use an incremental strategy, with reflection, to improve the first two.