Менеджмент процессов'.
• содержание организационных процессов;
• определение организационных процессов;
• организация обучения;
• организация преобразования (изменений) процессов;
• организация инноваций и расширений;
• планирование проекта;
• мониторинг и контроль процессов проекта;
• управление соглашениями с поставщиками;
• интегрированное управление процессами и продуктами проекта;
• управление рисками;
• интеграция команды разработчиков;
• интегрированное управление поставщиками;
• количественное управление проектом;
— инженерия (технология):
• управление требованиями;
• разработка требований;
• технические решения;
• интеграция продукта;
• верификация;
• валидация (аттестация, утверждение);
— поддержка:
• управление конфигурацией;
• обеспечение качества процессов и продуктов;
• измерение и анализ процессов и продуктов;
• анализ и принятие решений на изменения;
• организация окружения для интеграции;
• анализ причин и разрешение проблем (устранение дефектов). В пяти приложениях приводятся:
А — состав использованных литературных источников и документов, в котором, однако, не упоминаются стандарты ISO;
В — сокращения;
С — глоссарий на основе терминологии ISO, применяемой только в четырех стандартах ISO 9000, ISO 12207, ISO 15504:1-9, ISO 15288;
D — описания требований и предложений для формирования компонентов модели по уровням зрелости;
Е — список участников разработки CMMI — проекта.
В этой модели внимание акцентировано на организационных процессах, на планировании, управлении и контроле процессов реализации проектов программных средств, на разработке и управлении требованиями к программным продуктам. Ниже представлены примеры детализации в CMMI некоторых из них.
Планирование проекта в этой, так же как и во второй, модели включает:
— оценку возможного размера — масштаба программного продукта;
— оценку сложности функций и характеристик проекта ПС;
— определение модели и этапов жизненного цикла комплекса программ;
— технико-экономическое обоснование проекта — определение стоимости, трудоемкости и длительности ЖЦ ПС;
— разработка поэтапного графика работ и бюджета проекта;
— анализ, идентификация и оценка проектных рисков;
— планирование и управление документированием процессов и продуктов в ЖЦ проекта ПС;
— планирование и распределение технических и людских ресурсов по этапам ЖЦ ПС;
— планирование обеспечения знаний и квалификации коллектива специалистов для реализации проекта;
— обобщение и анализ совокупности планов проекта ПС;
— согласование работ и ресурсов по этапам ЖЦ разработчиком с заказчиком проекта ПС;
— документирование плана работ и утверждение его менеджером разработчиков проекта.
Процессы разработки требований к программному продукту аналогичны процессам в обеих моделях и включают:
— выявление реальных потребностей заказчика и пользователей к функциям и характеристикам программного продукта;
— разработку и согласование между заказчиком и разработчиком исходных, базовых требований к функциям программного продукта;
— определение доступных ресурсов и ограничений проекта комплекса программ;
— декомпозицию базовых исходных требований к функциям ПС в набор требований к компонентам и тестам комплекса программ;
— формализацию требований к интерфейсам между компонентами, с операционной и внешней средой;
— разработку концепции программного продукта и сценариев его использования;
— разработку требований к обобщенным характеристикам функциональной пригодности и использованию функций программного продукта по назначению.
Управление требованиями в обеих моделях включает:
— достижение однозначного понимания требований к проекту ПС заказчиком и разработчиками;
— получение заказчиком от разработчиков обязательств выполнить все его требования к программному продукту;
— согласованное между заказчиком и разработчиком управление изменениями требований к проекту ПС;
— обеспечение прослеживания корректности изменений от общих требований к проекту ПС до требований к компонентам и частным процессам;
— выявление и идентификация несоответствий между процессами разработки проекта и требованиями заказчика.
Второй вариант CMMI представлен документом: Capability Maturity Model Integration for Systems Engineering /Software Engineering /Integrated Product and Process Development, Version 1.1, Staged Representation (CMMI-SE/SW/IPPD, VI.1, Staged) — Интегрированная модель оценивания зрелости инженерии сложных систем / программной инженерии / интегрированных продуктов и процессов разработки — поэтапное представление. Модель базируется на сохранении концепции пяти уровней зрелости СММ. Состав процессов практически повторяет приведенный выше для первого варианта модели, в несколько иной последовательности и с относительно небольшими дополнениями. Первый уровень отличается значительной неопределенностью состава и содержания процессов в различных относительно простых проектах, поэтому он в документе не описан и не комментируется. Поэтому при уточнении и детализации содержания процессов в поэтапном варианте CMMI рекомендуется ограничиваться четырьмя (2-й — 5-й) основными уровнями:
— второй уровень — формализует базовое управление проектами:
• управление требованиями;
• планирование проекта;
• мониторинг и контроль проекта;
• управление соглашениями с поставщиками;
• измерение и анализ процессов и продуктов;
• обеспечение качества процессов и продуктов;
• управление конфигурацией;
— третий уровень — содержит стандартизацию основных процессов:
• разработка требований;
• технические решения;
• интеграция продукта;
• верификация;
• валидация (аттестация);
• содержание организационных процессов;
• определение организационных процессов;
• организация обучения;
• интегрированное управление процессами и продуктами проекта;
• управление рисками;
• интеграция команды разработчиков;
• интегрированное управление поставщиками;
• анализ и разрешение проблем (устранение дефектов);
• организация окружения для интеграции;
— четвертый уровень — определяет количественное управление:
• организация представления качества процессов;
• количественное управление всем проектом и ресурсами;
— пятый уровень — оптимизационный, непрерывное совершенствование:
• организация, инновации, количественное управление процессами и обеспечением ресурсами;
• анализ причин дефектов, совершенствование качества и управления процессами и продуктами.
Приложения во втором варианте модели подобны по составу приведенным выше приложениям для первой модели. Рекомендуется на каждом более высоком уровне зрелости применять все процессы предыдущих нижних уровней. В обоих вариантах модели каждый, выделенный выше базовый процесс комментируется подробными рекомендациями для его практической реализации, которые содержат унифицированные по структуре описания объемом около 20—30 страниц:
— общие цели процесса, которые должны быть достигнуты;
— вводные замечания и общее описание функций процесса;
— специфические цели процесса;
— менеджмент процесса;
— разработка требований к процессу;
— взаимодействие и интерфейсы с другими процессами;
— практические цели — требуемые результаты действий процесса;
— планирование действий в определенном процессе;
— анализ и валидация (утверждение) результатов реализации процесса;
— мониторинг и контроль выполнения процесса.
Эти рекомендации по объему, содержанию и полноте описаний базовых процессов подобны ряду стандартов профиля ЖЦ ПС. Упорядочение и оценка полноты используемых процессов в соответствии с уровнями зрелости позволяет устанавливать производственный потенциал предприятий — разработчиков программных продуктов по прогнозируемому качеству процессов и результатов их деятельности и готовности к сертификации на соответствие определенному уровню зрелости модели CMMI — 1.1.
Особое внимание в моделях CMMI уделяется процессам менеджмента проекта ПС. Эти требования и процессы моделей практически соответствуют регламентированным и детализированным рекомендациям в стандартах ISO 9001:2000, ISO 12207 и в основных компонентах профиля стандартов жизненного цикла сложных ПС. Требованиям к процессам в функциональных разделах 4—8 стандартов ISO 9001, ISO 9004, ISO 90003 может быть сопоставлен адекватный по содержанию ряд разделов в моделях CMMI — рис. 3.2. Общность процессов и требований состоит в подобии: состава, терминологии, структуры, перечня основных рекомендуемых процессов управления, планирования, учета доступных ресурсов, реализации процессов программной инженерии, оценивания и организации специалистов.
С точки зрения поддержки и регламентирования полного жизненного цикла крупных проектов программных средств к недостаткам моделей CMMI относительно профиля существующих стандартов ISO можно отнести следующие:
— не все процессы предусмотрены в составе процессов моделей CMMI — 1.1, которые развиваются и детально комментируются для их реализации в стандартах ISO 9004:2000 и ISO 90003:2004, а также в профиле стандартов ISO;
— не отражены особенности системной инженерии и международные стандарты, регламентирующие процессы жизненного цикла сложных систем ISO 15288:2002 и ISO 19760:2003;
— при анализе процессов обеспечения качества используется ряд традиционных характеристик систем и программных продуктов, которые применяются в сложных проектах, однако не описаны и не комментируются базовые международные стандарты, систематизирующие и регламентирующие качество программных средств — ISO 9126:1-4, ISO14598:1-6, ISO 15939;
— отсутствуют описания характеристик и конкретных процессов обеспечения информационной и функциональной безопасности программных продуктов и ссылки на многочисленные стандарты в этой области;
— не отражены регламентированные интерфейсы Открытых систем на взаимодействие программных компонентов, а также с операционной и внешней средой, в соответствии со стандартами — ISO 9945:1-4;
— документирование процессов и продуктов ЖЦ ПС комментируется только по мере их реализации, и не представлены обобщенные требования к технологической и эксплуатационной документации на программный продукт в соответствии со стандартами — ISO 9294, ISO 15910, ISO 18019.
Для определения представленных выше уровней зрелости процессов обеспечения жизненного цикла ПС разработан и первоначально утвержден в 1998 году обширный технический отчет ISO 15504 — Оценка и аттестация зрелости процессов создания и сопровождения ПС и систем, состоящий из девяти частей и множества приложений. В нем изложены модель зрелости СММ и восемь базовых принципов программной инженерии на основе стандарта ISO 9000:2000 (см. лекцию 1). Затем в ISO этот документ претерпел коренную переработку, сокращение, упрощение структуры и содержания, при полном сохранении целей и концепции, и утвержден как стандарт в составе пяти частей (см. Приложение 1). Стандарт ISO 15504:1-5:2003-2006 регламентирует оценку и аттестацию зрелости процессов создания, сопровождения и совершенствования программных средств и систем, выполняемых предприятиями:
— для установления состояния собственных технологических процессов и их совершенствования;
— для определения пригодности собственных процессов для выполнения определенных требований или классов требований заказчиков;
— с целью его пригодности для выполнения определенных договоров с заказчиками ПС и систем.
Стандарт способствует: самоаттестации зрелости предприятий, обеспечению адекватного управления аттестуемыми процессами, определению профиля рейтингов процессов и подходит к любым сферам применения и размерам ПС и систем. Применение стандарта направлено на выработку предприятиями и специалистами культуры постоянного совершенствования зрелости технологий обеспечения ЖЦ ПС, отвечающих бизнес-целям проектов и оптимизации использования доступных ресурсов. Аттестация зрелости процессов предприятий обеспечивает возможность их сопоставления и выбора, предпочтительных для определенных проектов: для заказчиков, покупателей, пользователей программных продуктов и систем — способность определять текущую и потенциальную зрелость процессов жизненного цикла у предприятия-поставщика;
— для поставщиков и разработчиков — способность определять текущую и потенциальную зрелость собственных процессов жизненного цикла ПС и систем, области и приоритеты усовершенствования процессов;
— для аттестаторов зрелости — основу для проведения и совершенствования процессов аттестации.
Аттестация в стандарте рассматривается в двух аспектах: для усовершенствования процессов ЖЦ ПС и систем конкретного предприятия и для определения соответствия декларированной зрелости процессов обеспечения проекта или предприятия реальным используемым процессам. Это отражено в следующих пяти частях стандарта ISO 15504:1-5:2003-2006.
Часть 1 — Концепция и словарь — содержит общую информацию о процессах аттестации зрелости ПС и систем и рекомендации по использованию частей стандарта. Изложены общие требования к аттестации, терминология, структура и область применения остальных частей стандарта.
Часть 2 — Выполнение (производство) аттестации — включает детальные требования к проведению процессов аттестации, как основы для совершенствования и определения уровня зрелости технологических процессов обеспечения ЖЦ ПС и систем. Документ определяет процессы выполнения аттестации, модели рекомендуемых процессов аттестации и верификации процессов, с тем чтобы они были объективными, содержательными и репрезентативными.
Часть 3 — Руководство по производству аттестации — содержит обзор технологии выполнения процессов аттестации зрелости и интерпретации реализации требований. В нем отражены: исполнение аттестации; измерительные средства для определения процессов зрелости; выбор и применение средств аттестации; оценка компетентности аттестаторов; верификация соответствия аттестации декларированным требованиям. Средства аттестации могут использоваться предприятиями при планировании, менеджменте, мониторинге, контроле и усовершенствовании программных продуктов и систем, при их приобретении, разработке, применении и сопровождении.
Часть 4 — Руководство пользователей для процессов усовершенствования и определения зрелости процессов по этим двум аспектам. Рекомендуется ряд шагов, которые включают: применение результатов процессов аттестации; постановка целей аттестации зрелости; определение исходных данных для аттестации; оценка возможного снижения результирующих рисков; шаги по усовершенствованию процессов; шаги по определению уровня зрелости; сравнение результатов анализа аттестации с требованиями.
Часть 5 — Образец модели процессов аттестации на соответствие требованиям, представленным в части 2. Обширный документ (162 стр.) содержит примеры практического применения предыдущих частей стандарта для организации, оценивания и совершенствования аттестации зрелости процессов жизненного цикла для различных областей использования, проектов программных средств и предприятий.
При практической реализации проектов и обеспечении жизненного цикла сложных ПС разработчикам и поставщикам может быть трудно определить и выделить для применения преимущества моделей CMMI. В зависимости от традиций предприятия и особенностей крупного проекта ПС зачастую целесообразно использовать как основной полный профиль стандартов ISO, а для оценивания заказчиками уровня зрелости менеджмента, организационного и технологического обеспечения проектов ПС применять конкретные рекомендации CMMI. Эти рекомендации могут эффективно использоваться при сертификации качества процессов на предприятиях, обеспечивающих ЖЦ ПС как альтернатива или наряду с сертификацией по комплексу стандартов менеджмента ISO 9000, в зависимости от особенностей проекта и требований заявителя на сертификацию программного продукта или технологии обеспечения его жизненного цикла.