Глава 12 579
12.3.2. Уровни зрелости процесса программной инженерии по СММ
СММ - это описательная модель в том смысле, что она описывает сущест-
венные (или ключевые) атрибуты, которыми должен обладать процесс в организа-
ции, находящейся на определенном уровне зрелости. В то же время СММ - норма-
тивная модель, поскольку указывает конкретные практические приемы, которые
должны применяться. СММ обеспечивает достаточный уровень абстракции и не
накладывает ограничений на способы реализации процесса в организации.
В любом контексте применения СММ, должна существовать разумная ин-
терпретация практических приемов. СММ нельзя считать предписывающей моде-
лью, поскольку она дает ответ на вопрос, какими свойствами должен обладать про-
цесс в организации, имеющей тот или иной уровень зрелости, но не говорит о том,
какими средствами обеспечить улучшение процесса и достижение соответствую-
щего уровня.
Модель СММ (здесь и далее имеется в виду SW-CMM) выделяет и дает стро-
гое описание 18 ключевых направлений (областей, участков) процесса KPA (Key
Process Areas) программной инженерии (схожих по назначению с поддерживаю-
щими и организационными процессами ЖЦ в ISO/IEC 15504), которые «распреде-
лены» по уровням зрелости (от 2 до 5).
Для того чтобы организация достигла определенного уровня зрелости, она
должна внедрить (институциализировать) соответствующее множество KPA и пре-
доставить экспертам (имеющим права оценивания и владеющим методами экс-
пертного оценивания) документальное подтверждение внедрения KPA в процесс
программной инженерии. Результат оценивания – сертификат уровня зрелости
и/или рекомендации по дальнейшему совершенствованию процесса.
Пять уровней зрелости СММ, ассоциированных с КРА, представлены на ри-
сунке 12.8. Надпись на стрелке указывает уровень достигнутой мощности процес-
са, который официально утверждается организацией на каждой ступени модели
зрелости. Названия уровней зрелости отражают сущность изменений в основном
процессе программной инженерии.
Уровень зрелости определяет проблемы, которые преобладают на этом
уровне. Например, на уровне 1 основная проблема касается управления, а осталь-
ные проблемы скрыты из-за сложности планирования и управления программными
проектами.
Каждый уровень образует фундамент для эффективной реализации процес-
сов на последующих уровнях. Пропуск уровней противоестественен.
Организации могут с успехом использовать (внедрять) направления процес-
са, описанные на вышележащих уровнях, находясь при этом на более низком уров-
не. Однако, направления, не отнесенные к, но применяемые на нижележащих уров-
нях, не могут в полной мере раскрыть свой потенциал, пока не будет создан соот-
ветствующий фундамент на нижних уровнях СММ.
Таким образом, СММ идентифицирует уровни, через которые организация
должна эволюционировать для утверждения культуры программной инженерии.