I got a chance the other day to watch a talk from a Dr. Blaize Reich from Beedie School of Business at Simon Fraser University. The topic was “Beyond the Triangle: Delivering Value in an Agile World”, and looked into her research at how companies used Agile (being pure Agile, traditional waterfall, and mixed projects) and how well they did. What she found was that projects run as traditional compared with those run as Agile had about the same success rate (in terms of budget and scope), but Agile projects had a higher stakeholder satisfaction.
I don’t know about how she quantified being an Agile project from being a hybrid and her talk made me think she is looking at methodologies rather than Agile as a guiding principle or philosophy, but her couple of slides on Agile as value were enough to get me thinking more about what Agile is useful for.
In project management there is the concept of the “Golden Triangle” consisting of Scope, Time, and Budget. The idea is that if any one of those constraints must change, another one or two will have to change with it. For example, if you want to expand the scope of a project you will either need to add more money (for people and resources) and/or expand the time the project will take. To lower the time of a project you would have to either expand the budget or lower the scope accordingly. Dr. Reich proposed that Agile doesn’t change that relationship, it doesn’t help manage scope, reduce time, or make projects cheaper. Instead Agile adds “Value” being customer/stakeholder satisfaction.
In a traditional waterfall project after the agreed upon requirements are set the customer is not needed until it is their responsibility to accept or reject the results. If they changed their minds along the way there is often a very formalized process to get the change approved. However, humans have egos, and the need to be involved with things they value. Think about the father watching his child being born. He has nothing to do in that room, but he wants to be a part of the event and experience.
The customer, sponsor, and management in general want to feel like they helped make the product. This can turn sour as you watch the CEO attend one meeting every quarter, dictate that they dislike this feature or how that feature was implemented, and then disappear leaving the development team confused. Or worse they feel that they know the software process to such a degree that they set deadlines. I’ve heard “It’s just a few lines of code, how hard could it be?”
The Value concept makes sense in this context. The customer collaboration, the frequent interactions, and responding to the customer’s needs provides that sense of helping the project and makes the stakeholders happier. As we make our stakeholders happier, they are happier to help make the project better by helping with the golden triangle constraints. They are more willing to be lenient on time, work with the team on scope, and maybe even give more budget. If we consider Value another side the Golden Triangle would make a tetrahedron type shape.
With this Value concept, one thing I dispute thinking of Value as the only purpose of Agile. Another aspect of project management is dealing with Risk, and I believe that is one of Agile’s strongest areas (and why Agile exists to begin with). Agile mitigates the risks of delayed work and changing requirements by accepting that they will happen and looking forward to adapting to them. It is flexible in ways traditional waterfall cannot be.
As is the moral of other posts, don’t block people out of your process. Teaching them how your processes work, how to better give feedback, and inviting them into the discussion will help everyone become happier and help stakeholders see more value in your team’s results.