Software Estimation is Like Predicting a 9-Ball Game
Tonight I ventured out for a bit of pool to take a break from the computer. While playing 9-ball I had one of those moments where you relate something you do in life to software development. We all do that, right?
I managed to run the table and I thought about the predictive nature of my run-out. My path to victory was not what I had planned after the break. In fact, after the break I did not even see a run-out. I'm not good enough to do that, but I am able to see 2 to 3 shots ahead. As each ball dropped I eventually saw a 5 ball run to victory.
Predicting how you are going to sink the 9-ball at the start of a game is like trying to predict when you will release a project. Even if you can predict the 9-ball run, you still need to execute that plan. I've always noticed how the end of a project seems completely blurred, but when you're nearing release everything becomes a bit more clear. Looking at it 1 or 2 balls at a time is similar to an Agile development practice where you have small but predictable iterations.
Similar Posts
- I Survived JP's Nothing but Dot Net Boot camp!
- Installing Windows Home Server On Old Hardware
- The Paradox of Choice in a Developers Life

Comments
Mark on on 6.18.2008 at 10:30 AM
If you really wanted to compare 'software estimation' with your 9 ball game, you should have gone with: "If I flounder around and stall my opponent long enough, I sometimes manage to get in a few lucky shots. I talk a good game and every now and then I deliver the goods - but I pretty much have to attribute it to random bashing."