Page 42 -
P. 42

2 - PROJECT LIFE CYCLE AND ORGANIZATION






                   2.4.2.3 Iterative and Incremental Life Cycles


                      According to Section 2.4.2.3 of the PMBOK  Guide, iterative and incremental life cycles are those in which
                                                           ®
                   the project scope is generally determined early in the project life cycle, but time and cost estimates are routinely
                   modified as the project team’s understanding of the product increases.
                      For software projects, requirements are often modified in addition to routinely modifying time and cost estimates,
                   thus making trade-offs possible among requirements, time, and cost as the project team’s understanding of the
                   product increases. One or more of these three factors may be constrained, thus limiting the trade-off options.
                   Constraining all three factors usually results in project and product failure.

                      As described in Section 2.4.2.2 of this Software Extension, process iterations and product increments are distinct
                   concepts. Iterations are elements of the development process while increments are elements of the product. The
                   intangible nature of software permits interleaving, overlapping, and intermixing of iterations and increments in
                   various ways.
                         •   Iterative project life cycles. Iterative life cycles for software projects repeat one or more of the software
                           development stages; the number of stages included in one iteration may vary from iteration to iteration.
                           Some iterations may involve only one development stage, whereas others may involve multiple stages.
                           The software product is progressively elaborated; feedback is incorporated as new information is gained
                           and understanding increases. New requirements may emerge, existing requirements may be modified,
                           and derived requirements may be added. A life cycle is often beneficial when complexity is high, when
                           the project incurs frequent changes, or when the scope is subject to differing stakeholders’ views of the
                           desired final software product. Figure 2-3 illustrates some elements of a software project life cycle for a
                           single product delivery that iterates between two project phases and among three stages in each of the
                           phases.

                         •   Incremental product development. Each increment of incremental product development adds
                           functionality that increases the product scope.  This approach provides the opportunity for project
                           managers and stakeholders to view intermediate demonstrations of working software and for the











                                                       Analyze         Construct
                                         Product                                      Deliverable
                                         Scope         Architect        Integrate      Product
                                                        Design            Test






                    Figure 2-3. A Software Project Life Cycle with Two Iterative Phases, Each Having Three Iterative Stages





          30       ©2013 Project Management Institute. Software Extension to the PMBOK  Guide Fifth Edition
                                                                   ®
   37   38   39   40   41   42   43   44   45   46   47