5.6. Сопровождение

Под сопровождением понимается внесение из­менений в ПО в целях исправления ошибок, повышения произво­дительности или адаптации к изменившимся условиям работы или требованиям.

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

Необходимость проведения этих работ обусловлена тем, что ни одна вычислительная система не остается неизменной.

Могут быть обнаружены ошибки, пропущенные при тестировании.

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

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

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

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

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

- оценку целесообразности проведения модификации и возмож­ных вариантов ее проведения;

- утверждение выбранного варианта модификации.

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

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

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

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

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

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

Это были перечислены основные процессы, далее рассмотрим вспомогательные и организационные процессы.