59
При использовании итерационной модели жизненного цикла разработки
программного обеспечения существует возможность устранения недостатков
проектирования и программирования на более поздних стадиях при частичном
возврате на предыдущие стадии. При этом чем позже будет выявлена ошибка, тем
дороже ее исправление. Если стоимость усилий, необходимых для обнаружения и
устранения ошибок на стадии написания кода, принять за единицу, то стоимость
выявления и устранения ошибки на стадии выработки требований будет в 5-10 раз
меньше, а стоимость выявления и устранения ошибки на стадии сопровождения – в 20
раз больше.
В такой ситуации важным становится этап формулирования требований в
разрабатываемой АИС, составление спецификаций технического задания и создание
архитектуры системы. Системные аналитики несут личную ответственность за все
последующие изменения в проектных решениях. Важно учитывать, что объем
проектной документации может исчисляться тысячами страниц, а число согласований
документов может быть огромным. В связи с этим многие проекты так никогда и не
покидают этап планирования, впав в «паралич анализа». Одним из возможных путей
исключения подобных ситуаций является макетирование (прототипирование)
программных средств.
Спиральная модель жизненного цикла программного продукта является
классическим примером применения эволюционной стратегии разработки
программных средств. Модель была разработана Б. Боэмом в 1988. Основу модели
составляют лучшие свойства каскадной модели жизненного цикла с учетом процесса
макетирования, к которым был добавлен новый элемент – анализ риска, который
отсутствовал в этих моделях. Спиральная модель состоит из четырех этапов, которые
представлены четырьмя квадрантами спирали. Структура спиральной модели
представлена на рисунке 19.
Рассмотрим этапы спиральной модели:
1. На этапе планирования осуществляется определение целей, вариантов и
ограничений проекта.
2. На этапе анализа риска осуществляется анализ вариантов и
распознавание/выбор риска проекта.