Gunnar Kudrjavets

Paranoia is a virtue

Estimating and scheduling - the most exciting parts of the milestone

When looking at my current job responsibilities then estimating and scheduling are the things which really make me happy. Maybe it’s common to all Virgos, but organizing the tasks, tracking down all the fuzzy issues, and clarifying all the little details is something I really enjoy doing ;-) The problem statement at the beginning of the milestone is very simple: everybody wants you to do all kinds of different stuff and your job is to figure out how much it’ll take, who’ll do it, what are the priorities and risks associated with every tasks, how the dependency graph looks etc. Cool, isn't it?

One thing which slightly shocked me at Microsoft in the beginning was the variety of tools leads/managers use to manage software projects. Some people use Excel, some people use Project, some people use Word, some people use bug tracking database, and some people use homegrown tools. Currently I’ve calmed down in regards to this and treat this as writing code with different editors. It’s not important what you used to create these lines of C# as long as it behaves as specified and has the required quality. IMHO the things which really matter are that you can always answer the following basic questions:

  1. On what people in my team are currently working/worked/will be working?
  2. How much time something takes/took/will take?
  3. How much the current schedule deviates from the original one?

If whatever way you chose to manage your own project can provide answers to these inquiries then you should be very happy. That’s significantly better than average software project is doing anyway. I personally use Microsoft Project, but I’m not in any way "Project guru." Probably I even exercise less than 5% of Project’s functionality. Though I have to admit that working with Project makes me every time feel a little bit guilty because I never have time to spend some hours reading the documentation and discovering possibly new wonderful ways of making myself more efficient ;-( Anyhow, back to playing with my Gantt diagram.

Comments

Balaji said:

Do you use any formal method for estimating and scheduling. Is there anything that you prefer? I have started doing estimations for a new months now (for a small team) and would like to get some ideas.. Currently I use my dev experience, the skills of the people who are going to do a feature etc to estimate things..

Thanks
Balaji
# June 24, 2004 10:36 AM

Gunnar Kudrjavets [MSFT] said:

A couple of years ago I spent some time reading through number of books and articles about COCOMO/COCOMO II (http://sunset.usc.edu/research/COCOMOII/), PERT charts etc. Unfortunately I was never able to find anyone IRL who is using these techniques on software projects which have shipped. Possibly because I’ve known the limited set of people in my life or possibly because of something else ;-)

Currently I use what most people do: 1) common sense; 2) previous development experience of myself and everyone else who is involved in some kind of task. I’m also really keen on trying to keep track of all differences between the original estimates and the actual time it took to build something. I think that’s where the real benefit of learning how to better estimate and schedule lies.
# June 24, 2004 12:54 PM
Leave a Comment

(required) 

(required) 

(optional)

(required)