When top consultants engage new clients, they offer ideas and suggestions to get started. A phrase that the consultants listen for from the client is something like “we tried that once before” or “we already did that”. It’s a comment that begs for probing questions. “What exactly did you try?” “What results did you observe?” “How long did you continue to use that approach?”
The reason for the probing questions is simply because people often say they tried an approach or tool but when we dig deeper we find that they really didn’t do what they claim. Or, they measured the wrong outcomes. Or, they didn’t give the effort enough time to show results.
Today, this is happening with agile software development approaches like Scrum, Kanban, Lean and XP.
Every company seems to be claiming to use agile software development — or wants to. Regrettably, the facts don’t support those claims. Many companies transform the recipe for agile development into their own custom “agile” recipe and wonder why they don’t get the results they expect.
Here’s what happens when you tamper with a proven recipe. I’ll use the base ingredients for an angle food cake as an example. (For those of you not familiar with angel food cake, it is a light and sweet cake best served with fruit or chocolate, and whipped cream.)
Base Ingredients for an Angel Food Cake
1 cup cake flour
1 3/4 cups sugar
12 large egg whites
Let’s say Company X decides to make an angel food cake but they want to use ingredients they have readily available. They’d also like to improve the recipe. They substitute whole wheat flour for cake flour because whole wheat flour is higher in fiber and better for you. They substitute a low-calorie sweetener for sugar because the sweetener will appeal to those on a diet. Finally, they substitute 4 whole eggs and 4 egg whites for the 12 egg whites because whole eggs are more nutritious.
The end result may taste okay but it will be nothing like angel food cake. It won’t have the same texture at all. It’ll be heavier and denser with a whole-grain flavor.
The same thing happens when you alter a recipe for agile software development and try to turn it into something you think is better.
- Adding a few agile techniques to waterfall development won’t make you agile.
- Simply holding daily meetings won’t make you agile.
- Pair programming alone won’t make you agile.
- Tracking project status on a whiteboard with sticky notes won’t make you agile.
- Breaking up the project into iterations won’t make you agile.
If you want to be agile you need to follow a standard recipe and give it time to mature. Initially, you may have to make a few short-term compromises. For example, engaging the business stakeholders as active participants may take some time and persistence. That’s okay. Stick with it and keep the final goal in view.
Here are a few agile recipe sites to get you started:
- Agile Alliance
- Extreme Programming
- Lean Software Development
- Limited WIP Society
- Scrum Guide