How do you choose the right Agile approach for your business? Many people will say that you have to convert the entire company and it’s business to an Agile approach in order to make an Agile development process work. That might work for some companies but it isn’t necessarily a good solution for a lot of other companies.
Choose the Right Agile Approach for Your Business
The most important thing to recognize is that the choice of an Agile approach is not a binary and mutually-exclusive choice between “Agile” and “Waterfall” as many people seem to think. You have to fit the approach to the nature of the company’s business rather than trying to force-fit the company’s business to one of those extremes. A major factor in selecting the right approach is the relative importance of two factors in enabling the company’s business success:
|Creativity and Innovation||versus||Predictability, Planning, and Control|
It’s not as simple as just becoming “Agile”.
- A need for emphasizing creativity and innovation would pull you towards an Agile approach
- A need for predictability, planning, and control would tend to pull you towards a more plan-driven approach (aka what many people loosely call “Waterfall”)
And, I want to emphasize again that those two choices are not mutually-exclusive. For example, suppose your company is Apple and you need to design the next generation of the iPhone. Creativity and innovation is obviously important to that effort – otherwise the product would not be very competitive; however, it also has to be somewhat predictable because you have to hit a certain release date.
Impact of the Company’s Business Model
The nature of an Agile transformation and the relative importance of those two factors will depend a lot on the company’s business model. Here’s a brief summary – there are two major types of companies that will have a big impact on the nature of an Agile implementation:
- Product Development Companies – In a company that is in the primary business of developing products (for example, Apple, Intel, and Microsoft), there is a strong and natural alignment between an Agile development approach and the company’s overall business goals.
In that kind of environment, the ability to quickly develop new products and product features is very important for the company to be competitive and successful and, as a result, creativity and innovation play a major role.
- Other Companies – In other companies who are not primarily in the business of developing products (For example, Walmart, McDonalds, Hilton Hotels), any development efforts will likely be focused on projects that are not directly related to products they sell to customers.
Those projects will most likely only indirectly leverage the company’s primary business goals by enhancing operational efficiency, productivity, or some other means. In that kind of environment, some level of planning and control is important to guide those investments that the company is making in new technology:
- You want to pick the right combination of project investments that are going to have the greatest impact on the business, and
- You want to manage those investments to make sure that they do, in fact, provide the return you were expecting
Impact of Financial Planning Model
The way that the company does financial planning is a major factor in determining the right approach:
- Product Development Companies – In companies whose primary focus is on product development, a budget is typically established for development and ongoing support of a product or a product line and a lot of discretion is typically given to the Product Manager and the product team in determining how to best utilize that money to maximize the success of that product. Its relatively easy to apply an Agile development process in this kind of company because there is such a strong and natural alignment between the product decision process and the company’s overall business management approach.
- Other Companies – In other companies that are not primarily in the business of developing and selling products, you’re likely to find a very different environment and the relationship between the project decision process and the company’s overall business management approach is likely to be very different:
- There are likely to be a lot more projects competing for funding,
- The relationship of those projects to the company’s business goals is probably more indirect,
- In many cases, there are dependencies that might require coordinating a change in business processes to implement the project and realize the return, and
- Many of the projects might be somewhat short-term in nature so there also may be a lot of churning going on constantly.
That kind of environment obviously calls for more planning and control to maximize the return on investment across a portfolio of potential projects. You just can’t throw money at projects, allow them to go off and figure out the right approach, and expect that somehow it is all going to work out. The whole process needs to be much more managed.
What’s the Solution?
For companies that are not primarily in the business of developing and selling products, it isn’t just a simple matter of making the whole company agile. It typically will require a hybrid approach that mixes some level of traditional plan-driven management with an Agile development process in the right proportions. That takes a lot more skill but it definitely can be done.
- I think of it like a chess game that may have different levels of management in it. The challenge is to figure out how many levels are needed; and, for each of these levels, how agile should it be? Also, how does the whole thing fit together and align with the company’s business objectives? Naturally, you want to keep it as simple as possible but it’s not as simple as just making the whole company more agile.
I’ve written several previous articles on the relationship of Agile and company culture that are relevant to this: