If you are a software developer, you know that there are lots of project management methodologies in this industry. All of them are different. That is because of the fact that they are based on various principles. The principles of a certain software development methodology formulate its particular approach to project realization. In this article we will tell you about Waterfall principles. But before doing that it is necessary to find the proper definition for this methodology.
Currently Waterfall is the most popular methodology of software development. It originated in 1950s. At that time software development was a new industry, so the programmers just took a good old manufacturing methodology and applied it to this process. That is why Waterfall is considered conservative among software developers. However, most of them prefer to use it because of its good predictability.
The principles of Waterfall are the main basics of this methodology. Some inexperienced developers often ask about 6, 9, or 12 principles of Waterfall. However, such questions are not formulated properly. That is because of the fact that some developers confuse the principles of one methodology with the principles of another. They know that Agile method of software development has 9 or 12 principles in accordance with various classifications and think that Waterfall has the same number of principles. But the reality differs significantly. Waterfall methodology has only three main principles. By implementing them in your team you will be capable of running and managing Waterfall projects.
These three principles are: low degree of customer involvement, strong project documentation, and sequential structure of projects. To understand them better, let’s look at them in greater detail.
The degree of customer involvement in Waterfall projects is very low. That is because of the fact that Waterfall teams prefer to use documents rather than to discuss the project issues with their clients. Usually they conduct only two meetings with their customers during every project. The first of them is aimed at learning and documenting the client’s requirements. It is conducted before the work on the project starts. The second meeting takes place only after the final product is ready to delivery. The customers like this model of software development because they don’t have to waste their time on participating in software development projects. However, in some cases the customer may be surprised with the result of the team’s work. That may lead to problems with product acceptance.
Documentation is the main basis for all activities of a Waterfall team. As we have already mentioned, the team members create initial project documents during their meeting with the customer. These documents contain requirements of the client to the final software product. After they are formulated, the team members may continue their work at the design stage. It creates new documents that contain the data on the architecture of the future software and the tasks of the project. Many developers call strong documentation a great advantage of Waterfall methodology. However, the developers waste lots of time to handle their documents.
The principle of sequential stages is the main principle of Waterfall methodology. Every Waterfall project has 5 or 7 stages that should be performed one after another. Their order is common for all projects and it cannot be changed. A Waterfall team cannot return to the previous stage of project realization even if something in it went wrong. That is why many teams have to run their projects from the very beginning after detecting bugs that appear at the early stages of their realization.