Another method of traditional software development is The Waterford Model.
The steps in the waterfall model occurs in a predefined order. At the end of each stage, a review takes place. The next stage cannot take place until the review has taken place.
The waterfall model is the best known SDLC model. It’s simple and easy to use. The important thing to remember about the Waterfall Model is the previous phase has to be completed before the next one begins.
When is the waterfall model applicable?
The waterfall model is applicable when:
- Software technologies are well known.
- New versions of the existing software system is being created.
- Software Requirements are clearly defined and known.
The stages in the waterfall model are: Planning, Analysis, Logical Design, Physical Design, Implementation and Maintenance.
The key activity of project planning is the process of clear, discrete activities and the work needed to complete each activity within a single project. The objective of the project planning process is the development of a Baseline Project Plan and the Project Scope Statement. It entails describing the project scope, alternatives and feasibility, dividing the project into tasks. Creating resource plan, Developing a schedule, developing a communication plan, identifying and assessing risk and creating the budget for the project.
For the analysis stage, you must work through the details of each requirement, study and analyse the current system and define and prioritise users requirements. This is done through traditional methods (interviews, observation and documentation) and modern methods (joint application design and prototyping).
The design phase is used to decide how the system will operate. hardware, software, network infrastructure and user interface must all be looked at. the purpose of the design phase is to create a blueprint that will satisfy all documented requirements, identify all inputs, processes and outputs and to avoid any misunderstandings through user and management involvement. The end result is a system design specification document. There are two types of design: (a) Logical design- design forms and reports, design interface and design database. (b) Physical design- design physical database, design programs and processes, and design distributed systems.
(4) Implementation: The coding, testing, installation, training and support of the new system and the delivery of that system into production.
Coding: physical design spec as are turned into working computer code.
Testing: testing is performed with different strategies, in parallel with coding.
Installation: the current system is replaced by the new system.
Training: Application specific or for off the shelf software.
The changes made to a system to fix or enhance its functionality. Occurs by obtaining maintenance reports, transforming requests into changes, designing changes and then implementing changes.
Easy to manage due to how rigid the model is.
All the phases are processed and completed one at a time.
It’s simple and easy to use.
It works well for smaller project when the requirements are well understood.
Testing is inherent to every phase.
Adjusting scope during the life cycle can kill a project.
No working software is produced until late into the project
There are high amount s of risk and uncertainty involved.