Waterfall Model Life Cycle
One of the oldest model used in software development is the waterfall software development life cycle model. The origin of this model is in the manufacturing and construction industry. Since formal software development methods did not exist at that time, this hardware oriented model was adapted for software development as well. Scroll down to know more about waterfall model life cycle.
Waterfall model is one of the most well-known model in software development life cycle. This model is also known as the traditional or classic model used in software development. It is not only simple to understand, but it is also easy to use. The highlight of waterfall model is that, there are defined phases in waterfall model life cycle and the preceding phase must be completed before the next phase starts. Although there are a number of different models, that are now used, in the software development, waterfall model still remains one of the top most used model. Having said that, let's read in detail about waterfall model methodology.
Software Development Model - Waterfall Model Life Cycle
The waterfall model in software engineering was originally designed in 1970 by Winston W. Royce. However, the model was not named as 'waterfall' model. In this model there is sequential progression from one phase to another. To elaborate this further, after the first phase is completed, it is considered as a stepping stone to the next phase. The phases in the waterfall - software development model are requirement analysis and project planning, system design and specification, coding and verification, system integration and testing and not to forget deployment and maintenance phase. Here is the waterfall model explained.
Requirement Analysis and Project Planning
In this first stage of waterfall model diagram, there is a meeting with the customer, to understand the requirements. The first stage, this is said to be the most crucial stage, as any miscommunication and misinterpretation at this stage may give rise to the software, that is being developed. When the requirements have been noted, it is important to make sure the requirements are detailed and accurate and there is no place for any ambiguity. Understanding the requirements and expectations of the customer properly will ensure, that the end product meets the specification.
System Design
The requirements, that are gathered in the previous phase are broken down into logical units, so that the software process becomes easy for implementation. This is the stage, when the software requirements along with the hardware requirements for every unit are identified. Then the designs are made accordingly. The interrelation between the various units of the software are identified and the connections are made, using algorithms and diagrams. To sum it up, this is the phase, where the fundamental work for actual programming and implementation is done.
System Implementation
In this phase the actual development of the software takes place. This phase is also known as coding and verification phase. Based on the algorithms written in the previous phase, software program is written. For every module, software code is written and tested, to check if the correct output is received.
System Integration and Testing
Now all the modules are integrated, after which the software is tested for correct output. All the bugs, that are made, due to integration are removed. Then software testing is carried out again. They are normally a series of tests, which are run to check the performance of the software, and also to find if any new bugs were introduced into the system, after the previous bugs were fixed. If any more errors do exist, the bugs are fixed only to be retested. The waterfall model in testing is followed, to make the software bug free, as far as possible.
System Deployment and Maintenance
This makes for the final phase of the waterfall model, where the software is deployed at the clients side, after it has undergone thorough testing. After the deployment of the software, routine maintenance work is carried out. Once the software has been deployed, in case the customer asks for any changes or enhancements, then the entire process is restarted.
There are various waterfall model advantages and disadvantages. The biggest advantage of this model is that, the phases are completed one at a time. However, the biggest disadvantage is that it is laborious, when any changes are to be made to the system. To sum up waterfall model life cycle in short, this model requires, that one moves from one phase to another, only after the preceding phase is completed satisfactorily. At the same time, it should not be forgotten, that various waterfall models may include slight or major variations in the process.
Software Development Model - Waterfall Model Life Cycle
The waterfall model in software engineering was originally designed in 1970 by Winston W. Royce. However, the model was not named as 'waterfall' model. In this model there is sequential progression from one phase to another. To elaborate this further, after the first phase is completed, it is considered as a stepping stone to the next phase. The phases in the waterfall - software development model are requirement analysis and project planning, system design and specification, coding and verification, system integration and testing and not to forget deployment and maintenance phase. Here is the waterfall model explained.
Requirement Analysis and Project Planning
In this first stage of waterfall model diagram, there is a meeting with the customer, to understand the requirements. The first stage, this is said to be the most crucial stage, as any miscommunication and misinterpretation at this stage may give rise to the software, that is being developed. When the requirements have been noted, it is important to make sure the requirements are detailed and accurate and there is no place for any ambiguity. Understanding the requirements and expectations of the customer properly will ensure, that the end product meets the specification.
System Design
The requirements, that are gathered in the previous phase are broken down into logical units, so that the software process becomes easy for implementation. This is the stage, when the software requirements along with the hardware requirements for every unit are identified. Then the designs are made accordingly. The interrelation between the various units of the software are identified and the connections are made, using algorithms and diagrams. To sum it up, this is the phase, where the fundamental work for actual programming and implementation is done.
System Implementation
In this phase the actual development of the software takes place. This phase is also known as coding and verification phase. Based on the algorithms written in the previous phase, software program is written. For every module, software code is written and tested, to check if the correct output is received.
System Integration and Testing
Now all the modules are integrated, after which the software is tested for correct output. All the bugs, that are made, due to integration are removed. Then software testing is carried out again. They are normally a series of tests, which are run to check the performance of the software, and also to find if any new bugs were introduced into the system, after the previous bugs were fixed. If any more errors do exist, the bugs are fixed only to be retested. The waterfall model in testing is followed, to make the software bug free, as far as possible.
System Deployment and Maintenance
This makes for the final phase of the waterfall model, where the software is deployed at the clients side, after it has undergone thorough testing. After the deployment of the software, routine maintenance work is carried out. Once the software has been deployed, in case the customer asks for any changes or enhancements, then the entire process is restarted.
There are various waterfall model advantages and disadvantages. The biggest advantage of this model is that, the phases are completed one at a time. However, the biggest disadvantage is that it is laborious, when any changes are to be made to the system. To sum up waterfall model life cycle in short, this model requires, that one moves from one phase to another, only after the preceding phase is completed satisfactorily. At the same time, it should not be forgotten, that various waterfall models may include slight or major variations in the process.
Like This Article?
Follow:

Post Comment



