Лекция
Привет, сегодня поговорим про управление конфигурацией it-проекта, обещаю рассказать все что знаю. Для того чтобы лучше понимать что такое управление конфигурацией it-проекта , настоятельно рекомендую прочитать все из категории Управление разработкой программных IT проектов.
Для введения в этот раздел, относительно редко выносимый на отдельное рассмотрение, дадим определение ключевым терминам.
Конфигурация - поименованный набор элементов, являющихся результатами проекта.
Элемент конфигурации - результат проекта или компонент результата, контролируемый в рамках процесса управления конфигурацией.
Ответственность за планирование, функционирование и контроль процесса управления конфигурацией возложена на менеджерапо управлению конфигурацией. Если проект небольшой, эти функции выполняет руководитель проекта, но с увеличением масштаба проекта эта роль становится главной и требует отдельного назначения.
В должностные обязанности менеджера по управлению конфигурацией обязательно входит [22]:
Определение объектов управления конфигурацией выполняется на основе анализа запланированных результатов проекта, зафиксированных в ключевых проектных документах: уставе и содержании проекта. По результатам анализа устанавливают структуру и организацию элементов, необходимых для создания рабочей среды процесса управления конфигурацией.
Работы по идентификации конфигураций определяют контролируемые элементы, устанавливают схемы идентификации для элементов и их версий, а также задают инструменты и описывают технику, которые используются для управления этими элементами. Данная деятельность является основой для всех других работ по конфигурационному управлению.
Идентификация элементов конфигурации, которые необходимо контролировать, служит первым шагом в организации контроля изменений, в рамках описываемого подхода реализуемых при помощи процесса интегрированного управления изменениями. Правильный выбор элементов конфигурации важен для обеспечения управляемого набора контролируемых элементов. Структурные связи между выбранными элементами конфигурации (и их составляющими) влияют на работы проекта. Элементы конфигурации развиваются по мере выполнения проекта. Версия элемента конфигурации рассматривается в качестве определенного состояния эволюционирующего элемента. По мере выполнения проекта происходит обновление версий - новая версия элемента, предназначенная для замены его текущей, старой, версии.
К объектам управления конфигурацией относятся компьютерные ресурсы, сервисное обслуживание, инструментальные средства, необходимые для создания инфраструктуры проекта. Своевременное создание инфраструктуры проекта является одним из критических факторов успеха на этапе планирования.
Элементы конфигурации формируются по результатам разработки рабочего плана проекта. Новый элемент конфигурации принимается от уполномоченного члена команды проекта. Элементу присваивается идентификатор, определяется его начальное состояние и производится его размещение в репозитории УК, где устанавливается защита от несанкционированного доступа.
Планирование инфраструктуры начинается с формирования требований. Как правило, требования к компьютерному оборудованию и сопутствующей инфраструктуре формируются на основе анализа внутренней информации компании, включающей оценку характеристики работы компьютерного оборудования. Инфраструктуру необходимо оценить относительно задач различного профиля, и проводить ее оценку на следующих уровнях:
проекта оборудованием, созданием рабочей среды, библиотеки проекта. Работы по созданию инфраструктуры проекта необходимо контролировать. Для членов команды проекта на территории заказчика должны быть подготовлены рабочие места, оснащенные офисным оборудованием, телефонами, персональными компьютерами, принтерами, комнатами для ведения переговоров, учебными аудиториями и прочими материальными ресурсами. Одним из обязательных элементов инфраструктуры является библиотека проекта.
Специальные помещения
Для осуществления рабочей группой проекта работ в группе компаний "Звездочка" заказчик предоставляет специальные помещения для размещения объединенной рабочей группы проекта.
Требования к помещениям
Помещение проектного офиса должно удовлетворять следующим требованиям:
на одного сотрудника должно приходиться не менее 5 м2 площади рабочей комнаты, рабочее место каждого сотрудника должно быть обеспечено:
Рабочей группе проекта должна быть выделена в пользование рабочая комната для проведения переговоров, оборудованная:
Обеспечение членов рабочей группы проекта персональными компьютерами:
Обеспечение рабочей группы проекта копировальной техникой Рабочая группа проекта обеспечивается заказчиком одним копировальным аппаратом с возможностью двухстороннего копирования листов формата А3 и А4 и автоматической подачей листов оригинала.
Обеспечение рабочей группы проекта канцелярскими принадлежностями Рабочая группа проекта обеспечивается заказчиком канцелярскими принадлежностями и бумагой по заявке администратора проекта от исполнителя.
Обеспечение информационного обмена членов рабочей группы проекта
Режим и место работы членов объединенной рабочей группы проекта
Для создания инфраструктуры необходимо:
Базовая линия или фиксированный срез конфигурации - набор элементов конфигурации, формально определенный и зафиксированный по времени в процессе жизненного цикла ИС. В определенных случаях базовая линия может изменяться только через формальную процедуру контроля изменений. Фиксированный срез в сочетании со всеми утвержденными изменениями в отношении его представляет собой текущую утвержденную конфигурацию [21].
Различные элементы конфигурации передаются под управление конфигурацией в различные моменты времени и включаются в базовые линии в определенных точках жизненного цикла. Инициирующим событием является завершение определенных форм формального утверждения задач, таких как формальная оценка. Примерами элементов конфигурации могут служить настроенные модули ИС, руководство пользователя, планы тестирования, базы данных тестов и прочее.
Для организации выполнения вышеперечисленных задач на стадии планирования ЖЦ ИС разрабатывается план управления конфигурацией, где излагается концепция и определяются средства для автоматизации процесса, а также расписываются все роли и деятельности в зависимости от стадии жизненного цикла ИС.
План управления конфигурацией (УК) разрабатывается на ранних стадиях этапа планирования и является частью плана управления проектом. Структура плана УК зависит от таких факторов, как тип проекта и его длительность, уровень формализации процессов, размер команды и прочее. Это означает, что структура плана в зависимости от проекта может существенно изменяться. В работе [19] выполнен анализ факторов, влияющих на структуру плана.
Так, наличие нескольких офисов усложняет план, дополняя его регламентами взаимодействия между офисами, влияет на общую архитектуру проекта. Увеличение числа регионов воздействует на уровень формализма плана.
Относительный размер проекта воздействует на количество регламентов и их проработанность и детальность. Фазы, взаимодействие между группами, прохождение запросов на изменения описываются более детально. Чем крупнее проект, тем более формализованным должен быть план.
Количество конфигурационных элементов влияет только на более глубокую проработку идентификации элементов. В некоторых случаях полезно определить в плане все типы конфигурационных элементов на основании шаблонов.
Количество компонентов и подсистем влияют на выборку элементов из репозитория (способ выборки и обращения) и глубину изложения раздела, описывающего структуру проектного каталога План УК обычно описывает все фазы жизненного цикла ИС. Иногда при работе с субподрядчиками бывает необходимо более четко выделить фазу, на которой подключается субподрядная организация.
На ход проекта и на план оказывают существенное воздействие такие факторы, как используемые средства разработки, платформа разработки (возможна разработка на нескольких платформах и для нескольких платформ одновременно). Большое значениеимеют тип и количество средств реализации (автоматизации УК), их принадлежность одному или нескольким вендорам. Например, в проекте можно использовать средство управления версиями от одного производителя, а средство управления изменениями - от другого. Тип интеграции между средствами, архитектура интеграции должны быть детально рассмотрены в плане УК.
Уровень формализации зависит от многих факторов. Выбирая уровень формальности и глубины изложения, необходимо руководствоваться исходящими задачами и целями. Такие факторы, как сложность проекта, региональная разбросанность, тип проекта, наличие субподрядчиков, должны автоматически подвигнуть к написанию высоко формализованного плана УК. Средний и низкий уровень могут применяться в относительно краткосрочных проектах, проектах, в которых задействовано небольшое количество разработчиков. С ростом команды, разделением ролей план УК должен быть пересмотрен, уровень формализации поднят. Об этом говорит сайт https://intellect.icu . В таблице 42 представлен пример структуры плана УК.
В зависимости от размера проекта некоторые пункты плана могут быть пропущены.
На стадии планирования управления конфигурацией необходимо также определить, какие программное обеспечение иаппаратные средства обеспечат достижение целей проекта, разработать планы по контролю и созданию документов проекта, а также определить стратегии, стандарты и процедуры проекта, обеспечивающие управление конфигурацией, документировать, каким образом будут идентифицироваться, организовываться и контролироваться элементы конфигурации.
Пример процедуры обеспечения хранения документов.
Вся документация по проекту хранится в библиотеке проекта. Библиотека организована для обеспечения гарантии доступности документов команде проекта; регистрации и хранения копий измененных документов; хранения справочных материалов, включая документацию по стандартам; поддержки административной информации по проекту; хранения текущей (рабочей) информации.
Пример процедуры рассылки документов.
Рассылка должна производиться авторами и поддерживаться для всех контролируемых документов проекта. Список рассылки включает в себя следующую информацию: ФИО получателя, адрес электронной почты, роль в проекте.
Пример процедуры подготовки документов
Все документы проекта должны иметь титульный лист, историю изменений, список рецензентов, таблицу рассылки.
Титульный лист обязательно содержит тему документа, автора, дату создания, дату последней модификации документа, идентификатор, по которому можно делать ссылки на документ, номер версии документа, кем утверждается документ.
История изменений включает дату изменения, автора вносимого изменения.
Пример процедуры отчетности о деятельности
Процедура отчетности о деятельности заключается в налаживании и поддержании процесса предоставления отчетности по реализации проекта. Управление временными рамками проекта осуществляется посредством отслеживания результатов проделанной работы, сообщения о которых являются частью предоставляемой отчетности.
Проектные документы будут готовиться проектными группами в ходе всего проекта, в соответствии с планом работ по проекту.
Все проектные документы будут передаваться на согласование и утверждение заказчику. Открытые вопросы по документу фиксируются в последнем разделе каждого документа "Открытые вопросы для настоящего документа" с вариантами решения вопроса. Открытые вопросы, которые не могут быть решены на уровне проектных групп и руководителя проекта, дублируются в журнале проблем и открытых вопросов, в соответствии с процедурой управления проблемами и открытыми вопросами.
Утвержденные проектные документы будут являться основой для последующих проектных работ.
Для выполнения документов будут использованы следующие программные средства:
Вся проектная документация будет храниться в электронном виде в библиотеке проекта.
Таблица 13.1. Структура плана управления конфигурацией (адаптировано из [18])
Раздел плана |
Раздел плана |
Требования к содержанию |
Дополнительные комментарии |
1. Введение |
Introduction |
Введение в план УК представляет собой обзор содержания документа. Включает цели, область действия, определения, акронимы, сокращения, ссылки и обзор планаконфигурационного управления |
Введение позволяет сделать документ более читаемым - объяснить основные моменты и расставить правильные акценты |
1.1 Назначение |
Purpose |
Содержит назначение документа "План конфигурационного управления" |
Как правило, в назначение можно включить описание целей, которые решает данный план. Ведь план, в зависимости от размеров проекта, от географического распределения, также может различаться |
1.2 Область применения |
Scope |
Краткое описание области применения плана; с какой моделью он связан, другие особенности, влияющие на документ |
Зачастую можно описать подразделения, участвующие в процессе УК. Описать условия применения. При определении области полезно ответить для себя на ряд вопросов:
|
1.3 Определения, акронимы и сокращения |
Definitions,Acronyms andAbbreviations |
Представляет собой определения всех терминов, акронимов и сокращений, требующихся для точной интерпретации документа "План конфигурационного управления". Для предоставления этой информации можно воспользоваться ссылками на словарь проекта |
Нам часто приходится сталкиваться с тем, что данный раздел либо игнорируют совсем, либо не придают ему особого значения. Те не менее, глоссарий - это составная и неотъемлемая часть ЛЮБОГО документа, плана УК в том числе.Здесь необходимо отразить и объяснить все термины УК и разрабатываемого продукта. Необходимо помнить, что хороший глоссарий позволит всем находиться в одном терминологическом пространстве.Вопросы:
|
1.4 Ссылки |
References |
Этот подраздел представляет полный список всех документов, на которые имеется ссылка где-либо в "Плане конфигурационного управления". Идентифицируется каждый документ по названию, номеру отчета (если есть), дате и организации, его опубликовавшей. Указывается источник, из которого могут быть получены указанные документы. Для предоставления этой информации можно воспользоваться ссылками на приложения или другие документы |
План УК редко разрабатывается сам по себе. Он является частью нормативно-методического обеспечения проекта. Нет смысла в плане повторять дословно разделы из других документов. Проще сформировать ссылку на документ, а в данном разделе указать все используемые источники (в том числе документы RUP, стандарты, международные и отраслевые стандарты). Вопросы:
|
1.5 Обзор |
Overview |
Обзор документа по разделам |
Необходимо понимать, что не все участники проекта будут читать документ от корки до корки. Обзор необходим для того, чтобы впоследствии можно было читать те разделы, которые нужны в данный момент данной роли |
2. Конфигурационное управление программным продуктом |
Software Configuration Management |
Один из основных разделов. Описывает все технические и технологические аспекты применения УК в проекте или организации.Количество подразделов и их вложенность могут отличаться от приведенных ниже |
|
2.1 Организация, распределение ответственности и взаимодействия |
Organization, Responsibilities and Interfaces |
Указывается, кто будет ответственным за выполнение различных задачконфигурационного управления, описанных в ходе процессовконфигурационного управления |
Данный пункт оговаривает не только список ответственных за выполняемые действия, но может описывать состав и взаимодействие между проектными группами. Данный аспект особенно важен, если речь идет о разработке, распределенной по нескольким географическим точкам. Эффективное дополнение данного раздела - подраздел, описывающий политику доступа. Это может быть простая таблица, в которой описывается в терминах применяемых средств автоматизации процесса, что можно выполнять отдельному участнику проекту, а что для него запрещено. Обычно для этого выбирают способ описания либо только доступных операций, либо только запрещен-ных.В дальнейшем данная политика перекладывается в средства реализации, где выставляются соответствующие разрешения и запрещения. В зависимости от выбранной проектной структуры (матричной или иерархической) адаптируется политика. Вопросы:
|
2.2 Инструментарий, рабочая среда и инфраструктура |
Tools, Environment and Infrastructure |
Рассматриваются рабочая среда и программное обеспечение, которое будет использовано при выполнении функцийконфигурационного управления в ходе жизненного цикла проекта или программного продукта. Описываются инструменты и процедуры, которые нужно использовать для версионного контроля объектовконфигурационного управления, создаваемых в ходе жизненного цикла проекта или программного продукта.Вопросы, рассматриваемые при настройке рабочей среды конфигурационного управленияюжидаемый размер данных по программному про-дукту;распределение рабочей команды;расположение серверов и рабочих станций |
Детальное описание данного пункта позволит, для начала, понять самим, какие средства разработки используются в компании (зачастую до начала внедрения в большой компании никто, кроме начальника отдела разработки, не представляет полного списка средств). Полный учет средств необходим еще и для того, чтобы определить методы интеграции средств разработки со средствами УК, ведь известно, что любое средство УК имеет ограниченные возможности по интеграции со средствами разработки. Задача менеджера УК и администратора в этом случае заключается в том, чтобы выбрать сторонние разработки, которые либо делают интеграцию более полной, либо просто добавляют саму интеграцию в используемое средство разработки + в средство УК. Не менее важно описать среду исполнения. Не все средства УК одинаково ставятся на всех платформах. Здесь могут быть особенности. Как вариант: сервер Linux, клиенты Windows. Не все средства УК умеют работать в подобной среде, что надо учитывать при выборе средства.Вопросы:
|
3. Программа конфигурационног о управления |
The Configuration Management Program |
||
3.1 Конфигурационная идентификация |
Configuration Identification |
Вопросы:
|
|
3.1.1 Методы идентификации |
Identification Methods |
Описывается, как именуются, маркируются и нумеруются артефакты проекта или программного продукта. Схема идентификации должна покрывать оборудование, системное программное обеспечение, продукты внешних разработчиков и все артефакты разрабатываемого приложения, указанные в структуре директорий программного продукта; например, модели, планы, компоненты, тестовое ПО, результаты и данные, исполняемые файлы и т.д. |
Очень важный пункт, в котором нужно описать все правила именования объектов УК. Также здесь должна быть детально расписана структура каталогов проекта. Обычно к моменту внедрения УК структура каталогов проекта складывается исторически, зачастую - спонтанно. Цель описания - выработать новую, более эффективную структуру. Практика показывает, что человек на этапе восстановления структуры может увидеть уязвимые или неэффективные места |
3.1.2 Базовые версии проекта |
Project Baselines |
Базовые версии предоставляют официальный стандарт, на котором основывается последующая работа и для которого проводятся только авторизованные изменения. Описывается, в какой точке жизненного цикла проекта или продукта должны создаваться базовые версии. Наиболее общие базовые версии должны быть в конце каждой из фаз обследования, проработки проекта, построения системы и передачи в эксплуатацию. Базовые версии также могут создаваться в конце итераций внутри различных фаз или даже чаще. Определяется, кто может создавать базовые версии и что входит в их состав (обычно это интегратор, но может быть и по-другому) |
Здесь описывается то, каким образом будет происходить сама работа в средстве УК: как будут ставиться метки, как выпускаться релизы, сколько ветвей для реализации проекта будет использовано и по какому принципу ветви будут именоваться. Обратите особое внимание на данный пункт - без него невозможна эффективная работа. При проработке пункта учитывается региональная раздробленность команды (влияет состав команд, количество регионов), интенсивность внесения изменений, количество выпускаемых релизов за единицу времени. Соответственно, в зависимости от данных показателей выбирается наиболее эффективный способ управления конфигурациями, что и отражается в данном разделе. Вопросы:
|
3.2 Контроль конфигураций и изменении |
Configuration and Change Control |
Как известно, процесс УК состоит из двух частей -управление изменениями и управления версиями. Управление изменениями - неотъемлемая и важная часть процесса. Управлять необходимо любыми изменениями: от заявок пользователей до исправляемых дефектов. Данный раздел содержит полное описание всех запросов на изменения, включая атрибуты и жизненный цикл. Подробное описание - залог успешно построенного процесса УК.Очень часто для отслеживания существенных событий в проекте применяют уведомления различного вида. Как правило, это уведомления по электронной почте (например, при исправлении ошибки тестер получает уведомление и может приступить к тестированию). Укажите все типы уведомлений, которые применяются в проекте. Вопросы:
|
|
3.2.1 Отработка и утверждение запросов на изменение |
Change RequestProcessing and Approval |
Рассматриваются процессы, которые обеспечивают внесение, рассмотрение и упорядочение проблем и изменений |
Определяются типы запросов. Как правило, это дефект, запрос на расширение, задача и заявка. Состав типов может существенно меняться, главное - не сводить все управление изменениями к одному типу запросов (очень часто, кроме как дефектами компании, ничем не управляют) |
3.2.2 Группа управления изменениями |
Change Control Board(CCB) |
Описывается, кто входит в состав группы управления изменениями, и процедуры, которым она следует, для отработки и утверждения запросов на изменение. В некоторых случаях указывается регламент сбора группы |
Решение о принятии запроса от пользователя, решение о реализации новой технической идеи практически никогда не принимаются одним человеком. В любой компании это группа людей. В терминах стандартов данная группа называется ССВ. В данном разделе необходимо описать состав участников (как правило, это аналитик или постановщик, лидер группы разработчиков, лидер группы тести-ровщиков и представитель отдела маркетинга) и периодичность заседаний. Например, группа ССВ может собираться каждую неделю (по регламенту) либо по возникшей потребности (не рекомендуется). Вопросы:
|
3.3 Учет состояния конфигурации |
ConfigurationStatus Accounting |
||
3.3.1 Хранение материалов проекта и выпуск релизов |
Project Media Storage and Release Process |
Описываются правила хранения и регламенты резервирования, действия на случай непредвиденных обстоятельств.Опи-сание процесса выпуска релизов включает их содержание, для кого они предназначены и имеются ли какие-либо известные проблемы и инструкции по инсталляции (можно вынести в отдельное приложение) |
|
3.3.2 Отчеты и проверки |
Reports and Aidits |
Рассматривается содержание, формат и цель запрашиваемых отчетов и проверок состояния конфигурации. Отчеты используются для получения данных о качестве программного продукта в любой заданный момент времени жизненного цикла программного продукта или проекта. Отчетность по дефектам, основанная на запросах на изменения, может обеспечить некоторые удобные индикаторы качества и, следовательно, предостеречь предупредить? Потому что предостеречь ОТ чего-либо менеджеров и разработчиков об определенных критических областях процесса разработки |
Отчетам следует уделить особое внимание. Только по отчетам можно проследить ход выполнения работ. Здесь необходимо определить отчеты по ролям участников проекта и описать их формат. Также рекомендуется сформировать регламент сбора отчета, то есть, с какой периодичностью собираются метрики (в реальном времени, раз в день... и т. д.). Желательно выделить различные типы отчетов и периодичность сбора их метрик. Вопросы:
Отчеты Вопросы:
|
3.3.3 Документирование |
Documents |
Раздел определяет способы и типы документов |
|
3.3.3.1 Описание версии |
\eision Description |
Данный документ описывает диски, CD или другие носители, используемые для поставки ПО.Также данный раздел также определяет состав документов, поставляемых с версией ПО и доступных для конечных пользователей |
Примерный состав документов:
Данный пункт может содержать основные правила формирования документов, отражать способ выпуска документов (ручной, автоматический). Требования к оформлению документов и шаблоны документов должны быть вынесены в приложение к плану УК. Перечень приведенных документов относится к выпуску ПС для каждой версии, релиза, патча. В зависимости от выбранной модели выпуска состав документов, а также их детальность могут различаться |
3.3.3.2 Документирование процесса |
CM Documents |
Общие документы требуются в случаях, когда продукт разрабатывается для крупных организаций, а также в тех случаях, когда продукт представляет собой программно-аппаратный комплекс |
Типовые документы для данного раздела:
Требования к оформлению документов и шаблоны документов должны быть вынесены в приложение к плану УК |
4. Этапы |
Milestones |
Детально рассматриваются этапы работ для заказчика и внутренние, относящиеся к работам по УК для программного продукта или проекта. Эта секция обычно включает детальное описание того, когда может быть модифицирован сам план конфигурационного управления |
В зависимости от выбранной модели может измениться содержание этапов. Рекомендуется описать, что выполняется в УК в зависимости от этапа проекта |
5. Обучение и ресурсы |
Training and Resources |
Рассматриваются инструментальные средства, персонал и обучение, требуемые для реализации описанных в плане задач |
|
6. Субподрядчики и контроль программного обеспечения со стороны поставщиков |
Subcontractor and Vendor Software Control |
Описывается, как будет интегрировано программное обеспечение, разработанное вне среды УК проекта |
К работе над проектом могут привлекаться субподрядчики. Данный раздел описывает, каким образом будет происходить работа с субподрядчиком. Вопросы:
|
Приложения |
Состав приложений не определяется стандартами. Обычно включает в себя такие документы, как:
|
Руководствуйтесь целесообразностью внесения тех или иных изменений. Оцените, все ли попало в основные разделы плана. Если основные разделы слишком разрослись, то, возможно, нужно вынести из них часть информации в приложение |
В общем, мой друг ты одолел чтение этой статьи об управление конфигурацией it-проекта. Работы впереди у тебя будет много. Смело пиши комментарии, развивайся и счастье окажется в твоих руках. Надеюсь, что теперь ты понял что такое управление конфигурацией it-проекта и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Управление разработкой программных IT проектов
Ответы на вопросы для самопроверки пишите в комментариях, мы проверим, или же задавайте свой вопрос по данной теме.
Комментарии
Оставить комментарий
Управление разработкой программных IT проектов
Термины: Управление разработкой программных IT проектов