Оценка как вероятностное утверждение
Как известно, около трех четвертей программных проектов превышают свои оценки. Вероятность того, что любой отдельный проект завершится к поставленному сроку и без нарушения бюджета, отлична от 100 %.
Но стоит нам признать, что вероятность своевременного завершения отлична от 100 %, возникает очевидный вопрос: «Если не 100 %, то сколько?» Это один из центральных вопросов в области оценки программных проектов.Обычно оценки программных проектов представляются в виде обычных чисел, например: «Этот проект займет 14 недель». Подобные упрощенные точечные оценки бессмысленны, потому что они не включают никакой информации
о вероятности, связанной с точечной оценкой. Подразумевается ситуация, представленная на рис. 1.1, — возможен единственный исход, которым является заданная точка.
Единственный возможный результат (вероятность 100 %)
100 %т
Вероятность
Сроки (или Затраты, или Рабочее время)
Рис. 1.1. Точечная оценка подразумевает стопроцентную вероятность совпадения фактического исхода с запланированной оценкой. В жизни так не бывает
Точечная оценка на поверку обычно оказывается целью, замаскированной под оценку. Иногда она возникает в результате удаления осмысленной вероятностной информации из более сложной и содержательной оценки.
Сталкиваясь с точечной «оценкой», спросите себя, действительно ли это число является оценкой или на самом деле перед вами цель.
Точные оценки учитывают, что программные проекты подвергаются влиянию множества факторов неопределенности. В совокупности эти факторы неопределенности означают, что результат проекта подчиняется вероятностному распределению — одни результаты более вероятны, другие менее вероятны, а наиболее вероятная группа результатов сосредоточена где-то в середине распределения. Можно было бы предположить, что распределение результатов проекта будет иметь вид кривой нормального распределения (рис.
1.2).
Рис. 1.2. Часто предполагается, что результаты программного проекта распределяются по нормальному закону. Такое предположение неверно, потому что эффективность выполнения любого заданного объема работы группой, работающей над проектом, является ограниченной величиной
Каждая точка кривой представляет вероятность того, что проект будет завершен точно к соответствующей дате (или на него уйдет точно эта сумма). Площадь под кривой представляет суммарную вероятность 100 %. Вероятностное распределение такого рода учитывает возможный разброс результатов. Тем не менее предположение о симметричном распределении результатов по отношению к средней величине некорректно. Качество выполнения проекта является величиной ограниченной; это означает, что левый край распределения усекается вместо того, чтобы бесконечно убывать, как в нормальном распределении. И хотя «удачные» результаты проекта ограничены, возможности для «неудач» безграничны, поэтому вероятностная кривая уходит очень далеко вправо.
На рис. 1.3 изображено уточненное представление вероятностного распределения результатов программного проекта.
Вертикальная пунктирная линия изображает «номинальный» результат, или результат 50/50 — существует 50%-я вероятность того, что проект завершится лучше, и 50%-я вероятность того, что он завершится хуже. В статистике такой результат называется медианой.
На рис. 1.4 изображен другой способ представления подобных вероятностных распределений. Если график на рис. 1.3 показывает вероятность завершения
Номинальный результат

Рис. 1.4. Вероятность завершения программного проекта к определенной дате или ранее (или без превышения определенных затрат или объема работ) 
