Заметки консультанта

Шамрай Александр Владимирович

CMMI DEV v1.3 – Управление Конфигурацией

Posted by Шамрай Александр на Ноябрь 23, 2010

Перевод Шамрай А.В.

Процессная область Поддержки уровня зрелости 2

Назначение

Назначение Управления Конфигурацией (УК) состоит в установке и поддержке целостности рабочих продуктов с использованием идентификации конфигурации, управления конфигурацией, учета состояния конфигурации и аудита конфигурации.

Вступительный комментарий

Процесс управления конфигурацией включает в себя следующие мероприятия:

  • Идентификация конфигурации выбранных рабочих продуктов, которые составляют базовую линию в заданный момент времени
  • Контроль изменений элементов конфигурации
  • Сборка или обеспечение спецификаций для сборки рабочих продуктов из системы управления конфигурацией
  • Поддержка целостности базовых линий
  • Предоставление точного состояния и данных текущей конфигурации для разработчиков, конечных пользователей и клиентов

Рабочие продукты, помещенные под управление конфигурацией, включают продукты, которые поставляются клиенту, обозначенные внутренние рабочие продукты, приобретенные продукты, инструменты и другие элементы, которые используются для создания и описания этих рабочих продуктов. (См. определение «управления конфигурацией» в глоссарии.)

Примеры рабочих продуктов, которые можно поставить под управление конфигурациями:

  • Аппаратное обеспечение и техника
  • Рисунки
  • Спецификации продукта
  • Конфигурации инструмента
  • Код и библиотеки
  • Компиляторы
  • Средства тестирования и тестовые сценарии
  • Журнал инсталляции
  • Файлы данных продукта
  • Технические публикации продукта
  • Планы
  • Пользовательские истории
  • Журнал итерации
  • Описание процесса
  • Требования
  • Архитектурная документация и дизайн
  • Планы линейки продукта, процессов и основные активы

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

См. процессную область Управление Соглашениями с Поставщиками для получения дополнительной информации о заключении соглашения с поставщиками.

Управление конфигурациями для рабочих продуктов может применяться на нескольких уровнях декомпозиции. Элементы конфигурации могут быть декомпозированы на компоненты конфигурации и единицы конфигурации. В этом процессе используется только один термин – «элемент конфигурации». Поэтому в этих практиках «элемент конфигурации» в некоторых случаях может интерпретироваться как «компонент конфигурации» или «единица конфигурации». (См. определение «элемент конфигурации» в глоссарии.)

Базовые линии обеспечивают стабильный базис для продолжающегося развития элементов конфигурации.

Примером базовой линии может быть утвержденное описание продукта, которое включает в себя соответствие версии требованиям, матрицы трассировки требований, дизайн, элементы различных процессов и документацию для конечных пользователей.

Базовые линии добавляются в систему управления конфигурацией по мере их разработки. Изменения в базовые линии и выпуски рабочих продуктов, построенных из системы управления конфигурацией, систематически контролируются и выполняется мониторинг через функции контроля конфигурации, управления изменениями и аудита конфигурации системы управления конфигурацией.

Эта область относится не только к управлению конфигурацией проектов, но и для управления конфигурацией организационных рабочих продуктов, таких как стандарты, процедуры, повторно используемые библиотеки и других общие вспомогательные активы.

Управление конфигурацией направлено на строгий контроль управленческих и технических аспектов рабочих продуктов, включая поставляемый продукт или услугу.

Эта область покрывает практики для выполнения функции управления конфигурацией и применима для всех рабочих продуктов, которые находятся под конфигурационным управлением.

Для линейки продукта, управление конфигурацией включает в себя дополнительные вопросы, связанные с предоставлением основных активов продуктов в линейке продукта и в нескольких версиях основных активов и продуктов. (См. определение «линейка продуктов» в глоссарии.)

В среде Agile, управление конфигурацией (УК) имеет важное значение в связи с необходимостью поддерживать частые изменения, частые сборки (как правило, ежедневные), несколько базовых линий и несколько рабочих пространств УК (например, для отдельных лиц, групп и даже для парного программирования). Agile команда может увязнуть, если организация не будет: 1) автоматизировать УК (например, скрипты сборки, учет состояния, проверку целостности) и 2) представлять УК как единый набор стандартных сервисов. В самом начале, команда Agile должна определить человека, который будет отвечать за обеспечение правильности реализации УК. В начале каждой итерации выполняется подтверждение целей УК. УК максимально интегрировано в ритмы каждой команды и сфокусировано на минимизацию отвлечения команды при выполнении работ. (См. «CMMI при использовании Agile подходов» в части I.)

Связанные процессы

См. процессную область Мониторинг и Контроль Проекта для получения дополнительной информации о мониторинге проекта на основе плана и управлении корректирующими действиями до закрытия.

См. процессную область Планирование Проекта для получения дополнительной информации о разработке плана проекта.

Перечень специальных целей и практик

  • СЦ 1 Установить Базовые Линии
    • СП 1.1 Идентифицируйте Элементы Конфигурации
    • СП 1.2 Установите Систему Управления Конфигурациями
    • СП 1.3 Создавайте или Выпускайте Базовые Линии
  • СЦ 2 Отслеживать и Контролировать Изменения
    • СП 2.1 Отслеживайте Изменения
    • СП 2.2 Контролируйте Элементы Конфигурации
  • СЦ 3 Установить Целостность
    • СЦ 3.1 Установите Записи Управления Конфигурацией
    • СЦ 3.2 Выполняйте Аудит Конфигурации

Специальные практики по целям

СЦ 1     Установить Базовые Линии

Базовые линии идентифицированных рабочих продуктов установлены

Практики установления базовых линий покрываются этой целью. Практики в рамках цели Отслеживать и Контролировать Изменения служат для поддержки базовых линий. Практики цели Установка Целостности описывают документирование и аудит целостности базовых линий.

СП 1.1 Идентифицируйте Элементы Конфигурации

Определите элементы конфигурации, компоненты и связанные рабочих продуктов для постановки под управление конфигурацией.

Идентификация конфигурации это выбор и спецификация следующего:

  • Продукты, поставляемые клиенту
  • Определяемые внутренние рабочие продукты
  • Приобретенные продукты
  • Инструменты и другие основные средства рабочей среды проекта
  • Другие элементы, которые используются для создания и описания этих рабочих продуктов

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

«Элемент конфигурации» это сущность, предназначенная для управления конфигурацией, которая может состоять из нескольких связанных рабочих продуктов, которые формируют базовую линию. Такая логическая группировка обеспечивает простую идентификацию и контролируемый доступ. Выбор рабочих продуктов для управления конфигурацией должен быть основан на критериях, установленных в ходе планирования.

Пример рабочих продуктов

1. Идентифицированные элементы конфигурации

Подпрактики

1. Выберите элементы конфигурации и рабочие продукты, которые составляют их, основываясь на документируемых критериях.

Пример критериев для выбора элементов конфигурации на соответствующем уровне рабочих продуктов:

  • Рабочие продукты, которые могут быть использованы двумя или более группами
  • Рабочие продукты, для которых ожидается внесение изменений с течением времени из-за ошибок или изменений в требованиях
  • Рабочие продукты, которые зависят друг от друга (т.е. изменение одного требует изменения в других)
  • Рабочие продукты, которые имеют критическое значение для успеха проекта

Примеры рабочие продуктов, которые могут быть частью элемента конфигурации:

  • Технический проект
  • Планы и процедуры тестирования
  • Результаты тестирования
  • Описание интерфейса
  • Рисунки
  • Исходный код
  • Пользовательские истории или карты историй
  • Задекларированные бизнес сценарии, бизнес логика или значение для бизнеса
  • Инструменты (например, компиляторы)
  • Описание процесса
  • Требования

2. Назначьте уникальные идентификаторы для элементов конфигурации.

3. Опишите важные характеристики каждого элемента конфигурации.

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

4. Опишите когда каждый элемент конфигурации был помещен под управление конфигурацией.

Пример критериев для определения, когда рабочий продукт может быть помещен под управление конфигурацией:

  • Рабочий продукт готов к тестированию
  • Достигнут этап жизненного цикла проекта
  • Достигнута желаемая степень контроля для рабочего продукта
  • Достигнуто ограничение стоимости и графиков
  • По требованию заинтересованных сторон

5. Определите владельца ответственного за каждый элемент конфигурации.

6. Укажите взаимосвязь между элементами конфигурации.

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

СП 1.2 Установите Систему Управления Конфигурациями

Установите и поддерживайте систему управления конфигурацией и изменениями для контроля рабочих продуктов.

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

Система управления изменениями включает в себя носители данных, процедуры и инструменты для записи и доступа к запросам на изменение.

Пример рабочих продуктов

1. Система управления конфигурациями с контролируемыми рабочими продуктами

2. Процедуры контроля доступа системы управления конфигурацией

3. База данных запросов на изменение

Подпрактики

1. Установите механизмы для управления несколькими уровнями контроля.

Уровень контроля, как правило, выбирается в зависимости от целей проекта, рисков и ресурсов. Уровни управления могут меняться в зависимости от жизненного цикла проекта, типа разрабатываемой системы и требований конкретного проекта.

Пример уровней управления:

  • Неконтролируемый: Кто угодно может внести изменения.
  • Рабочий процесс: Авторы контролируют изменения.
  • Контролируемый: Уполномоченный орган разрешает и контролирует изменения, и соответствующие заинтересованные стороны уведомляются, когда были внесены изменения.

Уровень контроля может варьировать от неформального контроля, который просто отслеживает сделанные изменения в элементах конфигурации разрабатываемых в настоящее время, до формального контроля конфигурации с использованием базовых линий, которые могут быть изменены только в рамках формального процесса управления конфигурациями.

2. Обеспечивайте контроль доступа для обеспечения авторизованного доступа к системе управления конфигурацией.

3. Храните и извлекайте элементы конфигурации в системе управления конфигурацией.

4. Совместно используйте и передавайте элементы конфигурации между уровнями контроля в системе управления конфигурацией.

5. Храните и восстанавливайте предыдущие версии элементов конфигурации.

6. Храните, обновляйте и извлекайте записи управления конфигурацией.

7. Создавайте отчеты по управлению конфигурацией из системы управления конфигурацией.

8. Сохраняйте содержимое системы управления конфигурацией.

Примеры функций сохранения системы управления конфигурацией:

  • Резервное копирование и восстановление файлов управления конфигурацией
  • Архивирование файлов управления конфигурацией
  • Восстановление после ошибок управления конфигурацией

9. Пересматривайте структуру управления конфигурацией по мере необходимости.

СП 1.3 Создавайте или Выпускайте Базовые Линии

Создавайте и выпускайте базовые линии для внутреннего пользования и для поставки клиенту.

Базовая линия представляется назначенным идентификатором на элемент конфигурации или на набор элементов конфигурации и связанных с ними сущностей на определенный момент времени. Т.к. продукт или услуга развивается, могут быть использоваться несколько базовых линий для управления разработкой и тестированием. (См. определение «базовая линия» в глоссарии.)

Аппаратные продукты, а также программное обеспечение и документация должны быть также включены в базовую линию для инфраструктурно зависимой конфигурации (например, программное обеспечение, аппаратное обеспечение) и также должны быть включены в подготовку к системным тестам, которые включают взаимодействия аппаратного и программного обеспечения.

Один общий набор базовых линий включает в себя требования системного уровня, требования проектирования уровня элементов системы и определение продукта в конце разработки / в начале выпуска. Эти базовые линии обычно соответственно называются как «функциональная базовая линия», «локализированная базовая линия» и » базовая линия продукта».

Базовые линии программного обеспечения могут быть в виде набора требований, дизайна, файлов исходного кода и связанного исполняемого кода, файлов сборки и пользовательской документации (связанные сущности), на которые был назначен уникальный идентификатор.

Пример рабочих продуктов

1. Базовые линии

2. Описание базовых линий

Подпрактики

1. Получите разрешение от ГКИ до создания или выпуска базовых линий элементов конфигурации.

2. Создавайте и выпускайте базовую линию только из элементов конфигурации в системе управления конфигурацией.

3. Опишите набор элементов конфигурации, которые содержатся в базовой линии.

4. Сделайте текущий набор базовых линий легко доступным.

СЦ 2     Отслеживать и Контролировать Изменения

Изменения рабочих продуктов управления конфигурацией отслеживаются и контролируются.

Практики в рамках этой цели обеспечивают поддержку базовых линий после того как они установлены практиками в рамках цели Установить Базовые Линии.

СП 2.1 Отслеживайте Изменения

Отслеживайте запросы на изменение для элементов конфигурации.

Запросы на изменение адресуются не только новым или измененным требований, но также это могут быть сбои и ошибки в работе продукта.

Запросы на изменение анализируются, чтобы определить влияние, которое изменения окажут на рабочий продукт, сопутствующие рабочие продукты, бюджет и график работ.

Пример рабочих продуктов

1. Запросы на изменение

Подпрактики

1. Инициируйте и записывайте запросы на изменение в базе данных запросов на изменение.

2. Анализируйте влияние изменений и исправлений, предложенных в запросах на изменение.

Изменения оцениваются в рамках процедур, которые обеспечивают соответствие всем техническим и проектным требованиям.

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

Изменения оцениваются на предмет их влияния на планы выпуска.

3. Устанавливайте категорию и приоритет запросов на изменение.

Идентифицировать чрезвычайные запросы и в случае необходимости передать в чрезвычайный комитет.

Изменения планируются для будущих базовых линий.

4 Анализируйте запросы на изменения, которые должны быть выполнены в следующей базовой линии, с соответствующими заинтересованными сторонами и получите их согласие.

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

5. Отслеживайте статус запросов на изменение до закрытия.

Запросы на изменение, помещенные в систему, должны быть эффективно и своевременно обработаны. Очень важно, чтоб после обработки запроса на изменение, запрос был закрыт с соответствующим утверждающим действием, как только это будет возможно. Действия, оставляющие в результате открытым запрос в большей степени, чем это необходимо списком статусов, в результате приведут к увеличению расходов и неясности.

СП 2.2 Контролируйте Элементы Конфигурации

Контролируйте изменение элементов конфигурации.

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

Пример рабочих продуктов

1. История изменений элементов конфигурации

2. Архивы базовых линий

Подпрактики

1. Контролируйте изменение элементов конфигурации на протяжении всего жизненного цикла продукта или услуги.

2. Получайте соответствующее разрешение, прежде чем измененные элементы конфигурации поступят в систему управления конфигурацией.

Например, разрешение может исходить от ГКИ, руководителя проекта, владельца продукта или клиента.

3. Изымайте на редактирование и регистрируйте изменение элементов конфигурации в системе управления конфигурацией для применения изменений по правилам, которые поддерживают правильность и целостность элементов конфигурации.

Примеры изъятия на редактирование и регистрации изменений:

  • Подтверждение того, что изменения авторизированны
  • Обновление элементов конфигурации
  • Архивирование замененной базовой линии и получение новой базовой линии
  • Комментирование изменений, внесенных в элемент
  • Связывание изменений с соответствующими рабочими продуктами, такими как требования, пользовательские истории и тесты

4. Выполняйте проверку того, что изменения не привели к нежелательным последствиям в базовых линиях (например, проверить, что изменения не нарушили надежность или безопасность системы).

5. Записывайте изменения в элементы конфигурации и причины этих изменений по мере необходимости.

Если предлагаемые изменения в рабочий продукт будут одобрены, определяется план для включения изменения в рабочий продукт и в другие затрагиваемые области.

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

Измененные элементы конфигурации выпускаются после рецензии и утверждения изменений конфигураций. Изменения не являются официальными, пока они не выпущены.

СЦ 3Установить Целостность

Целостность базовых линий установлена и поддерживается.

Целостность базовых линий, установленная процессами в рамках целей Установить Базовые Линии, и поддерживаемая процессами в рамках целей Отслеживать и Контролировать Изменения, обеспечивается практиками в рамках этой цели.

СЦ 3.1 Установите Записи Управления Конфигурацией

Создавайте и поддерживайте записи описания элементов конфигурации.

Пример рабочих продуктов

1. История изменений элементов конфигурации

2. Журнал изменений

3. Записи запроса на изменение

4. Состояние элементов конфигурации

5. Различия между базовыми линиями

Подпрактики

1. Записывайте действий управления конфигурацией в достаточной детализации для того, чтобы содержание и состояние каждого элемента конфигурации были известны и могли быть восстановлены предыдущие линий.

2. Проверяйте, что соответствующие заинтересованные стороны имеют доступ и имеют информацию о состоянии конфигурации элементов конфигурации.

Примеры мероприятий для определения доступа к информации о состоянии конфигурации:

  • Предоставление прав доступа для авторизованных конечных пользователей
  • Создание копий базовой линии доступных для зарегистрированных конечных пользователей
  • Автоматическое оповещение соответствующих заинтересованных сторон, когда элементы регистрируются, или изымаются на редактирование, или изменяются, или принято решение в отношении запросов на изменение

3. Указывайте последнюю версию базовой линии.

4. Определяйте версию элементов конфигурации, которые являются частью базовой линии.

5. Описывайте различия между последовательными базовыми линиями.

6. Изменяйте статус и историю (т. е. внесение изменения и другие действия) каждого элемента конфигурации по мере необходимости.

СЦ 3.2 Выполняйте Аудит Конфигурации

Выполняйте аудит конфигурации для поддержки целостности базовых линий конфигурации.

Аудит конфигураций проверяет, что в результирующие базовые линии и документация соответствуют заданным стандартам или требованиям. Записи, связанные с элементом конфигурации, могут быть в нескольких базах данных или системах управления конфигурацией. В таких случаях, аудит конфигурации должен распространяться и на другие базы данных, что необходимо для обеспечения точности, согласованности и полноты сведений об элементе конфигурации. (См. определение «аудит конфигурации» в глоссарии.)

Примеры типов аудита:

  • Функциональный аудит конфигурации: Аудит направлен на проверку того, что разработка элемента конфигурации была завершена удовлетворительно, что элемент достиг функциональных и качественных характеристик, указанных в функциональных или локализированных базовых линиях, и что его операционная и документация для сопровождения является полной и удовлетворительной.
  • Физический аудит конфигурации: Аудит направлен на проверку того, что элемент конфигурации, такой как сборка, соответствует технической документации, которая определяет и описывает его.
  • Аудит управления конфигурацией: Аудит направлен на проверку того, что записи управления конфигурацией и элементы конфигурации полны, последовательны и точны.

Пример рабочих продуктов

1. Результаты аудита конфигурации

2. Последовательность действий

Подпрактики

1. Оценивайте целостность базовых линий.

2. Проверяйте, что записи управления конфигурацией правильно идентифицируют элементы конфигурации.

3. Проверяйте структуру и целостность элементов в системе управления конфигурацией.

4. Подтвердите полноту, правильность и согласованность элементов в системе управления конфигурацией.

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

5. Подтвердите соответствие с применяемыми стандартами и процедурами управления конфигурацией.

6. Отслеживайте последовательность действий от аудита до закрытия.

Реклама

комментария 2 to “CMMI DEV v1.3 – Управление Конфигурацией”

  1. В общем и целом, перевод достаточно адекватный.
    Но замечаний, естественно, тоже не мало. 🙂
    Например, в части формулировок практик и целей (практика — это все-таки рекомендация: делайте что-то, а не констатация). Перевод понятия baseline в базовую версию совершенно утрирует смысл baseline (в модели, кстати, baseline встречается не только в контексте управления конфигурацией). Ну и т.д.

    PS. Кстати, как на счет обучиться CMMI? Я имею в виду на официальном курсе? 🙂

    • Спасибо Александр за комментарий и замечания. Замечания только приветствуются и по ходу буду учитывать :). Ваши рекомендации по переводу терминов однозначно будут интересны.

      P.S. сотрудничество оно всегда интересно 🙂

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

 
%d такие блоггеры, как: