Linear Sequential Model/Waterfall Model/Classic Life Cycle : The linear sequential model, sometimes called the classic life cycle or the waterfall model, suggests a systematic, sequential approach to software development that begins at the system level and progresses through communication, planning, modeling, construction and deployment. The following given figure illustrates the linear sequential model for software engineering.
(i) Communication : This activity involves heavy communication with customers and other stakeholders in order to gather requirements and other related activities.
(ii) Planning : Here a plan to be followed will be created which will describe the technical tasks to be conducted, risks, required resources, work schedule etc.
(iii) Modeling : A model will be created to better understand the requirements and design to achieve these requirements.
(iv) Construction : Here the code will be generated and tested.
(v) Deployment : Here, a complete or partially complete version of the software is represented to the customers to evaluate and they give feedbacks based on the evaluation.
This is the oldest paradigm of software engineering. However many problems have been encountered when this model is applied. Some of these are described below.
(i) Real projects rarely follow the linear sequential model. Although the linear model can accommodate iteration, it does so indirectly. As a result, changes can cause confusion as the project team proceeds.
(ii) It is often difficult for the customers to state all the requirements explicitly. This model requires this and has difficulty accommodating the natural uncertainty.
(iii) The customers must have patience. A working version of the program will not be available until late in the project time-span. A major mistake, if undetected until the working program is reviewed, can be disastrous.