Book Review: Predicting the Unpredictable – Pragmatic approaches to estimating project schedule or cost by Johanna Rothman
On every software project I have been on I’ve been asked 2 questions, “how much does it cost?” and “When will it be done?”. One would think that given enough experience on software projects that this question would be easy to answer. The author explains why she thinks this is so hard, one reason she mentions is we invent not repeat. No two software projects are the same. Each project has a different problem to solve, uses different technologies, has different people with varying skill sets, to list a couple of examples. Throughout the rest of the book the author offers techniques and gives examples on how to better answer these questions.
Obtain data first, then argue – in recent projects I have been tracking how much the team can complete, how long each story takes to complete, how many bugs we fix and how much the backlog increases. By collecting this data and showing it to project stakeholders, we can have productive conversations around how we can get done faster; whether it’s cutting features, comprising for lower quality or extending the release date.
Track Estimation Quality Factor – The author’s suggestion to ask the team once a month “When do you think the project will be completed?” Then plot the answer on a graph where the X axis is the date you asked and the Y axis is the estimate. You can compare this to the original estimate and this is also a technique to discuss the state of the project. A followup question can be asked like “Tell me what’s happened in the project to make you think we will meet/beat/miss the date.”
Determine your degrees of freedom – Try to find out from the client what is most important to the customer, cost, delivery date, finished features or low defects. This is easier said than done In my experience, customers want it all. However, if we can prioritize them then we can make better decisions on how to approach the project and meet their business needs.
Who should read this book?
Anyone who has the responsibility of estimating a project or writing a proposal for a project should read this book.