Открыть главное меню

Конфигурационное управление

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

Разработка программного обеспечения
Процесс разработки ПО
Ключевые процессы
Анализ • Проектирование • Программирование • Конструирование • Тестирование • Отладка • Развёртывание • Сопровождение • Документирование
Парадигмы и модели
Agile • Cleanroom • Итеративная • Спиральная • Каскадная • V-Model • Dual Vee Model
Методологии
ASD • DevOps • DAD • DSDM • FDD • Канбан • Lean SD • LeSS • MDD • MSF • PSP • OpenUP • RAD • RUP • SAFe • Scrum • TSP • UP • XP
Инструменты
Компилятор • Отладчик • Профилирование • GUI-конструктор • ИСР • Автоматизация сборки • Автоматизация релиза • Инструменты тестирования

В целом, конфигурационное управление отвечает на вопрос: «Кто-то уже сделал нечто, как нам это воспроизвести?»

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

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

Цели и задачиПравить

Цели конфигурационного управления:

  • Контроль: SCM позволяет отслеживать изменения в контролируемых объектах, обеспечивает соблюдение процесса разработки;
  • Управление: SCM диктует процесс автоматической идентификации в ходе всего жизненного цикла ПО, обеспечивает простоту модификации и сопровождения ПО;
  • Качество;

Задачи конфигурационного управления:

  • идентификация конфигурации;
  • контроль конфигурации: контроль над изменениями материалов;
  • учёт текущего состояния: состояние документов, состояние кода, состояние отдельных задач и всего проекта в целом;
  • управление процессом разработки;
  • управление сборкой;
  • управление окружением;
  • отслеживание задач и проблем (в частности, отслеживание ошибок);

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

Ревизия конфигурации — процесс проверки соответствия документа нижнего уровня всем требованиям верхнего.

Аудит конфигурации — процесс проверки соответствия готового продукта или его части документации.

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

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

См. такжеПравить

СсылкиПравить