Choosing the right project methodology is often crucial to achieve the objectives. Waterfall or AGILE, it implies a preliminary reflection to obtain satisfactory results
Waterfall or agile: which project methods to choose to maximize your productivity
8 minutes read
Install new software in your company… Move all your data to a dedicated space… Change ERP and migrate to a new version… All this is part of IT projects that are often long and complex.
To carry them out successfully, it is important to follow a precise method to progress efficiently and meet the objectives.
Here is a point on the different methods you can adopt for your projects in the company but also elsewhere.
What is a Project?
A project is a planning of different activities that are carried out in an articulated way to reach a precise objective: the production of a good or service. Each project has a time and economic constraint.
Before starting a project, it is important to put forward:
- The objectives and goals
- A precise description of the product, service, or final result
- A timeline of activities with the different steps to follow
- A budget
- The expected results
There are two types of projects:
- One-time projects will be carried out only once. The objectives, but also the budget, human and material resources will be specifically allocated to this project.
- Repetitive projects are projects that will be repeated more than once at a time. Thus, the different experiences will allow for better management of all the resources made available.
In both cases, it is important to follow a clear and precise methodology to guarantee the smooth running of the project. Today, there are many methods available for any type of project.
The So-called Classical Methods
The Waterfall Model
This is the classic model that has remained the reference in the world of project management for a long time. It is based on the principle of the construction of a building: if it does not have good foundations, then the rest of its construction will be complicated or even impossible.
The different tasks must therefore be carried out linearly, and one must wait until the previous task or subtask is completed before starting the new one.
The GANT flowchart is the most used tool to represent this type of project. There are 6 steps:
- Putting forward the requirements and needs
- Planning the different steps
- Realization of the steps
- Final validation of the project
- Delivery of the product or service
- Maintenance to come back on possible problems
With this method, it is much easier to respect a budget because it is not possible to go back and therefore add work to the teams (except in the case of a major problem that will imply starting over).
It is also easy to understand and implement. Nevertheless, in case of unforeseen events and failure to meet the deadlines for a task, the whole project is impacted and will be delayed.
The V-cycle method was introduced in the 1970s and is a direct descendant of the waterfall method.
It takes its name from the descending phase (realization) and then the ascending phase (validation) of the project, thus taking the form of a V. Each realization step is linked to a validation step:
- Definition of the needs in terms of resources and validation of the project feasibility. This leads to the acceptance or validation of the project product
- The setting up of specifications with the constraints to be respected, which must be validated by the project manager (MOE) to verify that the project is in agreement with what was decided at the beginning and that it will meet the needs put forward previously
- The general design with the use of the different resources made available. The architectural team is in charge of testing the proper functioning of components when they are used together
- The detailed design of each component leads to a test of them
- The realization of the project
As with the waterfall method, there is no turning back with this method. Indeed, validation allows you to quickly move on to the next step by making sure that everything works up to that point.
Of course, this can be a disadvantage in case of unforeseen events because it will be necessary to go through the different phases of realization but also of validation which can delay the project.
The Agile Software Development
At the beginning of the 1990s, more and more experts pointed out the not-always-satisfactory results of projects carried out with classical methods. And if we had been talking about agility as a decision-making process for several years, it was only in these years that experts started to look at the issue.
And it was finally in 2001 that the Agile manifesto was published, written by seventeen software development experts. The objective was to develop a way of proceeding to carry out projects while respecting a defined budget. It is characterized by four values that emphasize the importance:
- People and their interactions
- Having working software rather than documentation
- Collaboration with the customer
- Change because many unforeseen events can occur
These values are accompanied by twelve principles:
Agile methods can be defined as a set of practices and techniques that allow a project to be more dynamic and satisfying.
Thus, with this method, all stakeholders work hand in hand. Communication is at the center and a real relationship of trust is created.
Transparency is the keyword because the client will be able to observe the evolution of the project, without forgetting that it is only a step. Finally, it is much easier to foresee the workload in time and to manage the budget.
We are now going to see a selection of the most used and appreciated AGILES methods in the professional world.
Like the AGILE method, the SCRUM method allows for the improvement of the productivity of a team while offering an optimized product or service in the framework of a project. First of all, in a SCRUM project team, it is important to define the roles that each person will have
To carry out a project with the method, several steps must be respected:
- The product backlog/poker planning: the product owner will establish the priority tasks and detail them succinctly. It is therefore an information phase. Note that the objectives are not necessarily well-defined at this stage.
- The sprint: this is a time (often one month) during which all the teams will work to be able to propose a non-final functional product. It is often preceded by sprint planning which states the objectives to be reached at the end of this month of work
- Daily meeting: during a sprint, the teams have daily meetings with the scrum master to present their progress and problems
- Sprint review: this is the final control phase that allows you to measure the progress of a project. Here, the scrum master has a key role as he reviews the progress of the project with the different teams at the end of each sprint. Numerous graphs are presented, such as the burndown, which shows what remains to be done, or the burnup, which tracks the evolution of work done over time.
The DevOps Method
The term comes from the combination of the words development and operation. The main idea is that the different actors of the project work in close collaboration to offer a quality result. This way, everyone is on the same wavelength, including the client, and a relationship of trust is quickly established.
There are 8 steps to follow that form a cycle:
- The planning of tasks is agile with, as for the SCRUM method, sprint phases. The established objectives are often high, and flexibility is important
- Development and code review: continuous, this step is broken down into many small phases for a faster and better-quality production
- Code implementation
- Testing: continuous and automated. A testing team is dedicated most of the time to this step. In case of errors or security breaches, the codes are sent back directly to the developers
- Continuous deployment: if the code passes the test, it is shared to be executed in a public server. Thus, it does not affect the existing code but still allows the largest number of people to have access to it
- Configuration of the infrastructure
- Continuous monitoring
Among the advantages of this method, we can cite the speed of implementation and execution allowing for rapid innovation, the reliability of the product thanks to the continuous stages of integration, delivery, and monitoring, and the improvement of working conditions with collaboration at all levels and between all.
What Method should I Choose?
Every project is different and unique. Therefore, a methodology that works on one project may not work on another. To try to choose the right method, it is interesting to consider the different time frames.
The future: what are the objectives and what is the purpose of the project?
This may seem strange, but the first step is to start from the end of the project, i.e., the expected deliverable.
The past: what has already worked?
Unless you are a brand-new company with a brand-new team, you have been involved in projects before. So, you know how everyone works.
So, some people, because of their character, will prefer things to be orderly, while others are more efficient and motivated when the environment is dynamic with changes and unexpected events.
The present: what method enhances my project?
It is about linking the project and the teams. The idea is not to carry out a project but to carry out the best possible project in terms of quality so that the client is satisfied.
The Hybrid Methods
It is possible to combine two methods to best manage your project. If all combinations are possible, we often refer to a mix between the Agile method and the traditional method when we talk about hybrid project management.
Concretely, it will be a question of taking the best of two methods, for example, a precise framing of each request while leaving an opening to change.
This implies an important preparation upstream because all the actors must communicate perfectly, whether they are face-to-face or remotely. Everyone’s skills are valued and regularly mobilized.
Setting up a Project with VASPP
At VASPP, whether you want to implement a turnkey solution or take advantage of our service offer of customized solutions, all developers and other quality controllers are trained in both classical and AGILE methodologies (SCRUM, DevOps…).
We attach particular importance to the study phase of the project to understand the needs and expectations of customers and also to establish a relationship of trust from the first exchanges.
Discovers more VASPP articles
Design Thinking in Service of User Experience: Best Practices to Adopt
Explore the fundamental principles of design thinking and learn how this user-centered approach can help your company innovate and creatively solve problems. Discover the key
Don’t confuse SAP Fiori and SAP UI5 anymore
Very often associated with SAP Fiori, SAP UI5 is however an entity of SAP in its own right. This framework allows you to easily create
SAP Fiori : Guide & Features
SAP Fiori, often associated with SAP UI5 and UX Design, is a technology allowing to modernize SAP screens, making them simpler and more ergonomic for