Лекция 2. Модель CMMI.

advertisement
Тема 2
Модель CMMI
S_romanenko@mail.ru
Пятиуровневая интегрированная модель совершенствования
потенциальных возможностей (Capability Maturity Model
Integrated for Software – СММI).
Назначение модели. Базовые понятия модели: структура
модели, уровни зрелости, ключевые области процесса, цели и
ключевые приемы. Распределение ключевых областей
процесса по уровням зрелости. Концепция зрелости процесса.
Оценивание уровня зрелости.
1
Институт технологии программирования
Software Engineering Institute (SEI)
• Научно-исследовательский центр с государственным
финансированием при университете Карнеги-Меллон
• Основан в 1984 году
• Собрал воедино специалистов по разработке ПО
Стратегическая цель:
обеспечить ведущие позиции в технологии
программирования для улучшения качества систем,
зависящих от программного обеспечения
2
Результаты деятельности
SEI
•
1987 г. - отчет “Метод для определения
способностей подрядчиков в области
технологии программирования”
•
1989 г. - модель совершенствования
способностей к разработке ПИ (CMM)
•
2000-2002 г.г. – интегрированная модель
совершенствования способностей к
разработке ПИ (CMMI)
3
Особенности модели CMM
• Задает совокупность базовых технологических
действий и умений, которые необходимы и
достаточны для предсказуемого и управляемого
процесса создания ПИ, и указывает путь для
непрерывного улучшения этого процесса
• Нацелена только на разработку ПИ
• Не определяет, как выполнять разработку ПИ
(методы, технологии и процедуры не заданы)
• Не определяет, с помощью каких инструментов
следует выполнять разработку ПИ
4
Структура модели CMM
Уровни зрелости
Содержат
Характеризуют
Ключевые области процесса
Способности
Организуются через
Достигают
Цели
Определяют
Реализаци
и процесса
Общие черты
Содержат
Ключевые приемы
Описывают
Правила, условия
5
Концепция зрелости процесса
• Степень зрелости процесса – степень, в какой на
данном предприятии определен, управляется,
измеряется, контролируется и совершенствуется
процесс создания ПИ
• Способность процесса - диапазон ожидаемых
результатов, которых можно достичь, если
следовать процессу
• Производительность процесса - мера
фактической результативности, достигнутой
через следование процессу (производительность
создания ПИ, продолжительность ЖЦ ПИ,
уровень качества разрабатываемых ПИ)
6
Уровни зрелости процесса по CMM
1. Начальный
2. Повторяемый
3. Определенный
4. Управляемый
5. Оптимизируемый
7
2
Ключевые области
второго уровня зрелости процесса
•
Requirements Management - Управление требованиями
•
Software Project Planning - Планирование проекта
•
Software Project Tracking and Oversight - Отслеживание и
контроль проекта
•
Subcontractor Management - Управление субподрядчиками
•
Software Quality Assurance - Обеспечение качества
•
Software Configuration Management - Управление
конфигурацией
8
2
Управление требованиями
Цель ключевой области:
обеспечение возможности установления
единого с заказчиком понимания
требований к разрабатываемому ПИ и его
компонентам
9
2
Планирование проекта
Цель ключевой области:
создание условий для составления реалистичного
проектного плана (эталонной модели хода
выполнения проекта) и управления им
Результат: набор согласованных планов
выполнения проекта ПИ
10
2
Отслеживание проекта
Цель ключевой области:
создание условий для установления надежной
отображаемости хода выполнения проекта
Результат: руководители всех уровней могут
эффективно управлять выполнением проекта на
всех этапах ЖЦ ПИ
11
2 Управление субподрядчиками
Цель ключевой области:
обеспечение правильного выбора субподрядчиков
и эффективного управления их деятельностью по
разработке ПИ
Содержит в себе элементы всех ключевых
областей второго уровня зрелости по отношению к
субподрядчику
12
2
Обеспечение качества
Цель ключевой области:
обеспечение концептуальной целостности всех
компонентов ПИ и обеспечение требуемой
эффективности и качества разрабатываемого ПИ
Необходимо иметь специальный план по
обеспечению качества, согласованный с
остальными планами
13
2
Управление конфигурацией
Цель ключевой области:
обеспечение единой системы идентификации
компонентов ПИ, контроля за изменениями и
управление изменениями компонентов.
Управление конфигурацией осуществляется на
всех фазах ЖЦ ПИ
14
3
Ключевые области
третьего уровня зрелости процесса
•
Organization Process Focus - Нацеленность процесса
•
Organization Process Definition - Определение процесса
•
Training Program – Повышение квалификации
•
Integrated Software Management – Интегрированное
управление
•
Software Product Engineering – Технология разработки ПИ
•
Intergroup Coordination – Межгрупповая координация
•
Peer Reviews – Обзоры с коллегами
15
3
Нацеленность процесса
Цель ключевой области:
создание определенной организационной
дисциплины во всех видах деятельности,
которая обусловливает способности организации
по разработке ПИ
Результат: набор компонентов процесса для
его определения
16
3
Определение процесса
Цель ключевой области:
определение, внедрение и постоянное улучшение
выделенного набора компонентов процесса, который
обеспечивает его эффективность по всем проектам
Результат: перечень видов деятельности, набор
процедур, стандартов и других ограничений, которые
описываются в книге процесса для их однозначного
понимания и строгого соблюдения
17
3
Повышение квалификации
Цель ключевой области:
создание условий для развития навыков и знаний у
исполнителей проектов для более эффективного
выполнения поставленных перед ними задач
18
3
Интегрированное управление
Цель ключевой области:
соединение деятельности по разработке ПИ и
управлению в единый согласованный процесс,
исходя из компонентов процесса второго и
третьего уровней зрелости предприятия
19
3
Технология разработки
Цель ключевой области:
Определение, внедрение и постоянное
следование внедренной технологии
разработки ПИ
20
3
Межгрупповая координация
Цель ключевой области:
создание средств для эффективного взаимодействия
отдельных групп разработчиков, выполняющих разные
проекты ПИ, для повышения повторного использования
накопленных в организации результатов и передовых
технологических приемов.
Межгрупповая координация должна планироваться,
координироваться и управляться.
21
3
Обзоры с коллегами
Цель ключевой области:
обеспечение условий для раннего обнаружения и
наиболее эффективного устранения ошибок и дефектов,
обнаруженных в ПИ
Следствие товарищеских обзоров - изучение причин,
вызвавших дефекты, и выработка эффективных
мероприятий по предотвращению выявленных причин
в будущем
22
4
Ключевые области
четвертого уровня зрелости процесса
•
Quantitative Process Management Количественное управление процессом
•
Software Quality Management Управление качеством
23
4 Количественное управление процессом
Цель ключевой области:
обеспечение возможности управления
эффективностью процесса по реальным
данным – метрикам процесса
Определяются реальные отклонения текущих
метрик процесса от значений целевых метрик
устойчивого процесса и на основе анализа причин
вырабатываются требуемые управляющие
воздействия для обеспечения достижения
значений целевых метрик
24
4
Управление качеством
Цель ключевой области:
создание возможности управления достижением
целевых количественных показателей по качеству
ПИ.
Необходимо иметь план управления качеством
25
5
Ключевые области
пятого уровня зрелости процесса
•
Defect Prevention - Предотвращение дефектов
•
Technology Change Management - Управление
изменениями технологии
•
Process Change Management - Управление
изменениями процесса
26
5
Предотвращение дефектов
Цель ключевой области:
создание условий для эффективного выявления
причин возникновения дефектов в прошлом для
предотвращения возникновения подобных
дефектов в будущем (предотвращение дефектов,
а не исправление ошибок!)
27
5
Управление изменениями технологии
Цель ключевой области:
обеспечение установленного порядка в определении
эффективности передовых технологий и возможности
управления их внедрением на предприятии
При внедрении новых технологий должно
отслеживаться соотношение преимуществ от их
применения и понесенных затрат на их внедрение
28
5
Управление изменениями процесса
Цель ключевой области:
обеспечение возможности систематического выявления
свойств процесса, требующих совершенствования, и
управлении совершенствованием последних.
Самоусовершенствование процесса должно происходить
под управлением самого процесса так, чтобы процесс
постоянно двигался в сторону все большей своей
оптимизации.
29
Оценивание достижимости уровней
зрелости
Уровень зрелости считается достигнутым, если в
результате оценивания предприятия по 10балльной шкале дипломированными внешними
экспертами окажется, что все ключевые области
данного уровня получили экспертную оценку не
ниже 7
Оценивание каждого компонента процесса
проводится по трем факторам:
• подход;
• уровень внедрения;
• результат.
30
Оценка фактора “Подход”
Определяет, как данный компонент процесса воспринимается
непосредственно теми, кого он касается
• 0 (плохо) –администрация не видит необходимости
внедрения процесса; у предприятия нет возможности или
желания; данная деятельность неочевидна;
• 2 (слабо) – администрация начала признавать необходимость;
начали создаваться необходимые условия для ведения данной
деятельности; некоторые подразделения предприятия могут
вести данную деятельность;
• 4 (посредственно) – имеется большое, но не
всеохватывающее желание руководителей всех уровней;
имеется план введения данной деятельности в практику;
реализованы несколько из необходимых условий для ведения
данной деятельности;
31
Оценка фактора “Подход” (продолжение)
6 (условно удовлетворительно) – сильное желание
руководства, причем некоторые руководители становятся
активными проводниками данной деятельности; в нескольких
подразделениях предприятия наблюдается внедрение данной
деятельности; имеются в наличии все необходимые условия для
ее ведения;
• 8 (удовлетворительно) – полное желание руководства,
большинство руководителей выступают как активные
проводники данной деятельности; деятельность стала составной
частью процесса; выполненные необходимые условия делают
легким ведение данной деятельности на практике;
• 10 (отлично) – руководство взяло на себя ведущую роль при
огромном желании; превосходство данного предприятия
признается за его пределами
•
32
Оценка фактора
“Уровень внедрения”
Характеризует то, насколько хорошо данный компонент
процесса распространен на предприятии.
• 0 (плохо) – никакое подразделение не ведет данную
деятельность; никакое подразделение не проявляет к ней
интереса;
• 2 (слабо) – фрагментное использование от случая к случаю;
несистематическое использование; имеет распространение в
некоторой части предприятия; ограниченный контроль над
реализацией деятельности;
• 4 (посредственно) – более систематическое использование;
имеет распространение в большей части предприятия;
контроль и проверка реализации деятельности
осуществляется в нескольких частях предприятия;
33
Оценка фактора
“Уровень внедрения” (продолжение)
• 6 (условно удовлетворительно) – деятельность внедрена
в большей части предприятия; в основном наблюдается
систематическое использование по всему предприятию;
контроль и проверка реализации деятельности выполняется
в большинстве подразделений;
• 8 (удовлетворительно) – деятельность внедрена практически
на всем предприятии; систематическое использование
практически на всем предприятии; имеет распространение в
некоторой части предприятия; контроль и проверка
реализации деятельности осуществляется практически на
всем предприятии;
• 10 (отлично) – повсеместное и систематическое выполнение
на всем предприятии в течение заметного интервала времени;
контроль и проверка реализации деятельности
осуществляется практически на всем предприятии
34
Оценка фактора “Результат”
Характеризует то, как сказывается данная
деятельность на практических результатах
предприятия.
• 0 (плохо) – безрезультатно;
• 2 (слабо) – получены отдельные
разрозненные результаты; несистематические
результаты; некоторые свидетельства о
результативности деятельности для некоторой
части предприятия;
• 4 (посредственно) – получены
систематические и положительные результаты
для нескольких подразделений предприятия;
несистематические результаты для остальных
35
подразделений;
Оценка фактора “Результат” (продолжение)
• 6 (условно удовлетворительно) – имеются
положительные результаты, допускающие измерение
в большей части предприятия; имеются
систематические положительные результаты в
течение заметного времени во многих
подразделениях предприятия;
• 8 (удовлетворительно) – получены положительные
результаты, допускающие измерение практически на
всем предприятии; получены систематические
положительные результаты в течение заметного
времени практически на всем предприятии;
• 10 (отлично) – наблюдается превышение
установленных требований; имеются
систематические результаты мирового уровня; другие
36
разработчики перенимают опыт
Развитие стандартов СММ
Название стандарта
Описание
System Engineering
CMM (SE-CMM)
Ориентирован на вопросы системного инжиниринга – разработку
продуктов (анализ требований, проектирование систем продукта
и их интеграция) и их производство (планирование
производственных линий и функционирование)
Trusted CMM (T-CMM)
Предназначен для обслуживания программных систем с особыми
требованиями или защищенных, которые требуют гарантии
высокого качества ПО
System Security
Engineering CMM
(SSE-CMM)
Сфокусирован на аспектах безопасности программной
инженерии, обеспечивает безопасный процесс разработки, в том
числе и безопасность членов команды
People CMM (P-CMM)
Рассматривает вопросы развития персонала в софтверных
организациях
Software Acquisition
CMM (SA-CMM)
Охватывает вопросы приобретения программных продуктов у
внешних организаций
Integrated Product
Development CMM
(IPD-CMM)
Служит средой для интеграции усилий по разработке на всех
этапах жизненного цикла и со стороны каждого отдела компании
37
Особенности модели CMMI
• Является развитием модели CMM
• Включает три модели: CMMI for Development (CMMIDEV), CMMI for Services (CMMI-SVC) и CMMI for
Acquisition (CMMI-ACQ)
• Задает два способа описания модели:
 Уровневое (поэтапное) представление модели
(Staged Representation ) – элементы модели выстраиваются по
уровням зрелости
 Непрерывное представление модели (Continuous
Representation) – ориентировано на уровни возможностей и
разбивает элементы модели по функциональным областям
38
Поэтапное представление модели процесса
Уровни зрелости:
1.
2.
3.
4.
5.
Выполнимый
Управляемый
Определенный
Управляемый количественно
Оптимизируемый
39
Непрерывное представление модели процесса:
области процессов
 Категория «Управление процессом»:
Категория «Управление проектом»:
Категория «Разработка»:
Категория «Поддержка»:
Нацеленность процесса
Определение процесса
Обучение персонала
Управление производительностью
Внедрение новых технологий
Планирование проекта
Отслеживание и контроль проекта
Управление субподрядчиками
Интегрированное управление проектом
Управление рисками
Создание объединенной команды
 Количественное управление проектом
Управление требованиями
Разработка требований
Разработка технических решений
Интеграция программного продукта
Верификация
Валидация
Управление конфигурацией
Обеспечение качества процесса и продукта
Измерение и анализ
Анализ и принятие решений
Организационное окружение для интеграции
40
Причинный анализ и предотвращение дефектов
Пример анкеты при оценивании
по ключевой области “Отслеживание проекта”
Используется ли документированный проектный план для
отслеживания деятельности по разработке ПИ и
подготовке отчетов о состоянии проекта?
2. Проводит ли руководство предприятия обзор и
утверждает все предложения отдельных лиц и групп по
улучшению отслеживания хода выполнения проекта, а
также контролируются ли изменения этих предложений?
3. Доводятся ли в явном виде до персонала разработчиков,
руководителей, связанных с разработкой ПИ групп
сведения об утвержденных изменениях намерений в
отношении ПИ или намерений, влияющих на
деятельность по разработке ПИ?
4. Отслеживаются ли критические компьютерные ресурсы и
предпринимаются ли действия по стабилизации хода
выполнения проектов?
1.
41
Пример анкеты (продолжение)
Отслеживаются ли трудоемкость проектов и
предпринимаются ли действия по исправлению
положения при обнаружении отклонений реальной
трудоемкости от плановой?
6. Отслеживается ли стоимость выполнения проектов и
предпринимаются ли действия по исправлению
положения при обнаружении отклонений?
7. Отслеживается ли график выполнения проектов и
предпринимаются ли действия по исправлению
положения при обнаружении отклонений от планового
графика?
8. Отслеживается ли деятельность технического характера
при выполнении проектов и предпринимаются ли
действия по исправлению положения при проявлении
рисков и непредвиденных трудностей?
5.
42
Пример анкеты (продолжение)
Отслеживаются ли на протяжении всего времени
разработки технические риски, риски по стоимости,
ресурсам и графику?
10. Осуществляется ли хранение фактических данных
измерений и данных по перепланированию деятельности
по отслеживанию проекта для использования
разработчиками и руководителями?
11. Совершают ли разработчики и руководители всех
уровней регулярные обзоры для отслеживания
продвижения в технических вопросах, планировании,
исполнении и решении проблем, соответствия их планам
разработки?
12. Проводятся ли официальные обзоры на определенных
этапах проекта ПИ, а также при начале и завершении
определенных стадий разработки для выявления
достигнутых результатов?
9.
43
Download