Стандраты CMM

  • Создание ПО с соответствующим качеством
  • Создание в срок
  • Минимизация расходов

Институт программной инженерии SEI, входящий в состав американского университета Карнеги -Мелона, разработал cooтветствующую технологию в начале 90-х годов. Она называется Capability Maturity Model for Software, CMM-SW т.е. "эволюционная модель развития способности компании разрабатывать ПО" (СММ иногда еще расшифровывается как Common Maturity Model, но это не совсем корректно). Сегодня в США невозможно получить крупный (от 2 млн. долл.) государственный или военный заказ на создание ПО, если компания не сертифицирована как минимум по третьему из пяти уровней СММ.

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

Процесс в компании один. Но в зависимости от специфики выполняемых проектов он приспосабливается к их конкретным нуждам.

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

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

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

Каждый уровень модели это набор областей ключевых процессов (ОКП), состоящих из ключевых практик. ОКП это основные виды деятельности на данном уровне. Для каждой ОКП в модели описан набор целей (goals), которые показывают, что мы достигнем в рамках данной ОКП, выполнив ее ключевые практики. Ключевые практики определяют, что надо сделать, чтобы эти цели были достигнуты, но не указывают, как ("как" является полной прерогативой конкретной компании). Поскольку ключевых практик на каждом уровне много, то для удобства работы они всегда распределяются по пяти группам. (Модель СММ выросла из разработанных в Америке в начале ХХ века методик управления качеством для промышленных предприятий; в основу этих методик положены пять принципов управления качеством.)