Prescriptive process models
Prescriptive process models prescribes a set of framework and other activities, quality assurance points and such software process related elements. They define a work flow among these elements that shows their inter-relationship.
The Waterfall Model
It is used in small projects where requirements are well defined and known before starting the project. Activities are carried out in a linear and systematic fashion.
This model is also known as ‘Linear sequential model‘ or ‘Classic life cycle model‘.
The process start with communication, where requirements are gathered from the customer and recorded. Then goes to the planning stage where the cost and time constraints are estimated, a schedule is outlined and project tracking variables are defined. Modeling is where a design based on the requirements and keeping the project constraints in mind is created. After this, code is generated and the actual building of product is started in construction phase. Testing (unit testing, integration testing) is done after code completion in this phase. Deployment is the last stage where product is delivered, customer feedback is received and, support and maintenance for the product is provided.
- Simple model to use and implement.
- Easily understandable work flow.
- Easy to manage since requirements are known prior to the start of project.
- Can be applied to projects where quality is preferred over cost.
- It may be difficult for the customer to provide all the specific requirements beforehand.
- Cannot be used for complex and object oriented projects.
- Testing and customer evaluation is done at the last stages and hence risk is high.
- Iteration of activities are not promoted which is unavoidable for certain projects.