This post originated from an RSS feed registered with Agile Buzz
by Dave Churchville.
Original Post: Agile Estimating: How long is an ideal day?
Feed Title: Agile Project Planning
Feed URL: http://feeds2.feedburner.com/AgileProjectPlanning
Feed Description: Thoughts on agile project planning, Extreme programming, and other software development topics
About seven years ago, my first attempt at doing an estimate using agile terminology went something like this:
Me: "OK, I estimate this functionality at about 3 ideal weeks of effort" Boss: "Uh...what is that in calendar time?" Me: "Well, er, it's complicated, it depends on team velocity and planetary motion" Boss: "Great, can you tell me by tomorrow?"
After doing some reading and thinking, I decided an ideal week was something like a "man-week", adjusting for daily distractions. For most people I've worked with, this adjustment factor (called a "load factor" in the original XP books...yikes) is somewhere between 0.5 and 0.7.
In fact, some studies suggest that the maximum productive time for most workers is five hours, regardless of how much time they spend in the office. Work that requires intense concentration, like say, software development, is more prone to productivity loss from distractions, phone calls, etc.
In other words, an ideal week for a single developer looks a lot like half of a "man-week". Looked at differently, a developer has a capacity (or velocity) of 0.5 ideal weeks per calendar week, or for a two-week iteration, about one week of ideal effort.
So a team of four developers of roughly equal capability would be able to implement about two ideal weeks worth of estimated effort in an iteration (of 2 weeks).
Another popular method of estimating agile user stories is to use a point system to measure the relative size. By using points, a team can estimate the size of a story relative to other user stories.
A 2-point story is twice as difficult to implement as a one point story, and a 4-point story is twice as hard again.
Personally, I tend to prefer the ideal time units, since it's easier to explain to customers, but I have heard reports that point systems have had good results as well after the initial confusion.