The current economic downturn is a new test for Agile, until now Agile has been promoted in a growing economy. Proponents of Agile have emphasized how it improve competitive advantage and helps a company out-compete its rivals.
Now companies are concerned with simple survival. Today's managers are concerned with cutting costs, improving cashflow and managing without credit. Organizational change and process improvement are not top of the agenda. Promoting Agile in this environment is something new.
The first question we need to ask is: How, if at all, can Agile help companies manage in the downturn?
The second question to ask is: Does the downturn make switching to Agile more or less attractive?
How Agile can help
In this particular downturn conserving cash is more important than ever.With banks reluctant to lead and sales slowing cashflow conservation is vital to company survival.There are two ways in which Agile development can directly help.
The first ways drawn directly from the practices of manufacturing companies: reduce inventory.
Inventory is code that has been written and not delivered to production; it is requirements documents that have been created but not coded; it is project plans for software that may never be built, and it is software stuck in test because it has too many bugs.
One company I worked with last year took about four months to develop a new software release.They then took close to six months to test it and two more to deploy it.This costs the business–features were completed and paid but did not start earning revenue for over half a year.
The company had to fund this development long before it saw the benefit.That is money is lost cash–perhaps it was a loan that they could not secure today.The money is only repaid when the software starts to deliver value, either through cost savings or generating revenue.
By shrinking the time between software being developed and it starting to earn a return Agile can make a difference.
Deliver sooner to generate sales and/or savings
Shrinking the development cycle will not only reduce inventory it will bring forward cashflow.Some software is built to generate sales–either by selling the software itself or by facilitating the sale of something else.If the software is delivered sooner that sale can happen sooner.
Other software is built to improve the operations within a company.In the current environment such changes will be aimed at reducing costs so delivering software sooner allows costs to be reduced sooner.
In either case a tight focus on the objective will help.Each iteration needs to bring the goal noticeably closer.Ultimately it should be possible to measure the value of an iteration in costs saved or sales immediately. Agile development should out perform traditional development that can only show progress against plan and not cashflow.
Until now the productivity improvements provided by Agile would be used to produce more product.A booming economy created job opportunities which encouraged people to switch jobs so natural wastage would remove any excess capacity. Today there is less demand for products, lower staff turnover and more a need to reduce costs.Consequently increased productivity may lead to redundancies.
Agile is particularly vulnerably to job cuts because of the emphasis on self-organizing teams and continual improvement through learning.People will only speak openly and act independently when they trust the organization.When people are being laid off and decisions are being taken about who to keep and who to let go trust is lost and ideas unspoken.
When it comes to layoffs companies that have yet to make the switch to Agile are in a different position to those who have already switched.Such companies may look to Agile as a way to increase productivity while saving costs–the proverbial do more with less .
Announcing a switch to Agile with layoffs to come later is unlikely to facilitate an easy change. It is hard to motivate a team to change when a successful change means jobs losses.
When layoffs must happen it is better to cut staff first, then change practices.As hard as this seems