Введение
Похоже, три самых тяжелых года в обучении специалистов по оценке приходятся на школьный курс арифметики.
Норман Р. Огастин
Оценка программных проектов не так уж сложна.
Эксперты ведут исследования и пишут на эту тему уже около 40 лет; за это время был разработан целый ряд методов, обеспечивающих точную оценку программных проектов. Создание точной оценки — дело простое и прямолинейное... когда вы понимаете, как ее создать. Но далеко не все методы оценки очевидны на интуитивном уровне, и даже очень умный человек не сможет найти все полезные методы самостоятельно. Если кто-то является квалифицированным программистом, это еще не делает его хорошим специалистом по оценке.Многие аспекты оценки программных проектов не видны с первого взгляда. Нередко так называемые проблемы оценки обусловлены неверным пониманием того, что же такое «оценка», или путаницей с похожими, но не идентичными концепциями. Некоторые методы оценки кажутся полезными, но не дают точных результатов. Сложные формулы порой приносят больше вреда, чем пользы, тогда как обманчиво простые методы работают на удивление хорошо.
В этой книге изложена суть четырех десятков лет исследований и еще более долгой практической работы, направленной на то, чтобы разработчики, руководители проектов и специалисты по тестированию могли эффективно работать в области оценки программных проектов. Знания в области оценки программных проектов вообще полезны, потому что факторы, влияющие на оценку, также влияют и на сам процесс разработки программного обеспечения.
Оценка программных проектов: искусство или наука?
В настоящее время исследования в области оценки программных проектов сосредоточены на совершенствовании методов оценки, чтобы передовые организации могли прогнозировать результат с точностью ±5 % вместо ±10 %. В этих методах задействованы интенсивные вычисления, их понимание требует хорошей математической подготовки и усердного, направленного изучения, а необходимая обработка данных выходит далеко за рамки того, что можно проделать на ручном калькуляторе. Такие методы лучше всего работают в виде специализированных коммерческих пакетов оценки программных проектов.
Я буду называть их научными методами оценки.С другой стороны, типичная фирма-разработчик вовсе не стремится к повышению точности с ±10 % до ±5 %. Она пытается избежать оценок, ошибочных на 100 % и более. (На то есть много причин, которые подробно рассматриваются в главах 3 и 4.)
Мы от природы склонны верить, что сложные формулы вида
Effort = 2.94 * (KSLOC)[а91 + 0 01 * SFJ] * EMj
всегда обеспечивают более точные результаты, чем простые формулы
Затраты = КоличествоФакторов х СредииеЗатратыНаФактор
Однако сложные формулы не всегда лучше. Программные проекты находятся под влиянием множества факторов, противоречащих многим допущениям, задействованным в сложных формулах научной оценки. Соответствующая динамика будет рассмотрена далее в книге. Более того, многие практические работники не имеют ни свободного времени, ни желания изучать сложную математику, необходимую для освоения научной оценки.
По этой причине в книге основное внимание уделяется эмпирике, процедурам и простым формулам, высокоэффективным и одновременно понятным для практикующих профессионалов в области программного обеспечения. Такие методы не обеспечивают оценок с точностью до ±5 %, но они сократят ошибку оценки до ±25 % и менее; для большинства проектов этого вполне достаточно. Я буду называть совокупность этих методов неформальной оценкой.
Материал книги основан как на научных, так и на неформальных методах, но в целом книга ориентируется на оценку программного обеспечения как искусство.
Еще по теме Введение:
- Введення залишків взаєморозрахунків
- Введення залишків по ЗП
- Введение
- Введение
- Оценка введения ГИФО
- Введення залишків по ТМЦ.
- Короткострокові економічні результати введення євро і розширення ЕС [24]
- 75. Введение евро. Достоинства и недостатки современной валютной системы
- введение
- Введение
- 16.1 Введение
- Введение
- Введение