Software Process Models PDF
Document Details
Tags
Summary
These lecture notes cover various software process models like Waterfall, Rapid Prototyping, and Build-and-Fix. The document details the characteristics and advantages/disadvantages of each model, focusing on their roles in software development.
Full Transcript
Software Process Models Lecture 3 Overview Different process models Build-and-fix model Waterfall model Incremental model Evolutionary process models Rapid prototyping model Spiral model Agile process models Extreme programming...
Software Process Models Lecture 3 Overview Different process models Build-and-fix model Waterfall model Incremental model Evolutionary process models Rapid prototyping model Spiral model Agile process models Extreme programming Object-oriented life-cycle models Unified Process Criteria for deciding on a model Software Process Models Process model (Life-cycle model) -steps through which the product progresses Requirements phase Specification phase Design phase Implementation phase Integration phase Maintenance phase Operation Software Process Models Build-and-Fix Model Problems No specifications No design Totally unsatisfactory High cost Difficult maintenance Waterfall Model The waterfall model is a sequential design process in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of SDLC. Waterfall model is an example of a Sequential model. In this model, the software development activity is divided into different phases and each phase consists of a series of tasks and has different objectives. (Refer to Lecture 2) Waterfall model is the pioneer of the SDLC processes. Characterized by: Feedback loops Documentation-driven Waterfall Model (contd.) Advantages Enforces disciplined approach Documentation for each phase Products of each phase checked by SQA group Maintenance is easier Every change reflected in the relevant documentation Waterfall Model (contd.) Disadvantages Working version of the software will not be available until late in the project time-span Specifications are long, detailed, written in a style unfamiliar to the client “Blocking states” –some project team members must wait for other team members to complete dependent tasks Rapid Prototyping Model Prototyping is defined as the process of developing a working replication of a product or system that has to be engineered. It offers a small scale replica of the end product and is used for obtaining customer feedback as described below: Rapid Prototyping Model (contd.) Rapid Prototyping Model (contd.) Rapid prototype characteristics: Used in the requirements phase Evaluated by the customer/user Then, it is discarded -do not turn into product Rapid prototyping model is not proven and has its own problems Possible solution Rapid prototyping for defining requirements Waterfall model for rest of life cycle Questions??