To facilitate Agile ways of working, methods and tools are not the only thing that need to be introduced if an organization wants to go Agile. It is also important how higher level management in organizations adapts to Agile development practices. Instead of a purely top-down approach, to make Agile work, organizations need to create the right context for agile teams to perform well.
If we talk about projects, there are projects that are more or less copies of other projects and therefore quite predictable, and there are projects that are innovative, unique and hard to predict, like developing a new way to treat patients.
We asked our Trainer and Consultant Niels Van Bemmelen to identify the differences in these types of projects, and show the right approach. Here is his answer!
“There are roughly 2 different approaches for countering this uncertainty:
- The rationalistic approach: base what you develop on a good, detailed and clear description. To do so, analyse needs, specify requirements and plan the project in a clear way to minimise errors in project delivery. This approach assumes that it is possible to define the right requirements in detail, before developing. In many situations, however, that is hard or even impossible.
- The empirical approach: base what you develop on the client’s / user’s feedback on working, testable outputs. To do so, define a high level project output and start delivering working parts of it (if possible even before detailed description), getting feedback as soon as possible, to be able to adapt if it does not satisfy the needs of the client/ user. This can feel like a ‘tinker’ approach – there is no detailed upfront plan, but when implemented well, delivers the right outputs on the right moment.
This is exactly what software developers in the 90’s and early 2000’s experienced. With new software users/clients often had difficulty formulating what it would have to look like when it was finished. So often software developers were in a situation where it was hard to specify and freeze detailed requirements upfront.
Agile techniques and concepts
In methods like Scrum, Safe and AgilePM there are a lot of techniques and concepts that facilitate the agile approach:
- Short, regular development and delivery cycles (sprints, time-boxes) to have frequent, regular feedback, and retrospectives, to improve continuously;
- Visual and verbal communication like information radiators, Kanban boards, burn charts and daily stand-ups to improve communication;
- Relatively small, stable and empowered (self managing) teams, that are a mix of customer and supplier matter experts to establish positive group dynamics and improve collaboration;
- Interactive and participative planning, prioritisation and reporting techniques to raise involvement, allow for adaptive planning and the ‘wisdom of the crowd’.”
Author: Niels Van Bemmelen