My recent return to managing a team of people has highlighted for me the difficulties of the arbitrary deadline approach to project management. Unfortunately, it’s also the default management approach applied by a lot of people, because the concept is easy to grasp.
The arbitrary deadline method is troublesome because of the difficulty of estimation. As John’s post elaborates, you can never foresee all of the problems you’ll meet along the way. The distressing inevitability of 90% of the effort being required by 2% of the deliverable is frequently inexplicable to developers themselves. Never mind the managers remote from the development!
I’ve been considering why my experience of working with open source seems generally preferable to commercial work, and this may be one of the key elements. Commercial software development is deadline-driven, whereas most open source development has not been, in my experience; ‘it’s ready when it’s ready’.
Edd suggests that using a trouble-ticket-based system for progress tracking and management is superior. I’m inclined to agree.