It is a question I hear a lot.
“How do I convince my CIO to switch to Agile?”
“How do I get executive buy-in for Agile?”
“How do I sell Agile to Senior Management so I can run projects the Agile way?”
Recently at an AgileWinnipeg meeting, an awesome perspective on this discussion was provided by Mark Kulchycki. Mark provided the analogy that proposing Agile to your CIO and expecting him to switch was akin to running a marathon cold. I think his exact phrase was that “you would kill yourself”. Expecting a sane and rational person to switch 100% to a new radical process(from their point of view) is not likely. Mark took the analogy further and suggested that you need to start in small steps in Agile just like to do in training for a marathon. Once you get trained in the smaller races and show that you are proficient, you can add more time and difficulty until you can eventually run a marathon.
This ‘selling’ of Agile is exceptionally difficult. Agile is a set of principles and practices that should be customized for each situation. This very nature makes it harder to propose and convince people as there are not a set of consistent templates and cookie cutter process that you are recommending to be used every time. Senior Management get concerned when you present a solution with a lot of ‘well it depends’ phrases in the solution. Many people interpret this flexibility as incompleteness.
How to convince your Executives
1. Build Agile awareness and ground it in the business benefits
Many times I see Agile proposed primarily from the Software Development process. While this is important, this is only one half of the concern of Senior Management. The other side of the coin is the impact and benefit on the business. An important first step is to build awareness about the business benefits Agile can return.
Oh yeah, and don’t call it Agile. Some people may have a bad experience or have read an article in CIO Magazine that explained Agile was Cowboy Coding. Just label the processes as discovering better ways and discuss the business benefits. I mean who wouldn’t want to deliver business value frequently and eliminate waste? What CIO could argue those facts?
2. Earn small victories, but not too small
Gain acceptance to try out some Agile practices on small projects to show their benefit. Focus on the business benefit that can be realized. Pick a project that will benefit from frequent and early delivery. Pick a project where the client is excited about the use of Agile practices and being able to work side-by-side with the development team. Be sure to also set expectations with the client as to how the delivery in Iterations will work and that the first delivery will not have the complete solution. Find a client that will work as a partner.
Remember, no company is going to switch from big-bang, waterfall projects to totally Agile projects just by reading books and discussing the merits and stories of the benefits other people have realized. Get over it.
You will need to show how the principles translate into real results for your project and company. Build small and then build out. You can’t run the marathon immediately.
Oh yeah, make sure the project isn’t too small so that no one notices the benefits Agile has delivered.
3. Choose your team carefully
Choose your development team as carefully as you choose the client and project. An Agile project requires people who are more comfortable with change, vagueness, learning, new processes, and working side-by-side with the business and each other. Some people are less comfortable with pair-programming, daily stand-ups, co-location in a noisy room, and cross-functional teams. This isn’t a bad thing, but know your team and know their preferences. Although many people won’t state it, Agile isn’t for everyone. Some people prefer Agile practices more than others. Choose your team wisely to maximize your chances of success.
4. Complete and Repeat
Complete the project and repeat with other projects. Try to do more and more Agile practices with each project. Demonstrate the added value with each and every project. Learn from the projects and improve. (just as you learn via retrospectives as the projects are executing)
It is probably impossible to switch Senior Management from Waterfall to Agile overnight. But with small wins and increased distance training, you company can run the Agile marathon as well. Just like a marathon, the important part is the training that allows the marathon to become routine.
P.S. finding a good coach never hurts as well.