With the popularity of Agile, more and more executives are pushing Agile transformation. To meet this demand, everywhere you look someone is now selling Agile. In a sense, Agile has become a commodity.
Those selling the commodity offer things like Agile coaches, Scrum training, and SAFe certifications, just to name a few. Don’t get me wrong, many of these vendors provide high quality services. The commoditization of Agile is a result of demand due to the positive brand that is “Agile”. When done right, few will disagree that Agile isn’t the best way to develop software.
When it comes to Agile transformation, the problem is not so much the Agile service providers, but more so around a lack of planning. Without proper planning, the “transformation” process often goes over like a lead balloon.
The scenario usually goes something like this: executive from company X declares the organization needs to be Agile. Management then scrambles and hires Agile coaches and force employees to sit in open-work spaces. Throw in some team stand-ups and burn down charts and voila, they are now Agile! Management is happy, that is, until time goes by and they realize they have no measurable improvements.
Here’s the thing, Agile transformation is a huge change. If you haven’t properly planned before charging into transformation, your chances of success will be slim.
Another way to think of Agile transformation is like getting yourself in good physical shape. Last year I started working with a personal trainer. When I first met with my trainer, he didn’t send me right into the weight room and have me do dead lifts and squats. Instead, we met on multiple occasions and talked through my eating habits, my fitness routine, and my goals. We did this before I went anywhere near the weights.
By taking the time to do the analysis, I got a clear picture of where the problems were with my current fitness routine (or lack thereof) and diet. This enabled me to come up with goals and a manageable plan to achieve them. I was then able to put the plan into action and with the help of the trainer, receive some great results.
It’s the same with Agile transformation. You need to take the time to analyze and plan before charging ahead. If you’re planning to bring in Scrum training and Agile coaches, I’d like to propose some steps to take before doing so. Below I have outlined 6 steps intended to help you be successful in your Agile transformation journey. Think of them as Agile transformation prerequisites.
1) Know Your Organizational Purpose – Make sure you are clear on what your definite purpose is as an organization. You might be asking, how is the purpose of my company related to Agile, isn’t Agile an IT thing? It’s funny, many of us in technology sometimes forget we are part of a bigger picture. Business and IT must be aligned on the definite purpose of the company. If you don’t know the purpose of your company, then you have a bigger problem to deal with then adopting Agile. By knowing the definite purpose of the organization, you can align your Agile transformation strategy with the mission and goals of the company.
2) Know Your Current Value Stream – Get a clear picture of your current end to end process for delivering product or service. Many companies have different departments responsible for their part in the sausage making, yet nobody understands the full end to end process. Remember, if you’re going to make improvements, first you need to understand what needs to be improved. Saying that you want to become more Agile is not good enough. That’s like going to a trainer and saying that you want to be healthier. You need to get specific and find out what’s going on.
One way to do this is to sit in a room with management and white board out your current end to end process. Start from the beginning of new product idea, or customer order, all the way until the product or service is in the hands of your customer. This includes your business funding and prioritization process, and project planning and delivery. Include all your processes and steps for delivering your product and service. While you are doing this, write down the actual work time it takes to complete each step in the process, as well as the wait time. What you’re doing at this point is getting a clear picture of your delivery process, while also identify constraints in your system. For more on the benefits of this process, see my post on the theory of constraints and value stream mapping.
3) Know your constraints – The next step is to identify the clear bottlenecks in your delivery process. For example, if you find that on average it takes your company 1 year to approve new projects for funding, you’ll know you have a constraint way up-stream in your delivery process. Agile transformation is not only about making changes to your IT teams, it’s also about changing how your business operates. The idea is to be lean and efficient while providing high quality products to your customer.
4) Know your employees – Take a good look at your people. Are they open to change? Do they bring a positive attitude and contribute to a healthy culture? How about your IT people, are things like paired program and test driven development foreign concepts to them? Take a good inventory of the soft and hard skills of your employees. This is important because if you don’t have the right people, your Agile transformation efforts will fall flat. Get to know how your people really feel about Agile. What you don’t want is people who pretend to be on board with Agile, but bad mouth it at the water cooler.
In my experience, if you have people who are open and willing change, and are positive, you’ll be in good shape. You can teach the technical skills but trying to change someone’s attitude is a whole other ball game. Agile is all about collaboration and working as a team. You need great team players.
5) Know your technology – Analyze your current applications and delivery system. What type of infrastructure do you have in place? What’s your technology stack? Are you using physical or virtual servers? Are you using cloud technology? Take the time to do a full inventory of your technology and its health. How about your testing and deployment capabilities, are you running any automation? You need to know what kind of technology you’re working with. If you company uses archaic technology, it may be time to upgrade. Agile is a modern software delivery practice, you should aim to complement it with modern technology.
6) Create goals and an action plan for Agile transformation – After doing a thorough analysis of steps 1-5, now you’re ready to create a tailored action plan with goals. This is where you decide what Agile framework to use, or combination of frameworks. At this stage you are now ready to engage outside help for Agile training and coaching, based on your goals.
By going through all the steps, you may be surprised what you discover. Your teams may be more Agile than you think. Only through proper analysis can you discover what is working and what needs to change.
If all this seems too daunting, or if you have already brought in Agile coaches yet see little change, at MacIsaac Consulting we can help. We act as trusted advisers to help organizations put the right Agile transformation plan in place.
We are Agile framework agnostic. Our goal is to tailor a plan that what works best for your company. With Agile transformation, it shouldn’t be a one size fits all approach. Just like someone’s fitness goals, each organization will have different goals and strategies to achieve them.
So take the proper steps, because you and your organization deserve a successful Agile transformation!
About the Author: Mike MacIsaac is the president and principal consultant for MacIsaac Consulting. Mike provides leadership as an IT Project and Program Manager as well as an Agile Scrum Master. You can follow Mike on Twitter @MikeMacIsaac or subscribe to Mike’s blog.