Конфигурационное управление
Конфигурационное управление (англ. software configuration management, SCM) в программной инженерии — комплекс методов, направленных на систематический учёт изменений, вносимых разработчиками в программный продукт в процессе его разработки и сопровождения, сохранение целостности системы после изменений, предотвращение нежелательных и непредсказуемых эффектов, формализацию процесса внесения изменений.
В целом, конфигурационное управление отвечает на вопрос: «Кто-то уже сделал нечто, как нам это воспроизвести?»
Изначально управление конфигурацией применялось не в программировании. Под конфигурацией понимался состав деталей конечного продукта и «взаимное расположение частей» физического изделия. Таким образом, конфигурацией можно управлять, контролируя документы, описывающие конечный продукт, требования к нему, всю его проектную и технологическую документацию.
В связи с высокой динамичностью сферы разработки ПО, в ней конфигурационное управление особенно полезно. К процедурам можно отнести создание резервных копий, контроль исходного кода, требований проекта, документации и т. д. Степень формальности выполнения данных процедур зависит от размеров проекта, и при правильной её оценке данная концепция может быть очень полезна.
Цели и задачи
Цели конфигурационного управления:
- Контроль: SCM позволяет отслеживать изменения в контролируемых объектах, обеспечивает соблюдение процесса разработки;
- Управление: SCM диктует процесс автоматической идентификации в ходе всего жизненного цикла ПО, обеспечивает простоту модификации и сопровождения ПО;
- Качество;
Задачи конфигурационного управления:
- идентификация конфигурации;
- контроль конфигурации: контроль над изменениями материалов;
- учёт текущего состояния: состояние документов, состояние кода, состояние отдельных задач и всего проекта в целом;
- управление процессом разработки;
- управление сборкой;
- управление окружением;
- отслеживание задач и проблем (в частности, отслеживание ошибок);
Процедуры управления конфигурацией
Ревизия конфигурации — процесс проверки соответствия документа нижнего уровня всем требованиям верхнего.
Аудит конфигурации — процесс проверки соответствия готового продукта или его части документации.
Контроль конфигурации — процесс, при котором все предлагаемые изменения продукта проходят одобрение специальной группы (или отдельного человека). Одна из функций такой группы — контроль актуальности всех имеющихся документов, а также контроль того что все изменения сначала вносятся в документацию, а уже затем в объект изменения.
Учет состояния конфигурации — процесс подготовки отчетов о текущем состоянии продукта и состоянии утверждённых изменений.
Литература
- Aiello, R. (2010). Configuration Management Best Practices: Practical Methods that Work in the Real World (1st ed.). Addison-Wesley. ISBN 0-321-68586-5.
Ссылки
- Сергей Орлик. Программная инженерия. Конфигурационное управление . — Перевод главы из SWEBOK с комментариями. Дата обращения: 18 июня 2011. Архивировано 14 марта 2012 года.
- Дмитрий Лапыгин, Александр Новичков. Конфигурационное управление проектами разработки программного обеспечения (2004). Дата обращения: 18 июня 2011.
- Александр Новичков, Дмитрий Лапыгин. Зачем нам нужен план управления конфигурациями? Основные понятия и концепции документа (27 января 2008). Дата обращения: 18 июня 2011.
- Юрий Удовиченко. Управление конфигурациями или кессонная болезнь проектов (13 февраля 2011). Дата обращения: 18 июня 2011. Архивировано 14 марта 2012 года.
- Записки отставного сиэмщика: блог, статьи и книги по Software Configuration Management (20 октября 2011). Дата обращения: 20 октября 2011. Архивировано 14 марта 2012 года.
В статье есть список источников, но не хватает сносок. |