June 10, 2015

Agile tooling requires a budget

Agile projects require higher infrastructure demand during development than waterfall projects.

In the old days, when people used to do waterfall, we would book out a server(s) to do the testing on. The server would be allocated to the test team and there it would sit for a fixed period.
With larger batch sizes of several months or even years, the deployment costs were low, because it made sense for someone to copy and paste the libraries and manually set everything up. They could take a few weeks to get it all right.

As the batch sizes get smaller, the overhead of manually testing, and continually deploying get increasingly more expensive. As the the batch size tends towards sprint length, it is simply not possible to manually test or deploy software of any complexity frequently enough.

We therefore require automated test and deployment mechanisms to ensure that the process is consistently carried out quickly and in an error free way. We can prove scientifically manual testing doesn’t work for complex software and so we must move to automated testing.

This cost is surprisingly not always obvious to organisations progressing along the Agile adoption and should be considered in the cost of an Agile transformation.

Teams need automated test and deployment cycles in order to finish their work completely each sprint and to be able to make a commitment to doing so. Bugs from manual testing happening outside the sprint on stories from other sprints upsets the cycle and produces huge variability in throughput and reduces predictability in planning.

Please consider the cost of tooling when moving to Agile software developing processes. It is essential for the process to work properly.

Simon Powers
Simon Powers is an Agile Coach specialising in large scale transformations and agile adoption. He has a background in very large enterprise architecture which has led on to organisational design and agile process refinement. Simon is the founder of Adventures with Agile.