Текст книги "Модель зрелости процессов разработки программного обеспечения"
Автор книги: Марк Паулк
Соавторы: Сьюзен Гарсия,Чарльз Вебер,Мэри Хриссис,Мерилин Буш,Билл Куртис
Жанр:
Программирование
сообщить о нарушении
Текущая страница: 4 (всего у книги 16 страниц)
3.4. Разделы
Для удобства группы ключевых процессов организованы по разделам, которые представляют собой атрибуты, указывающие, являются ли эффективными, повторяемыми и устойчивыми реализация и установление групп ключевых процессов. Ниже перечислены пять основных разделов.
Обязательства по выполнению
Описывают действия, которые должна выполнить организация, чтобы обеспечить установление и стабильность процесса. Обязательства по выполнению обычно касаются установления организационных политик и поддержки со стороны высшего руководства.
Необходимые предпосылки
Описывают предварительные условия, которые должны выполняться в проекте или организации для компетентного внедрения производственного процесса, обычно касаются ресурсов, организационных структур и требуемого обучения.
Выполняемые операции
В разделе «Выполняемые операции» описаны роли и процедуры, необходимые для внедрения группы ключевых процессов. Выполняемые операции обычно включают в себя создание планов и реализацию процедур, выполнение и отслеживание работ, а также, по мере необходимости, выполнение корректирующих действий.
Измерения и анализ
Раздел «Измерения и анализ» описывает, что необходимо для измерения процесса и анализа результатов измерений. В этом разделе обычно приводятся примеры измерений, с помощью которых можно определить статус и эффективность выполняемых операций.
Проверка внедрения
В разделе «Проверка внедрения» описываются шаги, позволяющие убедиться в том, что операции выполняются в соответствии с установленным процессом. В этот раздел обычно входят проверки и аудиты со стороны руководства и работы по обеспечению качества ПО.
Практики раздела «Выполняемые операции» описывают, что должно быть реализовано для получения продуктивного процесса. Все остальные практики вместе формируют базис, с помощью которого организация может внедрить практики, описанные в разделе «Выполняемые операции».
3.5. Ключевые практики
Каждая группа ключевых процессов выражается ключевыми практиками, выполнение которых способствует достижению целей группы. Ключевые практики описывают инфраструктуру и операции, которые дают наибольший вклад в эффективное внедрение и установление группы ключевых процессов.
Каждая ключевая практика состоит из одного предложения, часто раскрываемое более подробным описанием, в которое могут входить примеры и уточнения. Ключевые практики, иногда называемые ключевыми практиками верхнего уровня, устанавливают основные политики, процедуры и операции для группы ключевых процессов. Компоненты подробного описания часто называются подпрактиками. На рис. 3.3 приводится пример структуры, в которую входит ключевая практика из группы ключевых процессов «Планирование проекта».
Как показано на рис. 3.3, чтобы обеспечить последовательную реализацию цели, заключающейся в документировании оценок для планирования и отслеживания проекта, организация должна установить документированную процедуру получения оценок объема ПО. Если эти оценки выводятся не на основании документированной процедуры, их разброс может быть слишком велик, поскольку разницу в предположениях объема вряд ли удастся сгладить. Подробное описание ожидаемого содержания такой процедуры включает в себя использование статистических данных по объему, документирование предположений и рассмотрение оценок. Эти критерии позволяют судить о рациональности используемой процедуры оценки объема.
Ключевые практики описывают, «что» необходимо сделать, но их не следует воспринимать в виде догм, устанавливающих, «как» нужно достигать целей. Цели группы ключевых процессов можно реализовать с помощью альтернативных практик. Интерпретация ключевых практик должна быть разумной, допускающей достижение целей группы ключевых процессов эффективным, хотя, возможно, и отличающимся способом. Ключевые практики вместе с рекомендациями по их интерпретации содержатся в документе «Key Practices of the Capability Maturity Model, Version 1.1» («Ключевые практики модели зрелости процессов разработки, версия 1.1») [Paulk 93b], который входит во вторую часть данной книги.
Рис. 3.3. Построение структуры CMM: пример ключевой практики
ГЛАВА 4. ИСПОЛЬЗОВАНИЕ СММ
Модель СММ устанавливает набор общедоступных критериев, описывающих характеристики зрелых организаций-разработчиков. Эти критерии могут использоваться организациями для усовершенствования своих процессов разработки и сопровождения ПО, либо государственными или коммерческими организациями для оценки рисков, возникающих при заключении с какой-либо компанией договора о разработке ПО.
Эта глава описывает два метода, разработанных институтом SEI для оценки зрелости производственного процесса организации-разработчика, – внутренней и внешней оценки производственного процесса.
Внутренние оценки производственного процесса используются для определения состояния текущего производственного процесса организации, выявления приоритетных задач, связанных с производственным процессом, а также для получения организационной поддержки усовершенствования производственного процесса.
Внешние оценки производственного процесса используются для выявления подрядчиков, достаточно квалифицированных для выполнения разработки, или же для отслеживания состояния производственного процесса, используемого в текущих проектах разработки.
Этот обзор сам по себе недостаточен читателям для проведения внутренних или внешних оценок производственного процесса. Желающим применить модель СММ с использованием этих двух методов потребуется дополнительное обучение.
СММ является общим основанием для проведения как внутренних, так и внешних оценок процесса. Однако цели и способы применения этих методов существенно отличаются друг от друга. Оба метода основаны на модели и продуктах, получаемых в рамках этой модели. Модель СММ в сочетании со своими продуктами обеспечивает надежное и последовательное применение этих методов.
4.1. Методы внутренней и внешней оценки производственного процесса
Внутренние оценки нацелены на выявление приоритетных направлений усовершенствования производственного процесса организации. Группы внутренней оценки руководствуются СММ для выявления таких направлений и определения их приоритета. Полученные данные вместе с инструкциями из ключевых практик СММ используются (например, группой инженерии производственного процесса) для планирования стратегии усовершенствования организации.
Внешние оценки производственного процесса нацелены на выявление рисков конкретного проекта или договора, связанных с разработкой качественного ПО в срок и в рамках бюджета. Такие оценки могут выполняться по отношению к подрядчикам в ходе процесса обеспечения поставок. Поскольку данные оценок структурированы моделью СММ, их можно использовать для определения рисков при выборе конкретного подрядчика. С помощью внешних оценок также можно отследить выполнение процессов для существующих договоров с целью выявления потенциальных усовершенствований производственного процесса подрядчика.
СММ устанавливает общую структуру, на которую можно ссылаться при проведении как внутренних, так и внешних оценок производственного процесса. Хотя цели этих методов различны, оба они опираются на СММ при оценке зрелости производственного процесса. На рис. 4.1 приведено краткое описание общих шагов обоих методов.
Первым шагом является выбор оценивающей группы. Эта группа должна пройти обучение фундаментальным концепциям СММ, а также специфическим особенностям метода внутренних либо внешних оценок производственного процесса. Члены группы должны обладать профессиональными знаниями в области инженерии и управления разработкой.
Второй шаг состоит в заполнении представителями оцениваемой организации опросного листа для выявления уровня зрелости и других диагностических документов. После завершения этой операции группа оценки выполняет анализ ответов (шаг 3), который подытоживает результаты опроса и определяет области дальнейших исследований. Исследуемые области соответствуют группам ключевых процессов СММ.
Теперь группа готова к посещению оцениваемой организации (шаг 4). Опираясь на результаты анализа опроса, группа интервьюирует ряд сотрудников и рассматривает документацию, добиваясь понимания производственного процесса, используемого в оцениваемой организации. При проведении опросов, рассмотрении и синтезировании информации, полученной из опросов и документов, члены группы руководствуются группами ключевых процессов и ключевыми практиками СММ. При определении, решает ли свои цели реализация групп ключевых процессов в организации, группа использует профессиональную оценку 3. Если обнаружены четкие расхождения между ключевыми практиками СММ и процессами организации, оценивающая группа должна документировать обоснования своей оценки этой группы ключевых процессов.
Рис. 4.1. Общие шаги при проведении внутренних и внешних оценок производственного процесса
3 Эти оценки могут проводиться и без получения полной информации, если ее сбор затрагивает вопросы конфиденциальности или безопасности организации.
В конце своего визита группа оценки составляет список полученных результатов (шаг 5), определяющий сильные и слабые стороны производственного процесса организации. При внутренней оценке производственного процесса эти данные становятся основанием для рекомендаций по усовершенствованию производственного процесса, при внешней оценке – включаются в анализ рисков, выполняемый организацией-заказчиком.
В заключение группа оценки подготавливает профиль групп ключевых процессов (шаг 6), в котором показаны области организации, удовлетворяющие и не удовлетворяющие целям групп ключевых процессов. Группа ключевых процессов может считаться удовлетворительной, но все же иметь замечания по своей реализации, если эти замечания не выявляют крупных проблем, препятствующих достижению каких-либо целей данной группы ключевых процессов.
Ниже приведен краткий список общих черт внутренней и внешней оценок производственного процесса:
посещение организации опирается на результаты опросного листа для выявления уровня зрелости;
при исследовании организации группа оценки руководствуется моделью СММ;
результаты оценки определяют сильные и слабые стороны производственного процесса, выражаясь в терминах групп ключевых процессов СММ;
составляется профиль, основанный на анализе возможности достижения целей групп ключевых процессов;
результаты оценки, выраженные полученными результатами и профилем групп ключевых процессов, представляются соответствующей аудитории.
4.2. Различия между внутренними и внешними оценками производственного процесса
Несмотря на эти сходства, результаты внутренней и внешней оценки могут расходиться даже в случае успешного применения одного и того же метода. Одной из причин этого является то, что объем внутренней и внешней оценки может варьироваться. Во-первых, сначала необходимо определить исследуемую организацию. В случае крупной компании возможно несколько различных определений «организации». При определении границ организации можно брать за основу общее высшее руководство, общее географическое расположение, общую предметную область или другие соображения. Во-вторых, даже в случае одной и той же организации объем оценки может зависеть от совокупности выбранных проектов. Например, сначала подразделение компании может пройти внутреннюю оценку, а оценивающая группа, соответственно, будет опираться на данные, полученные в рамках этого подразделения. Впоследствии линия продуктов данного подразделения может подвергаться внешней оценке и оценивающая группа будет оперировать данными, полученными в гораздо более узких рамках. Сравнение этих результатов без понимания контекста оценок было бы весьма затруднительным.
Внутренние и внешние оценки производственного процесса отличаются по своим мотивам, задачам, последствиям и принадлежности результатов. Эти факторы приводят к существенным различиям в динамике и объеме опросов, собираемой информации и формулировке результатов. Существенные различия этих методов выявляются также при детальном изучении применяемых процедур. Обучение проведению внутренних оценок не может подготовить группу к выполнению внешних оценок, и наоборот.
Внутренние оценки производственного процесса проводятся в открытой среде, готовой к сотрудничеству. Их успех зависит от совместного желания руководства и профессиональных сотрудников улучшить свою организацию. Задачи оценок заключаются в том, чтобы устранить существующие проблемы и помочь менеджерам и инженерам усовершенствовать организацию. Хотя при этом ценность опросного листа сохраняется, благодаря концентрации внимания оценивающей группы на вопросах уровня зрелости, акцент работы по оценке смещается на системные и бессистемные опросы, являющиеся основными инструментами для понимания производственного процесса организации. Кроме выявления стоящих перед организацией проблем производственного процесса, наиболее ценными результатами внутренней оценки являются концентрация внимания всего персонала на производственном процессе, а также мотивация и энтузиазм при выполнении плана корректирующих действий.
С другой стороны, внешние оценки производственного процесса выполняются в среде, более ориентированной на аудит. Их задача связана с финансовыми аспектами, поскольку рекомендации группы влияют на выбор подрядчика или на установление премиальных выплат. Акцент при этом делается на документированном аудиторском отчете, который раскрывает производственный процесс, фактически реализованный в организации. Однако это не означает невозможности сравнения результатов внутренней и внешней оценок производственного процесса. Поскольку оба метода основаны на модели СММ, точки сравнения и различий должны быть очевидны и объяснимы.
4.3. Другие способы использования CMM при усовершенствовании производственного процесса
Для групп инженерии производственного процесса или тех, которые пытаются улучшить свой процесс, модель СММ особенно ценна в областях планирования действий, реализации планов действий и определения процессов. При планировании действий члены группы инженерии производственного процесса, вооруженные знанием проблем своего процесса и бизнес-среды, могут сравнить используемые практики с целями групп ключевых процессов СММ. При этом ключевые практики следует проверять относительно корпоративных целей, приоритетов руководства, уровня выполнения практики, корпоративного значения реализации каждой практики и совместимости практики с корпоративной культурой.
Затем группа инженерии производственного процесса должна определить необходимые усовершенствования процесса и способы внесения изменений, а также добиться необходимого одобрения со стороны заинтересованных лиц. В этой работе модель СММ обеспечивает исходный пункт для обсуждения усовершенствования процесса и помогает сгладить несопоставимые предложения, касающиеся общепринятых практик проектирования ПО. При реализации плана действий модель СММ и ее ключевые практики могут использоваться группами для создания частей рабочего плана действий и для определения производственного процесса.
ГЛАВА 5. БУДУЩИЕ НАПРАВЛЕНИЯ РАЗВИТИЯ СММ
Достижение более высоких уровней зрелости производственного процесса является постепенным и требует от организации долгосрочных обязательств по непрерывному усовершенствованию процесса. На построение фундамента для непрерывного усовершенствования производственного процесса и внедрение соответствующей культуры организации-разработчики могут затратить более 10 лет. Хотя подобная десятилетняя программа усовершенствования процесса кажется чуждой для большинства американских компаний, именно такой объем работ требуется для построения зрелых организаций-разработчиков. Этот срок согласуется с опытом в других отраслях, таких, как американская автомобильная промышленность, которая добилась значительных достижений в области зрелости производственного процесса [Gabor 90].
5.1. Что находится вне области рассмотрения CMM
Модель СММ не является панацеей [Brooks 87] и не включает в себя все вопросы, значимые для успешных проектов. Например, в настоящее время СММ не рассматривает опыт в конкретных предметных областях, не пропагандирует конкретных технологий разработки и не содержит рекомендаций по выбору, найму, мотивации и сохранению компетентных сотрудников. Эти вопросы жизненно важны для успеха проекта и некоторые из них были проанализированы в другом контексте [Curtis 90]. Однако они не были интегрированы в СММ. Модель СММ была специально разработана с намерением создать упорядоченную, дисциплинированную структуру, внутри которой можно решать проблемы управления разработкой и инженерии процесса.
5.2. Ближайшие задачи
Учебные материалы и курсы по СММ должны представляться на крупных конференциях и семинарах в США, поддерживая среди специалистов программной отрасли должный уровень осведомленности о модели СММ и связанных с ней продуктах. Для включения в СММ должны быть разработаны и/ или пересмотрены новые инструменты (например, опросный лист для выявления уровня зрелости), а также программы обучения внутренней и внешней оценке производственного процесса.
В ближайшем будущем развитие СММ будет ориентировано на создание адаптированных версий модели, таких как СММ для малых проектов и/или малых организаций. Модель СММ версии 1.1 выражена нормативными практиками крупных организаций, работающих по государственным контрактам, и эти практики должны быть адаптированы к потребностям организаций, отличающихся от этого шаблона.
5.3. Долговременные задачи
В течение следующих нескольких лет будет продолжено расширенное тестирование модели СММ путем ее использования во внутренних и внешних оценках производственных процессов. По мере необходимости будут разрабатываться и пересматриваться продукты на основе СММ и учебные материалы по модели. СММ является живым документом, который будет совершенствоваться, но ожидается, что его версия 1.1 останется базовой линией, по крайней мере, до 1996 года. Это обеспечит разумный и реалистичный баланс между необходимостью в стабильности модели и потребностью в ее непрерывном усовершенствовании.
В следующей, второй версии СММ основное внимание будет уделено улучшению общей модели. Хотя пересмотру могут подвергнуться все уровни модели, основной акцент будет сделан на уровнях 4 и 5. В настоящее время группы ключевых процессов уровней 2 и 3 практически полностью определены. Поскольку по оценкам лишь немногие организации находятся на уровнях 4 и 5 [Humphrey 91a, Kitson 92], о характеристиках таких организаций известно немного. По мере сотрудничества SEI с организациями, пытающимися понять уровни 4 и 5 и достигнуть их, практики этих уровней будут уточняться. Модель СММ также может стать многомерной, объединяя вопросы технологии и человеческих ресурсов.
Институт SEI сотрудничает с Международной организацией по стандартизации (ISO) в работе по созданию международных стандартов для внутренней и внешней оценок производственного процесса и его усовершенствования. Развитие стандартов ISO повлияет на СММ версии 2, а разработки SEI в области процессов будут влиять на работу ISO.
5.4. Заключение
Концепция непрерывного усовершенствования применяется к модели зрелости и ее практикам так же, как и к производственному процессу. Потенциальное влияние изменений СММ на сообщество разработчиков ПО будет тщательно учитываться, но сама модель СММ, опросный лист для выявления уровня зрелости, методы внутренней и внешней оценки производственного процесса будут продолжать развиваться по мере накопления опыта в усовершенствовании производственных процессов. Институт SEI намерен продолжить это развитие в тесном сотрудничестве с отраслевыми, государственными и академическими организациями.
Модель СММ обеспечивает концептуальную структуру для упорядоченного и последовательного усовершенствования процессов управления и разработки программных продуктов. Она не гарантирует успешного создания программных продуктов или адекватного решения всех проблем в области инженерии разработки ПО. СММ определяет практики зрелого производственного процесса и приводит примеры практических (а в некоторых случаях – наиболее современных) достижений, но не является исчерпывающей или обязательной. СММ определяет характеристики эффективного производственного процесса, однако зрелая организация должна рассматривать все вопросы, значимые для успеха проекта, включая связанные с персоналом, технологией и производственным процессом.