· When requirements for a problem are well understood then this model is used in which work flow from communication to deployment is linear
· This Model also called as the Classic life cycle or linear sequential model.
· When to use?
o Requirements are very well known, clear and fixed
o Product definition is stable
o Technology is understood
o There are no ambiguous (unclear) requirements
o Ample (sufficient) resources with required expertise are available freely
o The project is short
Communication: Communication with Customers / stockholders to understand project requirements for defining software features
Planning: Software Project Plan which defines workflow that is to follow. It describes technical task, risks, resources, product to be produced & work schedule
Modeling: Creating models to understand requirements and shows design of software to achieve requirements
Construction: Code Generation (manual or automated) & Testing (to uncover errors in the code)
Deployment: Deliver Software to Customer Collect feedback from customer based on evaluation Software Support
Advantages
· Simple to implement and manage
Drawbacks
· Unable to accommodate changes at later stages, that is required in most of the cases.
· Working version is not available during development. Which can lead the development with major mistakes.
· Deadlock can occur due to delay in any step.
· Not suitable for large projects.