Waterfall vs Agile: Project Planning and Control
Every software development project requires a plan to realize it. This plan must be well done because the quality of the final software product depends on it strongly. That is why it is necessary to discuss the issue of project planning and control.
The process of project planning is a compulsory part of every software development project because it is impossible to create a software product without a plan. The process of planning usually takes place at initial stages of the software development projects.
When we talk about control in this article, we mean the control of software developers while performing their initial plan. It is necessary to mention that in some software development methodologies the plan of the project can be changed during its performance. Such activity is also a part of plan controlling because it is aimed at adapting the initial plan to new conditions of the project. Wrong project planning and controlling strategy may lead to troubles with product delivery.
Most specialists define only two types of project planning and control strategies in modern software development industry.
The first type is called traditional. It is used by teams and developers who prefer to run their projects in Waterfall methodology. Like the methodology itself, this type of project planning and control is sequential. In begins before a Waterfall project starts. Waterfall developers usually begin to create plans of their projects at their first meetings with the customers. The main goal of such meetings is to learn and document the customer’s requirements. The project plan is formulated at the design stage. The developers control its performance during all next stages of project realization.
The second type of project planning is typical for Agile methodologies. It is iterative. Such projects usually have no strict unified plan. However, each of their iterative cycles has its own plan. For example, in Scrum sprint planning meetings are conducted at the beginning of each sprint. After that, the developers control the realization of sprint plans during the periods of sprint realization.