Page 57 - DCAP405_SOFTWARE_ENGINEERING
P. 57

Software Engineering                                           Deepak Mehta,  Lovely Professional University




                    Notes                        Unit 4: Evolutionary Process Models


                                     CONTENTS
                                     Objectives
                                     Introduction
                                     4.1  Evolutionary Process Model
                                          4.1.1  Benefits of Evolutionary Development Model

                                     4.2  Prototyping Model
                                     4.3  The Spiral Model
                                     4.4  Concurrent Development Model
                                     4.5  A Final Comment on Evolutionary Models
                                     4.6  Summary
                                     4.7  Keywords
                                     4.8  Review Questions

                                     4.9  Further Readings
                                   Objectives


                                   After studying this unit, you will be able to:
                                       Demonstrate evolutionary process models
                                       Recognize Prototyping and Spiral Models

                                       Describe the concurrent development model

                                   Introduction

                                   There is growing recognition that software, like all complex systems, evolves over a period of
                                   time. Business and product requirements often change as development proceeds, making a
                                   straight path to an end product unrealistic; tight market deadlines make completion of a
                                   comprehensive software product impossible, but a limited version must be introduced to meet
                                   competitive or business pressure; a set of core product or system requirements is well understood,
                                   but the details of product or system extensions have yet to be defined. In these and similar
                                   situations, software engineers need a process model that has been explicitly designed to
                                   accommodate a product that evolves over time.

                                   The linear sequential model is designed for straight-line development. In essence, this waterfall
                                   approach assumes that a complete system will be delivered after the linear sequence is completed.
                                   The prototyping model is designed to assist the customer (or developer) in understanding
                                   requirements. In general, it is not designed to deliver a production system. The evolutionary
                                   nature of software is not considered in either of these classic software engineering paradigms.




                                     Notes  Evolutionary models are iterative. They are characterized in a manner that enables
                                     software engineers to develop increasingly more complete versions of the software.





          50                                LOVELY PROFESSIONAL UNIVERSITY
   52   53   54   55   56   57   58   59   60   61   62