Wednesday, March 16, 2016

Better software estimation

I wrote earlier about the importance of Software estimation procedure. I would like to highlight the latest research on software estimation and share few tips in this post. Jorgensen, M. published an interesting article titled
"What We Do and Don't Know about Software Development Effort Estimation" in IEEE Software, March-April 2014 issue, where he reviewed the software effort estimation and suggested  the following guidelines
Which one is larger? Relative estimation can introduce biases

  1. Develop and use simple estimation models tailored to local contexts in combination with expert estimation.
  2. Use historical estimation error to set minimum-maximum effort intervals.
  3. Avoid exposure to misleading and irrelevant estimation information.
  4. Use checklists tailored to own organization.
  5. Use structured, group-based estimation processes where independence of estimates are assured.
  6. Avoid early estimates based on highly incomplete information."
Most of us resort to expert judgment as the method for estimation. In a related research titled "Relative Estimation of Software Development Effort: It Matters with What and How You Compare" (pay walled), he identified the common pitfalls in relative estimation and provided the following guidance.

  1. Make Comparisons to Similar Projects and Use Work Hours
  2. Attend to Unique Properties of the Reference Project
  3. Attend to Estimation Sequences
  4. Avoid Using Small User Stories as References
  5. Attend to Request Formats
  6. Use Combinations of Independent Estimates"

Going through the above checklists can help you identify areas of improvement.  Make a beginning by reviewing  your recent experience of project estimation against the above guidelines and share your experiences/challenges.