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