Поделиться через


Предыстория интеграции модели зрелости возможностей (CMMI)

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Окончательное руководство по интеграции модели зрелости возможностей (CMMI) для разработки опубликовано Институтом программного обеспечения как "CMMI: рекомендации по интеграции процессов и улучшению продуктов". В этой книге описывается CMMI для разработки (CMMI-DEV) версии 1.3, которая является одной из моделей в наборе продуктов CMMI. Вы также можете найти книгу "CMMI Distilled: Practical Introduction to Integrated Process Improvement" полезной и доступной для изучения CMMI.

Примечание.

Приведенные здесь рекомендации основаны на версии 1.3 для CMMI и поддерживают процесс CMMI, доступный в Azure DevOps. В настоящее время не существуют планы обновления этого содержимого для поддержки более поздних версий.

Исторические заметки

CMMI был начат в 1987 году в качестве модели зрелости возможностей (CMM), проекта в Институте инженерии программного обеспечения (SEI). SEI является исследовательским центром в университете Carnegie-Mellon, который был создан и финансируется Министерством обороны Соединенных Штатов. Впервые опубликованная в 1991 году модель CMM для программного обеспечения начиналась как контрольный список критических факторов успеха. Модель также основана на исследованиях компании International Business Machines (IBM) и на работах таких лидеров обеспечения качества 20-го века, как Филип Кросби и У. Эдвардс Деминг. И имя, модель зрелости возможностей, и представление по стадиям, состоящее из пяти уровней, были вдохновлены моделью производственной зрелости Кросби. Применяется главным образом к программам обороны, CMM достигла значительного внедрения и подверглась нескольким редакциям. Его успех привел к разработке моделей CMM для различных тем в других областях, помимо программного обеспечения. Распространение новых моделей создало путаницу. В ответ правительство финансировало двухлетний проект для создания единой расширяемой рамки, которая интегрировала системную инженерию, инженерию программного обеспечения и разработку продуктов. Это усилие включало более 200 отраслевых и академических экспертов. Результатом был CMMI.

CMMI-DEV — это модель. Это не процесс, ни рецепт, который следует следовать. Вместо этого CMMI-DEV предоставляет набор организационных действий, которые, как оказалось, используются в разработке программного обеспечения и проектировании систем. Зачем использовать такую модель? Какова его цель? И как лучше всего его использовать? Возможно, эти критически важные вопросы чаще всего неправильно интерпретируются в контексте CMMI.

Зачем использовать модель?

Для усилий по улучшению требуется модель работы вашей организации, какие функции они необходимы и как эти функции взаимодействуют. Модель дает представление о организационных элементах и помогает в обсуждении того, как и что можно и следует улучшить.

Модель предлагает следующие преимущества:

  • Предоставляет общую платформу и язык для взаимодействия
  • Использует годы опыта
  • Помогает пользователям рассматривать большую картину при фокусе на улучшении
  • Часто поддерживается тренерами и консультантами
  • Может помочь решить разногласия, предоставив согласованные стандарты

Какова цель модели CMMI?

Цель модели CMMI заключается в оценке зрелости процессов организации и предоставления рекомендаций по улучшению процессов с целью улучшения продуктов. Кроме того, CMMI является моделью для управления рисками и предоставляет способ измерения способности организации управлять рисками. Управление факторами риска влияет на способность организации предоставлять высококачественные продукты. Другая перспектива управления риском заключается в том, насколько хорошо организация работает под стрессом. Высокозрелая, высокоспособная организация может легко реагировать на непредвиденные стрессовые события. Организация с низким уровнем зрелости и более низкой способностью склонна паниковать при стрессе, слепо следовать устаревшим процедурам или полностью отбросить все процессы и вернуться к хаосу.

Однако CMMI не является проверенным показателем экономической эффективности организации. Хотя более высокий уровень зрелости организаций может позволить лучше управлять рисками и быть более предсказуемыми, есть доказательства того, что фирмы с более высоким уровнем зрелости склонны избегать рисков. Избегание рисков может привести к недостатку инноваций или проявлению большей бюрократии, что приводит к длительным срокам и нехватке конкурентоспособности. Фирмы с более низким уровнем зрелости, как правило, являются более инновационными и творческими, но хаотичными и непредсказуемыми. Когда результаты достигаются, они часто являются результатом героических усилий отдельных лиц или менеджеров.

Какой лучший способ использовать модель CMMI?

Модель была разработана, чтобы служить основой для инициативы по улучшению процесса, причем ее использование в оценке является лишь вспомогательной системой для измерения улучшения. С этим использованием произошел смешанный успех. Слишком легко ошибаться в модели определения процесса и пытаться следовать за ней, а не картой, которая определяет пробелы в существующих процессах, которые, возможно, потребуется заполнить. Основным блоком CMMI является область процесса, которая определяет цели и несколько действий, которые часто используются для их удовлетворения. Одним из примеров области процесса является Process and Product Quality Assurance. Другое — управление конфигурацией. Важно понимать, что область процесса не является процессом. Один процесс может пересекать несколько областей процессов, а отдельная область процесса может включать несколько процессов.

CMMI-DEV — это действительно две модели, которые используют одни и те же базовые элементы. Первым и наиболее знакомым является поэтапное представление, которое представляет 22 области процессов, сопоставленные с одним из пяти уровней зрелости организации. Оценка организации должна определить уровень, на котором она функционирует, и этот уровень будет показателем её способности управлять рисками и выполнять свои обещания.

поэтапное представление CMMI

Уровни 4 и 5 часто называются более высоким уровнем зрелости. Часто существует четкое различие между организациями с более высоким уровнем зрелости, которые демонстрируют количественное управление и оптимизирующие практики, и организациями с более низким уровнем зрелости, которые просто управляются или следуют установленным процессам. Более высокий уровень зрелости организаций показывает более низкую вариативность в процессах и часто использует ведущие индикаторы в рамках статистического деффенсивного метода управления. В результате более зрелые организации, как правило, становятся более предсказуемыми и быстрыми в реагировании на новую информацию, при условии, что дополнительная бюрократия не встает на пути. Где организации с низким уровнем зрелости, как правило, демонстрируют героические усилия, высокозрелые организации могут слепо следовать процессам, когда под стрессом и не признают, что изменение процесса может быть более подходящим ответом.

Модели непрерывного представления обрабатывают возможности в каждой из 22 областей процессов по отдельности, что позволяет организации адаптировать свои усилия к улучшению тех процессов, которые предлагают наибольшую ценность для бизнеса. Это представление больше соответствует исходной модели Кросби. Оценки по этой модели приводят к профилям возможностей, а не к одному числу. Поскольку уровень зрелости организации — это уровень, который большинство руководителей и руководителей понимают, существуют способы сопоставления результатов непрерывной оценки модели на пять этапов.

непрерывное представление CMMI

Использование поэтапной модели в качестве основы для программы улучшения процессов может быть опасной, когда разработчики забывают, что CMMI не является процессом или моделью рабочего процесса. Вместо этого CMMI предназначен для установления целей для процессов и рабочих потоков. Выполнение таких целей повышает зрелость организации и вероятность того, что события разворачиваются по мере планирования. Возможно, самая большая ошибка заключается в том, чтобы сделать достижение определенного уровня целью, и затем создавать процессы и инфраструктуру исключительно для прохождения оценки. Цель любого действия по улучшению процесса должна заключаться в измеримом улучшении, а не просто в числовом показателе.

Непрерывная модель пользовалась успехом в качестве руководства по улучшению процесса. Некоторые консультационные фирмы предпочитают предлагать только рекомендации по непрерывной модели. Наиболее очевидным отличием является то, что программа улучшения процессов, разработанная вокруг непрерывной модели, не имеет искусственных целей, которые определяются уровнями зрелости. Непрерывная модель также позволяет применять улучшение процессов в тех областях, где это, скорее всего, принесёт экономическую выгоду для организации. Таким образом, те, кто следует за непрерывной моделью, чаще получают положительные отзывы от инициативы, основанной на модели CMMI. Кроме того, положительные отзывы, скорее всего, приводят к развитию виртуозного цикла улучшений.

Элементы модели CMMI

В следующей таблице перечислены 22 области процессов, составляющие модель CMMI (версия 1.3):

Аббревиатура Область обработки
АВТОМОБИЛЬ Разрешение & причинного анализа
СМ Управление конфигурацией
DAR Резолюция & анализа решений
IPM Интегрированное управление проектами
МАМА Анализ измерения &
OID Развертывание организационных инноваций &
OPD Определение организационного процесса
OPF Фокус на организационный процесс
OPP Производительность организационных процессов
OT Организационное обучение
ПИ Интеграция продуктов
PMC Управление & мониторинга проектов
PP Планирование проектов
PPQA Процесс & Гарантия Качества Продукции
QPM Количественное управление проектами
RD Определение требований
REQM Управление требованиями
RSKM Управление риском
САМ Управление соглашениями поставщика
TS Техническое решение
ВЕР Проверка
ВАЛЬ Ратификация

В промежуточном представлении области процесса сопоставляются с каждым этапом, как показано на следующем рисунке.

Представление этапов с областями процесса

В непрерывном представлении области процесса сопоставляются с функциональными группами, как показано на следующем рисунке.

непрерывное представление, показывающее области процесса

Каждая область процесса состоит из обязательных, ожидаемых и информативных компонентов. Для удовлетворения оценки модели требуются только необходимые компоненты. Обязательные компоненты — это конкретные и универсальные цели для каждой области процесса. Ожидаемые компоненты — это конкретные и универсальные методики для каждой конкретной или универсальной цели. Обратите внимание, что, поскольку ожидаемый компонент просто ожидается и не требуется, это означает, что конкретная или универсальная практика может быть заменена эквивалентной практикой. Ожидаемые методики предназначены для того, чтобы направлять реализаторов и оценщиков. Если выбрана альтернативная практика, именно реализатору нужно уведомить оценщика и объяснить, почему такая практика является приемлемой. Информативные компоненты предоставляют подробные сведения, помогающие реализовать инициативу по улучшению процессов, которая руководствуется моделью CMMI. Информативные компоненты включают субпрактики универсальных и конкретных методик и типичных рабочих продуктов.

Требуются только универсальные и конкретные цели. Все остальное предоставляется в качестве руководства. Для примеров ожидаемых и информативных компонентов, в материалах CMMI приводятся данные из крупных космических и проектов оборонных систем. Эти проекты могут не отражать тип проектов, которые выполняются в вашей организации, и не могут отражать более последние тенденции в отрасли, такие как появление методов разработки программного обеспечения Agile.