|
Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://hea-www.harvard.edu/~fine/opinions/fiveminute.html
Дата изменения: Unknown Дата индексирования: Sun Apr 10 09:00:07 2016 Кодировка: Поисковые слова: asteroid |
January 1998
One of the great unsolved problems in software development is the task of estmating time required for a software project. Lot's of different reasons have been given for this, ranging from programmer ego, to software development complexity. Rather than focusing on causes, or theoretical approaches, I herein offer a practical guide to improving time estimates for the worst-case scenario, the dreaded Five Minute Task.
(For your convenience, the first two answers have been filled in.)
How long will the five-minute task/project take? 5 minutes
For each item below, please provide your best estimate for the time required for completion. DO NOT enter zero for any field!
| basic changes/development: | 5 minutes |
| deal with the compile-time errors you failed to anticipate: | |
| deal with an obscure compiler error you've never seen before: | |
| figure out why it dumps core before executing first line of code: | |
| figure out why it still dumps core, even though you fixed the problem: | |
| total time of other staff in helping you with previous item: | |
| completely rewrite it to work around obscure system or compiler bug that could not be solved even with other peoples help: | |
| deal with additional compile-time errors introduced by rewrite: | |
| figure out why it dumps core again: | |
| it seems to work; now fully test all new/changed functionality by hand: | |
| correct problems found: | |
| code for obscure error conditions or user input exceptions that you didn't think of until just now: | |
| add some features that would be easy and relevant that you didn't think of until just now: | |
| compile again: | |
| test again: | |
| write/update program documentation: | |
| write/update user documentation: | |
| rewrite documentation that you lost from the power failure: | |
| install software: | |
| test the installed version: | |
| figure out why installed version doesn't work or works differently then before: | |
| fix install problem: | |
| install documentation: | |
| update source control area: | |
| deal with installed software changes crashing all systems at random intervals: | |
| total time of other staff in helping you with previous item: | |
| fix software: | |
| compile: | |
| test: | |
| install: | |
| deal with innaccurate bug reports from 2 percent* of your userbase: (*please round up to nearest whole human being) | |
| deal with accurate bug reports from 1/2 percent* of your userbase: (*please round up to nearest whole human being) | |
| fix user's legitimate complaints: | |
| compile: | |
| test: | |
| install: | |
| document the complete redesign that you now realize the system needs, but that you don't have time to do: |
Total of all above answers:
How long will the five-minute task/project ACTUALLY take?
For your interest, I have prepared a sample worksheet filled out with plausible answers.
Fine's Home
|
|
![]() |
Send Me Email |