Разработка сложных программных изделий


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


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

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

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

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

• компьютерные программы (в форме исходного или исполняе­мого кода);

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

• структуры данных, содержащиеся либо в программах, либо вне их.

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

1. Требования пользователя.

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

3. Техническое задание на разработку программного изделия.

4. План проектирования программного изделия.

5. Предварительное руководство пользователя.



6. Спецификацию проекта:

а) описание архитектурного проекта;

б) описание проекта данных;

в) описание проектов отдельных модулей.

7. Документированные листинга исходных кодов.

8. Материалы тестирования:

а) план и процедура тестирования;

б) тестовые наборы и результаты тестирования. 9- Операционные руководства и руководство по вводу в дейст­вие.


10. Рабочие программы (исполнимые модули и модули связей).

11. Описание базы данных:

а) схема базы и структуры файлов;

б) первоначальное содержание.

12. Документы по сопровождению программного изделия.

13. Стандарты и процедуры, определяющие порядок выполне­ния работ.

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

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

При создании изделия изменения происходят в процессе работы постоянно, по мере накопления разработчиками опыта и информа­ции.

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

• идентификации и документирования физических и функцио­нальных характеристик элементов конфигурации;

• контроля за изменением этих характеристик;

• регистрации, обработки и документирования изменений и ус­тановления статуса реализации;

• проверки согласованности проводимых действий с установлен­ными требованиями.

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

• ревизионном контроле;

• идентификационном контроле;

• управлении распространением.

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



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

предполагают разные условия работы, версии

обеспечивают разные свойства, а редакции

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

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

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

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






Содержание раздела