"Марк Паулк, Билл Куртис. Модель зрелости процессов разработки программного обеспечения " - читать интересную книгу автора

инженерии и управления.

1.1. Зрелые и незрелые организации-разработчики ПО

Постановка осмысленных целей, направленных на улучшение
производственных процессов, требует понимания различий между зрелыми и
незрелыми организациями-разработчиками ПО. В незрелых
организациях-разработчиках производственный процесс, как правило,
импровизируется исполнителями и их руководством. Даже при наличии указаний
по определенной организации производственного процесса ими не
руководствуются. Незрелая организация-разработчик противодействует любым
изменениям, а управляющее звено обычно сфокусировано на решении неотложных
проблем (деятельность, известная как "пожаротушение"). Графики работ и
бюджеты обычно превышаются вследствие того, что они не основаны на реальных
оценках. По мере приближения к критическим срокам сдачи проекта приходится
идти на компромисс между сроками выполнения, функциональностью и качеством
продукта.
В незрелых организациях не существует объективной основы для вынесения
решения о качестве продукта или для решения проблем, связанных с процессами
и разрабатываемым продуктом. Вследствие этого качество разработанного
программного продукта является трудно предсказуемым. Работы, нацеленные на
улучшение качества, такие как экспертные оценки и тестирование, зачастую
урезаются или вообще отбрасываются по мере того, как проект выходит за
пределы своего графика.
С другой стороны, зрелые организации-разработчики обладают широкими
возможностями по управлению процессами разработки и сопровождения ПО. Сферы
ответственности внутри производственного процесса точно распределены как
среди имеющихся, так и недавно принятых сотрудников, а все работы проводятся
в соответствии с запланированным процессом. Установленные процессы пригодны
для использования [Humphrey 91b] и соответствуют реально применяемым
способам проведения работ. По мере необходимости эти определенные процессы
обновляются, а усовершенствования разрабатываются с помощью контролируемого
пилотного тестирования и/или анализа затрат и прибылей. Распределение ролей
и сфер ответственности в пределах определенного процесса четко определено на
протяжении всего проекта и в рамках всей организации.
В зрелой организации, управляющее звено непрерывно следит за качеством
программного продукта и за тем, удовлетворен ли заказчик созданным решением.
Существует объективная, количественная основа для вынесения решения о
качестве продукта, а также анализа проблем, возникающих с продуктом или
процессом. План-графики и бюджеты реалистичны и основаны на показателях
производительности предыдущих проектов; как правило, достигаются ожидаемые
результаты по затратам, срокам разработки, функциональности и качеству
продукта. Кратко говоря, соблюдается точное следование упорядоченному
процессу, так как все участники проекта понимают важность его соблюдения, а
для поддержки процесса разработки существует необходимая инфраструктура.
Реализация этих наблюдений о зрелых и незрелых организациях требует
создания структуры, обеспечивающей достижение зрелости производственных
процессов. Эта структура предназначена для описания эволюционного пути от
специально создаваемых, хаотических процессов к зрелым, упорядоченным
производственным процессам. Без этой структуры программы улучшения процессов