Модель зрелости процессов разработки программного обеспечения
Шрифт:
Рис. 2.4. Продуктивность процесса разработки ПО в соответствии с уровнями зрелости
Усовершенствования в прогнозировании результатов проекта, представленные на рис. 2.4, предполагают, что итоги проекта становятся более предсказуемыми по мере устранения помех производственного процесса, часто выражающихся в виде доработки. Общую картину могут усложнить системы, не имеющие аналогов, поскольку новые технологии и приложения увеличивают отклонения производственного процесса, что приводит к снижению его продуктивности. Однако даже в случае новых систем инженерные
2.5. Пропуск этапов развития организации
Описания уровней зрелости в СММ содержат характеристики организации, достигшей соответствующего уровня. Каждый уровень образует основу для более рациональной и эффективной реализации процессов на последующих уровнях. Однако организации могут с пользой для себя использовать процессы, описанные на уровнях зрелости, более высоких в сравнении с достигнутыми. Такие технологические процессы, как анализ требований, проектирование, кодирование и тестирование не обсуждаются в СММ вплоть до уровня 3, однако эти операции должны выполняться даже организациями первого уровня. Организации уровней 1 и 2 могут получать преимущества от проведения экспертных оценок (уровень 3), выполнения анализа Парето (уровень 4) или испытаний новых технологий (уровень 5). Предписания по переходу организации с уровня 1 на уровень 2 часто содержат рекомендации по созданию группы инженерии производственного процесса, которая является атрибутом организаций уровня 3. Измерения, хотя и описываются в основном на уровне 4, являются также неотъемлемой частью более низких уровней зрелости.
Однако эти процессы не могут реализовать весь свой потенциал до тех пор, пока для них не будет заложен соответствующий фундамент. Например, чтобы достигнуть максимальной эффективности экспертных оценок, необходимо проводить их последовательно даже в самых критических ситуациях. В описания уровней зрелости входят те проблемы, которые доминируют на соответствующем уровне. В организации первого уровня доминируют управленческие проблемы, остальные вопросы скрываются за сложностями планирования и управления проектами разработки ПО.
Пропуск уровней зрелости нежелателен, поскольку каждый уровень формирует основу, необходимую для достижения следующего уровня. Модель СММ определяет уровни, через которые должно пройти развитие организации прежде, чем она сможет создать культуру высокоэффективной разработки ПО. Процессы, не имеющие соответствующего фундамента, могут подвести в наиболее критические моменты и не создают основы для дальнейшего усовершенствования.
Попытки организации первого уровня внедрить определенный производственный процесс (уровень 3) раньше, чем будет установлен повторяемый процесс (уровень 2), обычно заканчиваются неудачей, поскольку менеджеры проектов попадают в крайне жесткие условия графика и бюджета. В этом кроется основная причина для того, чтобы сконцентрировать усилия на процессах управления прежде, чем заниматься инженерными процессами. Определение и внедрение инженерного процесса может показаться более простым, чем внедрение процесса управления (особенно с точки зрения технических сотрудников), но без строгой дисциплины управления инженерный процесс разваливается под давлением сроков и бюджета [Humphrey 88].
Обычно безуспешными являются попытки организации реализовать управляемый процесс (уровень 4) до внедрения определенного процесса, поскольку определенные процессы формируют общую основу для интерпретации измерений. Хотя сбор данных может вестись
Успешное внедрение оптимизирующего процесса (уровень 5) без наличия управляемого процесса (уровень 4) также маловероятно из-за недостаточного понимания влияния, вносимого изменениями процессов.
Без контролирования процесса в узких статистических границах (т. е. с малыми отклонениями количественных показателей процесса), его данные содержат слишком много шума, чтобы можно было объективно определить эффект, производимый конкретным усовершенствованием процесса. Принятие решений может вылиться в религиозные войны, поскольку для рациональных и обоснованных решений недостаточно количественной информации.
Работа по усовершенствованию процесса должна быть нацелена прежде всего на нужды организации в контексте ее бизнес-среды. Возможность реализовать процессы более высоких уровней вовсе не означает, что организация может перейти на произвольный уровень зрелости.
ГЛАВА 3. РАБОЧЕЕ ОПРЕДЕЛЕНИЕ МОДЕЛИ ЗРЕЛОСТИ ПРОЦЕССОВ РАЗРАБОТКИ ПО
Модель СММ является структурой, представляющей последовательность усовершенствований, которые рекомендуются для организаций-разработчиков, желающих повысить продуктивность своего производственного процесса. Это рабочее определение СММ предназначено для поддержки разнообразных способов использования этой модели. В нем учитываются, по крайней мере, четыре способа использования СММ:
Группы внутренней оценки могут использовать СММ для выявления сильных и слабых сторон своей организации.
Группы внешней оценки могут использовать СММ для выявления рисков, связанных с выбором различных подрядчиков, и отслеживания выполнения договоров.
Менеджеры и технические сотрудники с помощью СММ могут изучить действия по планированию и реализации программы усовершенствования производственного процесса своей организации.
Группы, связанные с усовершенствованием процесса (например, группа инженерии производственного процесса), могут использовать СММ в качестве руководства по определению и усовершенствованию производственного процесса организации.
Из-за разнообразия способов своего использования модель СММ должна быть разбита на части, позволяющие вывести рекомендации для конкретного процесса, исходя из структуры уровней зрелости. Такое разбиение также обозначает процессы и их структуру, характеризующие зрелость производственного процесса и его продуктивность.
3.1. Внутренняя структура описания уровней зрелости
Каждое описание уровней зрелости разбивается на составные части. Разбиение каждого уровня зрелости, кроме первого, варьируется от кратких обзоров уровня до его рабочего определения в ключевых практиках, как показано на рис. 3.1. Описание каждого уровня зрелости состоит из нескольких групп ключевых процессов. Каждая группа ключевых процессов разбита на пять разделов. В разделах приводятся ключевые практики, при совместном выполнении которых достигаются цели группы ключевых процессов.
Рис. 3.1. Структура CMM
3.2. Уровни зрелости
Уровень зрелости представляет собой четко определенную стадию эволюции организации на пути к зрелому производственному процессу, соответствует уровню продуктивности производственного процесса, как это проиллюстрировано на рис. 2.1. Например, при переходе на уровень 2 характер производственного процесса меняется с уникального на упорядоченный, благодаря созданию слаженной системы средств управления проектом.