Page 51 - DCAP405_SOFTWARE_ENGINEERING
P. 51

Software Engineering




                    Notes              Construction: The construction phase builds increments of the system. Each increment is
                                       developed using a waterfall approach. This includes detailed analysis and design for the
                                       use cases in the increment and coding and testing of the event processors that implement
                                       the sequence of events defined by the use cases. The result is production quality software
                                       that satisfies a subset of the requirements and is delivered to the end users. Work on
                                       different increments may be done in parallel.

                                       Transition: The transition phase is the last phase in the project. This may include such
                                       things a performance tuning and rollout to all users.

                                  Advantages

                                       Generates working software quickly and early during the software life cycle.
                                       More flexible – less costly to change scope and requirements.

                                       Easier to test and debug during a smaller iteration.
                                       Easier to manage risk because risky pieces are identified and handled during its iteration.
                                       Each iteration is an easily managed milestone.

                                  Disadvantages

                                       Each phase of an iteration is rigid and do not overlap each other.
                                       Problems may arise pertaining to system architecture because not all requirements are
                                       gathered up front for the entire software life cycle.




                                      Task  Analyze the role of transition phase in incremental model.
                                  3.2.2 RAD Model


                                  RAD is a linear sequential software development process model that emphasis an extremely
                                  short development cycle using a component based construction approach. If the requirements
                                  are well understood and defines, and the project scope is constraint, the RAD process enables a
                                  development team to create a fully functional system with in very short time period.
                                  RAD (rapid application development) is a concept that products can be developed faster and of
                                  higher quality through:
                                       Gathering requirements using workshops or focus groups

                                       Prototyping and early, reiterative user testing of designs
                                       The re-use of software components
                                       A rigidly paced schedule that defers design improvements to the next product version
                                       Less formality in reviews and other team communication













          44                                LOVELY PROFESSIONAL UNIVERSITY
   46   47   48   49   50   51   52   53   54   55   56