Марк Паулк, Билл Куртис, Мэри Бет Хриссис, Чарльз В. Вебер, Сьюзен М. Гарсия, Мерилин Буш CMMI Product Team МОДЕЛЬ ЗРЕЛОСТИ ПРОЦЕССОВ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПРЕДИСЛОВИЕ ГЛАВА 1. ОСНОВНЫЕ ПОНЯТИЯ ЗРЕЛОСТИ ПРОИЗВОДСТВЕННЫХ ПРОЦЕССОВ 1.1. Зрелые и незрелые организации-разработчики ПО 1.2. Фундаментальные концепции, лежащие в основе понятия зрелости производственных процессов 1.3. Обзор модели зрелости процессов разработки ГЛАВА 2. ПЯТЬ УРОВНЕЙ ЗРЕЛОСТИ ПРОИЗВОДСТВЕННОГО ПРОЦЕССА 2.1. Поведенческие характеристики уровней зрелости 2.1.1. Уровень 1 — начальный уровень 2.1.2. Уровень 2 — повторяемый уровень 2.1.3. Уровень 3 — определенный уровень 2.1.4. Уровень 4 — управляемый уровень 2.1.5. Уровень 5 — оптимизирующий уровень 2.2. Понимание концепций уровней зрелости 2.2.1. Понимание концепции начального уровня 2.2.2. Понимание повторяемого и определенного уровней 2.2.3. Понимание управляющего и оптимизированного уровней 2.3. Представление о производственном процессе 2.4. Продуктивность процесса и прогнозирование производительности 2.5. Пропуск этапов развития организации ГЛАВА 3. РАБОЧЕЕ ОПРЕДЕЛЕНИЕ МОДЕЛИ ЗРЕЛОСТИ ПРОЦЕССОВ РАЗРАБОТКИ ПО 3.1. Внутренняя структура описания уровней зрелости 3.2. Уровни зрелости 3.3. Группы ключевых процессов 3.4. Разделы Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 3.5. Ключевые практики ГЛАВА 4. ИСПОЛЬЗОВАНИЕ СММ 4.1. Методы внутренней и внешней оценки производственного процесса 4.2. Различия между внутренними и внешними оценками производственного процесса 4.3. Другие способы использования CMM при усовершенствовании производственного процесса ГЛАВА 5. БУДУЩИЕ НАПРАВЛЕНИЯ РАЗВИТИЯ СММ 5.1. Что находится вне области рассмотрения CMM 5.2. Ближайшие задачи 5.3. Долговременные задачи 5.4. Заключение ГЛАВА 6. ИСПОЛЬЗОВАНИЕ СТРАНИЦ ОПИСАНИЯ КЛЮЧЕВЫХ ПРАКТИК Ключевые практики (как таковые) Подпрактики ГЛАВА 7. ИНТЕРПРЕТАЦИЯ СММ 7.1. Интерпретация ключевых практик 7.2. Интерпретация разделов 7.2.1. Обязательства по выполнению Положения политики Лидерство 7.2.2. Необходимые предпосылки Ресурсы и финансирование Обучение Ориентация Начальные условия 7.2.3. Выполняемые операции Типы планов Формальные планы Неформальные планы В соответствии с документированной процедурой Отнесенные к ПО системные требования Отношения типа «поставщик — заказчик» Отслеживание процесса разработки ПО с принятием корректирующих мер в сравнении с управлением ходом работ Контроль в сравнении с экспертной оценкой Помещение в систему управления конфигурацией в сравнении с управлением и контролем 7.2.4. Измерения и анализ 7.2.5. Проверка внедрения Регулярный надзор со стороны высшего руководства Регулярный и событийный надзор со стороны руководства проекта Действия по обеспечению качества ПО 7.3. Интерпретация определения производственного процесса 7.3.1. Концепции определения процесса 7.3.2. Концепции, касающиеся основных средств производственного процесса организации Основные средства производственного процесса организации (ППО) Стандартный производственный процесс организации (СППО) Архитектура производственного процесса Элемент производственного процесса Утвержденное описание жизненных циклов ПО Инструкции и критерии адаптации База данных производственного процесса организации Библиотека документации по производственному процессу 7.3.3. Концепции, связанные с производственным процессом проекта Описание производственного процесса проекта Стадии Задачи Операции Промежуточные программные продукты (результаты проекта) Программные продукты 7.3.4. Взаимосвязь между производственным процессом проекта и планом разработки ПО 7.3.5. Жизненные циклы и CMM 7.3.6. Технология и CMM 7.3.7. Документация и CMM 7.3.8. Сбор и анализ данных процесса 7.4. Организационная структура и роли 7.4.1. Организационные роли Менеджер Руководитель высшего звена Менеджер проекта Производственный менеджер проекта Линейный менеджер Ведущий специалист Персонал, разработчики, сотрудники 7.4.2. Организационная структура Организация Проект Группа Группа разработки ПО Группы, связанные с разработкой ПО Группа инженерии производственного процесса Группа системного проектирования Группа системного тестирования Группа обеспечения качества ПО Группа управления конфигурацией ПО Группа обучения 7.4.3. Независимость и организационная структура 7.5. Применение профессиональной оценки ГЛАВА 8. УРОВЕНЬ 2: ПОВТОРЯЕМЫЙ УРОВЕНЬ 8.1. Управление требованиями Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 8.2. Планирование проекта Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 8.3. Отслеживание хода проекта и контроль над ним Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 8.4. Управление производственным субподрядом Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 8.5. Обеспечение качества ПО Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 8.6. Управление конфигурацией ПО Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения ГЛАВА 9. УРОВЕНЬ 3: ОПРЕДЕЛЕННЫЙ УРОВЕНЬ 9.1. Координация производственного процесса организации Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 9.2. Определение производственного процесса организации Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 9.3. Программа обучения Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 9.4. Интегрированное управление разработкой ПО Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 9.5. Инженерия разработки программного продукта Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 9.6. Межгрупповая координация Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения 9.7. Экспертные оценки Цели Обязательства по выполнению Необходимые предпосылки Выполняемые операции Измерения и анализ Проверка внедрения ПРИЛОЖЕНИЕ ЦЕЛИ КАЖДОЙ ГРУППЫ КЛЮЧЕВЫХ ПРОЦЕССОВ 1. Группы ключевых процессов для уровня 2: повторяемый уровень Управление требованиями Планирование проекта Отслеживание хода проекта и контроль над ним Управление производственным субподрядом Обеспечение качества ПО Управление конфигурацией ПО 2. Группы ключевых процессов для уровня 3: определенный уровень Координация производственного процесса организации Определение производственного процесса организации Программа обучения Интегрированное управление разработкой ПО Инженерия разработки программного продукта Межгрупповая координация Экспертные оценки 3. Группы ключевых процессов для уровня 4: управляемый уровень Количественное управление процессом Управление качеством ПО 4. Группы ключевых процессов для уровня 5: оптимизирующий уровень Предотвращение дефектов Управление технологическими изменениями Управление изменениями процесса ССЫЛКИ НА ИСПОЛЬЗУЕМУЮ ЛИТЕРАТУРУ
2.2.2. Понимание повторяемого и определенного уровней По мере роста объема и сложности проекта, внимание постепенно смещается от технических вопросов к организационным и управленческим — т. е. к вопросам, которые находятся в фокусе рассмотрения модели зрелости процессов [Siegel 90, DoD 87, GAO-92-48]. Производственный процесс на этих уровнях позволяет сотрудникам работать более эффективно благодаря созданию документированных процессов, включающих в себя опыт наилучших работников, обретения навыков, необходимых для эффективного выполнения процессов (обычно с помощью обучения), и непрерывного совершенствования за счет обучения у сотрудников, реально выполняющих работу.
Для достижения уровня 2 руководство должно сфокусировать внимание на своих собственных процессах, добиваясь установления дисциплинированного производственного процесса. Уровень 2 формирует основу для уровня 3, так как внимание сосредоточено на руководстве, которое стремится усовершенствовать свои процессы прежде, чем приступить к техническим и организационным вопросам на уровне 3. На уровне 2 руководство занимает лидирующее положение путем документирования и следования процессам управления проектом.
Процессы организаций второго уровня могут различаться от проекта к проекту. Организационные требования для достижения уровня 2 заключаются в формировании политик, помогающих установить в проектах соответствующие процессы управления. Документированные процедуры обеспечивают основу для согласованных процессов, которые могут быть установлены в рамках всей организации с помощью обучения и мероприятий по обеспечению качества ПО.
На этом фундаменте управления проектом строится уровень 3, который определяет, интегрирует и документирует весь производственный процесс организации. Под интеграцией в этом случае понимается процесс автоматической передачи выходных данных одной задачи на вход другой. Несоответствия между задачами выявляются и разрешаются на стадии планирования процесса до их фактического воздействия на производственный процесс. Одной из проблем уровня 3 является построение таких процессов, которые не содержат излишних ограничений на выполнение сотрудниками своей работы [Humphrey 91b].