Thursday, September 23, 2010

An Intuitive Approach to the Waterfall Model...

The incremental model is an intuitive approach to the waterfall model.  Multiple development cycles take place here, making the life cycle a “multi-waterfall” cycle.  Cycles are divided up into smaller, more easily managed iterations.  Each iteration passes through the requirements, design, implementation and testing phases.


A working version of software is produced during the first iteration, so you have working software early on during the software life cycle.  Subsequent iterations build on the initial software produced during the first iteration.

Incremental development slices the system functionality into increments (portions). In each increment, a slice of functionality is delivered through cross-discipline work, from the requirements to the deployment. The unified process groups increments/iterations into phases: inception, elaboration, construction, and transition.

Characteristics

          Construct a partial implementation of a total system
          Then slowly add increased functionality
          The incremental model prioritizes requirements of the system and then implements them in groups.
          Each subsequent release of the system adds function to the previous release, until all designed functionality has been implemented.

Incremental Model Strengths

          Develop high-risk or major functions first
          Each release delivers an operational product
          Customer can respond to each build
          Uses  “divide and conquer” breakdown of tasks
          Lowers initial delivery cost
          Initial product delivery is faster
          Customers get important functionality early
          Risk of changing requirements is reduced

Incremental Model Weaknesses

          Requires good planning and design
          Requires early definition of a complete and fully functional system to allow for the definition of increments
         Well-defined module interfaces are required (some will be developed long before others)
         Total cost of the complete system is not lower

Waterfall vs Iterative/Incremental Development

Waterfall development completes the project-wide work-products of each discipline in a single step before moving on to the next discipline in the next step. Business value is delivered all at once, and only at the very end of the project. Backtracking is possible in an iterative approach.



No comments:

Post a Comment