Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шлемензон К.М(ответы).doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.3 Mб
Скачать
  1. Технологический процесс управления конфигурацией и изменениями

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

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

Куб ССМ

Управление конфигурацией и изменениями (configuration and change management — ССМ) включает три независимые функции. Проиллюстрировать это можно с помощь так называемого "куба ССМ" (рис. 13.1).

Рис. 13.1. Куб ССМ

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

■ Грань управления конфигурацией относится к структуре продукта.

Управление конфигурацией (configuration management — СМ) связано с опреде­лением артефактов, зависимостей между артефактами и конфигураций, являю­щихся непротиворечивыми множествами взаимосвязанных артефактов. Кроме того, оно связано с вопросами распределения рабочих сред между отдельными сотрудниками и командами с тем, чтобы разработка велась без ненужного дублирования работ.

■ Грань управления запросами на внесение изменений относится к структуре процесса.

Управление запросами на внесение изменений (change request management — CRM) связано со сбором запросов на внесение изменений (поставляемых внут­ренними и внешними заинтересованными сторонами) и управлением этими запросами. Также оно связано с анализом потенциального влияния изменений и наблюдением за внедрением изменений.

■ Грань управления состоянием и измерениями относится к управляющей структуре проекта.

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

  • состояния, прогресса, общих тенденций и качества продукта;

  • расходов;

  • проблемных областей, требующих внимания;

  • что уже сделано, а что еще нужно сделать.

Управление конфигурацией

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

Структура продукта в целом — организация всех артефактов — направляется реали­зационным представлением архитектуры.

Управление запросами на внесение изменений

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

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

Управление состоянием и измерениями

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

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

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

  • Общий прогресс проекта относительно изменений

  • Число изменений, сделанных в различных состояниях

  • "Возраст" запросов на внесение изменений — как долго они находятся в опреде­ленном состоянии

Кроме того, из этой базы данных можно извлечь отчеты о распределении запросов.

  • По серьезности и приоритету

  • По затронутым уровням или подсистемам

  • По командам разработчиков

  • По основным причинам

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

Исполнители и артефакты

  • Управляющий конфигурацией.

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

  • Управляющий контролем над изменениями.

Наблюдает за процессом контроля над изменениями. Эту роль обычно исполняет орган контроля над изменениями (Change Control Board— CCB), который должен состоять из представителей всех заинтересованных сторон, включая заказчиков, разработчиков и пользова­телей. В небольшом проекте эту роль может играть одно лицо, например руко­водитель проекта или архитектор программного обеспечения. Управляющий контролем над изменениями также отвечает за определение процесса управление запросами на внесение изменений, который должен быть задокументирован в плане управления конфигурацией.

Помимо основных, в рассматриваемом процессе задействованы следующие исполнители.

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

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

  • Любой исполнитель, который может предлагать запрос на внесение изменений.

  • Архитектор, воздействующий на структуру продукта через реализационное представление.

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

■ План управления конфигурацией

Данный план описывает стратегии, которые будут использоваться в проекте при управлении конфигурацией: версии, варианты, рабочие среды и процеду­ры управления конфигурацией, конструкциями и выпусками; В этом плане определяются правила и обязанности группы ССВ, а сам план является частью плана разработки программного обеспечения.

■ Запросы на внесение изменений

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

Рассматриваемый процесс также включает следующие артефакты.

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

  • Метрики и отчеты о состоянии, извлекаемые из среды поддержки данного технологического процесса и позднее включаемые в отчеты оценки состояния.

Технологический процесс

В технологическом процессе управления конфигурацией и изменениями существует два взаимосвязанных процесса: один рассматривается с точки зрения структуры управления конфигурацией (рис. 13.6), а второй — с точки зрения "жизни" запроса на внесение изменений.

Рис. 13.6. Технологический процесс управления конфигурацией и изменениями

Планирование конфигурации проекта и управления изменениями

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

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

Создание среды управления конфигурацией

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

Изменение и предоставление конфигурационных объектов

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

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

Управление запросами на внесение изменений

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

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

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

Управление запросами на внесение изменений включает процесс последова­тельного видоизменения артефактов.

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

Наиболее трудоемкие аспекты описанного технологического процесса могут быть автоматизированы с помощью инструментальных средств, таких как ClearCase и ClearQuest.