From the Trenches of Business Management Consulting
Saturday, April 18, 2009
Why Use Time Boxes In Agile Software Development?
I recently made a response to a post about time-boxing in the Agile Coaching group at LinkedIn. As it turns out, the author of the post was well aware of the Parkinson's Law angle, and so are probably most agile team leaders. However, even if you do know about Parkinson's Law, you might be interested in the other reason. It is (in my opinion) more important, but less well understood.
Here is my response to the LinkedIn post:
Two reasons. One is Parkinson's Law:
Work expands so as to fill the time available for its completion.
Parkinson's Law isn't scientifically proven. It is just an observation about the results of human behavior.
The other reason is also a law, but a scientifically proven one. Little's Law says that for a stable system:
t = I / T
t = Lead time I = Number of items T = Throughput (Items processed per time unit)
Note that if you want to reduce t, as in reduce project lead time, you can do it two ways, by increasing T, or by reducing I. There are plenty of ways to do either.
If we focus on I for a moment, agile methodologies reduce I by using pull processes, like Kanban and Drum-Buffer-Rope, and also by shortening iterations. This happens at many different levels, for example the release cycle level, the project iteration level, the daily stand-up meeting level and the Test-Driven Design cycle level. Not every agile method uses the same cycles, or cycle lengths, and there are of course differences at the team level.
It is also possible to reduce I by decoupling process batch size from transport batch size in order to have transport batches that are smaller than process batches, which is what the Kanbandev people are doing. They refer to it as decoupling input cadence from output cadence.
When I became interested in agile I did computer simulations to figure out for myself how it worked. Here is a link to a page that contains the results of a simulation. Look at the animation in the sidebar to the right:
As a business advisor, I help people to develop business strategies and improve processes. I also lead projects.
As a professional photographer, I get to practice what I teach as a business strategist. And, I get to take photographs, which I love.
All my work is based on my values. My goal is that the people I work with and I learn as much as we can from each other. The best way I know to grow and develop, is to help others grow and develop.
I am a compulsive writer. My first management book, Tempo!, was published in 2010. LESS!, a collection of essays by twelve management thought leaders, was published in 2012. I initiated the project, coordinated it, and wrote a chapter about strategy.
I blog, make videocasts, and I am active on networks like Google+ and Facebook.
All my work, as a photographer and as a business advisor is based on the same underlying principles and skills.
For example, I teach customers how to use the OODA loop in strategy and skills development. I also use the OODA loop to develop my skills as a photographer.
I coach executives in basic strategic principles like the Interaction/Isolation principle and Cheng/Ch'i. You will also see the same principles at work in my photos.
The ability to translate basic principles of strategy from one strategic game, like business development, to another strategic game, like photography, is vital. It is what enables me to understand how to be useful to my customers.
Over the years I have been a software developer, line manager, project manager, editor, analyst and writer. I live in Gothenburg, Sweden. I have a son, Tim.