Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Верификация и сопровождение ИС.doc
Скачиваний:
92
Добавлен:
19.12.2018
Размер:
1.42 Mб
Скачать

2.7. Подведение итогов

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

  • Сопровождение программы – это то, что следует за поставкой.

  • Самое важное – это анализ влияния вносимых в приложение изменений.

  • Стандарт IEEE описывает этот процесс:

    • определение, входные данные, процесс, контроль, выходные данные, качество, метрика;

    • порядок стадий тот же, что и при разработке.

  • Сложности, возникающие при управлении:

    • управление потоком запросов;

    • создание мотивации у персонала;

    • обеспечение актуальности всей документации.

  • Метрика: построение графиков для исправлений и усовершенствований.

Многими идеями и ссылками автор обязан Беннетту [8] и Пигоски [89]. Ре­комендуем читателю также обратиться к полезному труду Омана [84].

Упражнения.

Ответы и подсказки для упражнений, помеченных символами «о» или «п», при­водятся в конце этой главы.

Вопросы для проверки.

П10.1о. Дайте определение понятия «сопровождение программ» одним пред­ложением.

П10.2о. Сопровождение бывает четырех видов, которые могут быть отнесе­ны к двум категориям. Назовите их.

П10.3о. Приведите типичную последовательность обработки запросов на со­провождение.

П10.4о. Предлагается изменить длину массива, используемого в некотором приложении, чтобы оно стало отвечать новым требованиям. Какие действия не­обходимо выполнить перед внесением изменений в код?

П10.5о. Определите обратное проектирование одним абзацем.

П10.6о. Приведите два или три способа использования унаследованных при­ложений в новых программах.

П10.7о. Что подразумевается под реинжинирингом приложения? Почему в этом может возникнуть необходимость?

П10.8о. Перечислите пять-десять возможных проблем, связанных с сопровож­дением (см. раздел 10.5).

Общие упражнения.

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

Требование к персонажу игрока: [желателъно] («Внешний вид персонажа игро­ка») Игрок получает возможность выбирать изображение своего персонажа из четырех или более файлов формата GIF.

  • К какому типу может быть отнесен этот запрос на сопровождение?

  • Выполните оценку влияния выполнения этого запроса.

О10.2. Приведите примеры возможных корректирующих, адаптивных и упре­ждающих изменений для игры Встреча.

О10.3. В каких случаях из перечисленных далее может потребоваться реин­жиниринг? Объясните.

  • Преобразование модели банковских операций в автоматизированную сис­тему безопасности банка.

  • Расширение модели банковских операций с учетом перемещений персона­ла службы безопасности.

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

Упражнения в команде.

К10.1 (Сопровождение.)

  1. Получить спецификации от двух других команд того же класса. Предло­жить по крайней мере одно изменение каждого типа: исправление, адапта­ция, усовершенствование и упреждение.

  2. Другая команда должна выдвинуть аналогичные предложения к вашему проекту. Выполните оценку, влияния предложенных изменений на ваш проект.

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

  4. Реализуйте, протестируйте и оцените свои изменения.

Критерии оценки.

  1. Соответствие предложенных изменений указанному типу («Отлично» – точное соответствие).

  2. Полнота оценки влияния («Отлично» – раскрыты все возможные аспекты влияния).

  3. Качество тестирования изменений («Отлично» – все изменения тщатель­но протестированы).

Ответы.

П10.1. Сопровождение программы – это ее обслуживание после поставки за­казчику.

П10.2. Исправление (коррекция и адаптация) и усовершенствование (улуч­шение и упреждение).

П10.4. Оценка влияния – выявление артефактов, которые будут затронуты предлагаемым изменением.

П10.6. Одна из возможностей – изменение унаследованного приложения и до­бавление нового кода. Вторая возможность – вызов унаследованного приложе­ния напрямую из нового. Третья возможность – создание обертки для унаследо­ванного приложения (снабжение его адекватным интерфейсом) и использование его функциональности в новом приложении через этот интерфейс.

П10.7. Реинжиниринг существующего приложения – это его перепроектиро­вание, масштаб которого превосходит мелкие изменения, но не достигает уровня.

0