Johanna Rothman‘s blog is one of the RSS subscriptions that I constantly read in my coffee breaks (she and some hundred more RSS… I simply love the concept of content subscription for offline reading). I don’t remember how I arrived at her blog but it seemed interesting and was added to my long list. She has an interesting resume, is the head of a software management consultancy company, has published a number of books and speaks in many conference. Conclusion: she is pretty serious.
In November she started a series of posts on estimating how much time it will take to develop a software product – one of the hardest problems in software development. If we knew how to this, all of our other problems would be solved… if you knew how much time it would take to fix that bug, deciding whether to fix it or not would be easier. The same for that other feature that nobody knows how to implement or test. And if we know, REALLY knew how much time the project would take, the customers would be able to decide which features to remove if they wanted it before this time. Sadly, we are still way far from knowing how to estimate the effort required to fix bugs, add features, and of course, finish the project. Johanna takes the “pragmatic” approach (a word that has become very fashionable after The Pragmatic Programmer
came along), telling us to start working first, understand what you are doing, monitor the speed at which you are going (velocity), try to estimate, work, check your velocity, analyze your estimates, and so and so again. But better to read it from her here:
- Estimating the Unknown: Dates or Budgets, Part 1
- Estimating the Unknown: Projects or Budgets, Part 2
- Estimating the Unknown: Projects or Budgets, Part 3
- Estimating the Unknown: Dates or Budgets, Part 4
- Estimating the Unknown: Dates or Budgets, Part 5