Page 62 - DCAP405_SOFTWARE_ENGINEERING
P. 62

Unit 4: Evolutionary Process Models




               Since in this methodology a working model of the system is provided, the users get a  Notes
               better understanding of the system being developed.

               Errors can be detected much earlier as the system is mode side by side.
               Quicker user feedback is available leading to better solutions.

          Disadvantages of Prototyping

               Leads to implementing and then repairing way of building systems.
               Practically, this methodology may increase the complexity of the system as scope of the
               system may expand beyond original plans.

          Self Assessment


          Fill in the blanks:
          6.   Development of the ……………………….. obviously undergoes design, coding, and testing,
               but each of these phases is not done very formally or thoroughly.

          7.   Prototyping is an attractive idea for complicated and large systems for which there is no
               …………………….. process or existing system to help determine the requirements.
          8.   After the prototype has been developed, the end users and ………………………. are given
               an opportunity to use the prototype.
          9.   Prototyping is often not used, as it is feared that development costs may
               become…………………….

          10.  Requirements frozen after experience with the prototype are likely to be
               more………………..

          4.3 The Spiral Model


          As it is clear from the name, the activities in this model can be organized like a spiral that has
          many cycles. The radial dimension represents the cumulative cost incurred in accomplishing the
          steps done so far, and the angular dimension represents the progress made in completing each
          cycle of the spiral. The model is shown in Figure 4.3.
          Each cycle in the spiral begins with the identification of objectives for that cycle, the different
          alternatives that are possible for achieving the objectives, and the constraints that exist. This is
          the first quadrant of the cycle (upper-left quadrant). The next step in the cycle is to evaluate these
          different alternatives based on the objectives and constraints. The focus of evaluation in this step
          is based on the risk perception for the project. Risks reflect the chances that some of the objectives
          of the project may not be met. The next step is to develop strategies that resolve the uncertainties
          and risks. This step may involve activities such as benchmarking, simulation, and prototyping.
          Next, the software is developed, keeping in mind the risks. Finally, the next stage is planned.
          The development step depends on the remaining risks. For example, if performance or user-
          interface risks are considered more important than the program development risks, the next
          step may be an evolutionary development that involves developing a more detailed prototype
          for resolving the risks. On the other hand, if the program development risks dominate and the
          previous prototypes have resolved all the user-interface and performance risks, the next step
          will follow the basic waterfall approach.






                                           LOVELY PROFESSIONAL UNIVERSITY                                   55
   57   58   59   60   61   62   63   64   65   66   67