Traditional vs. Agile method
With a traditional waterfall approach, everything is planned and discussed upstream: the budget, the schedule and the requirements. The project manager leaves with these elements and only resurfaces at the time of delivery. The risk inherent in such an approach is to deliver an obsolete project (or product), because the market has changed since the kick-off. However, not everything is bad about the traditional approach because it is perfectly adapted to certain environments and it allows to give a fixed delivery date, sometimes essential.
Agile project management was therefore naturally born within IT in the context of software development, where the ability to adapt throughout the development process was essential. There is no longer a fixed delivery date, but rather regular deliveries (iterative and incremental) that are part of a continuous improvement logic.
Characteristics of the Agile method
We define delivery phases, or Sprint, whose duration generally varies between 2 and 4 weeks.
Before the start of each Sprint, the team validates the backlog items that it is committed to delivering.
During the Sprint, every morning the team meets for a quick review (work done the day before, work to be done during the day and possible issues).
At the end of the Sprint, the team holds a review to demonstrate that it has delivered what it committed to.
This is followed by a retrospective to see how to improve the next sprints.
As you can see, this method allows you to make changes (add items, review their priority) from one sprint to the next and thus be more responsive.
Creating value
The idea of implementing more agile processes came from the fact that the important thing in developing a product is to make sure that it brings value to its end user. What's the point of spending several months working on a product only to realize at the end that it no longer meets expectations?
But the value can also benefit the internal teams!
Agile therefore seeks to bring value on several levels (non-exhaustive list):
- Customer satisfaction
- Cooperation within the teams
- The creation of operational products
- Simplification of processes
- Faster and more frequent deliveries and updates
The Agile Team
It has three roles:
- The product owner: he is the client, the one who places the order in a way. He defines the deliverables for his future product, knowing exactly what the end user (or customer) wants. He is the one who defines the features to be developed.
- The team: generally composed of less than ten people, with complementary profiles (architects, analysts, developers...) and which will deliver new elements every sprint. In agility, the objective is to make the team as autonomous as possible: it is the best placed to know the volume of items it can process in a sprint and their degree of complexity.
- The scrum master: a kind of project manager, he makes sure that the team does not lose the vision of the product and removes obstacles from its path. In particular, he ensures (and leads) the daily morning meetings. He is also the one who ensures the team's velocity. The scrum master is not part of the team because he may have to manage several teams for different projects.
Agile, singular or plural ?
There are in fact several agile approaches:
- Scrum (for iterative software deliveries), often considered synonymous with agile, even though there are other methods.
- Kanban (initially for inventory management based on customer needs and not on availability on the shelves, in order to avoid surplus).
- XP (takes some Agile principles to the extreme. Suitable for small teams with changing needs).
- Lean (eliminate manufacturing defects and reduce costs to improve productivity).
Is agility the answer to everything?
It is not absolutely necessary to move to agility!
Many companies live very well with a hybrid model that happily combines agile and traditional methods.
Then, not all projects are adapted to an agile approach: if the risks of changes or innovation are low, the waterfall method will work like a charm. The same goes if you have deliverables expected on a fixed date and unchangeable.
For more information:
Project management: follow the life cycle of a project in agile mode