The next step in the evolution of Agile project management
In this blog, I make a case for what I think is the next step in the evolution of Agile project management. The focus of project management used to be based on managing Tasks that people perform to deliver a piece of software. Agile project management shifted focus to managing the delivery of Features. I believe that the time is ripe for the Agile community to take the next step: move towards Value driven project management.
Task driven Project Management
In waterfall projects, project management effort is geared towards delivering a predefined set of features within predefined time and budget constraints. During a project, project management effort is focused on managing the Tasks that are identified to deliver these features. It is hard to predict exactly which tasks are needed, how long they will take and how they depend on each other. The result is that projects are often delivered over time and over budget.
Feature driven Project Management
In Agile projects, project management effort is mostly focused on features. An Agile project may target a fixed release date and have a fixed budget, but the exact set of features that is delivered will be refined along the way. Managing the tasks to implement these features is left to the people that perform them. The effort of a Product Owner is focused on prioritizing and refining features that the Agile teams will work on.
This approach has proven to be much more effective in delivering software within time and budgetary constraints. However, the ultimate goal of software development should not be to deliver features within time and budget.
Value driven Project Management
Teams build features that add Value to the business. Examples of business objectives are “increase market share”, or “increase customer satisfaction”. Underlying such high level goals, there usually are lower level goals such as “increase the number of visitors to our website”, or “increase the percentage of visitors that buy a product”.
Currently, most people on Agile projects have a good understanding of the cost of features, but not of the Value that is delivered by these features. What do you think is more interesting to know about a software release:
- “A sum of 400 story points worth of features has been delivered”, or
- “The SEO optimization in the release resulted in a 30% increase in the number of visitors to our website, which resulted in an increase of market share by 5%”?
To plan for Value, business objectives should be expressed explicitly, they should be quantified and they should be measured. For the features we build, we should be explicit in how and to what extent we expect them to achieve these business objectives. Using measured data after releasing new or improved features, it should be validated whether they have the expected results.
For a team to be effective in helping to achieve business objectives, it is essential to have a shared understanding of them. Only then the knowledge and creativity of people that work on a project can be used to come up with the best ways to achieve them. Only then can it be validated which features are really adding most value to the stakeholders.
Note that the idea of Value driven project management is not at all new. Agile pioneer Tom Gilb is preaching this ever since he pioneered doing iterative software development. Together with his son Kai they are on an endless quest to convince the world that this is the way to do project management if you want to be competitive.
I think the Agile community will catch up with them eventually. In the evolution of project management, moving from Task driven to Value driven just proved to be too big a step. The current Feature driven approach is a necessary intermediate step. To be competitive, you should want to be in the forefront. It's time to take the next step. It's time for Value driven project management!