Приложение 1 605
Спиральная модель применяется для сложных проектов или в тех случаях,
когда проблемы проекта недостаточно понятны.
Характеристики и преимущества спиральной модели перечислены в таблице
1.7, а в таблице 1.8 - основные риски, связанные с применением модели, и условия,
при которых ее лучше применять.
Таблице 1.7. Характеристики спиральной модели
Характеристики Преимущества
Первый прототип моделирует концепцию. Резуль-
татом является план требований. Перед переходом
к разработке следующего прототипа выполняется
анализ риска.
Неопределенности в требованиях
пользователя, требованиях к ПО и
проекте моделируются до их реа-
лизации в коде
Второй прототип моделирует требования к ПО.
Результатом является план разработки. Перед пере-
ходом к разработке следующего прототипа выпол-
няется анализ риска.
Минимизируются ошибки, связан-
ные с отсутствующими, недоста-
точно подробными или противоре-
чивыми требованиями
Третий прототип моделирует проект. В результате
создается интегрированный и протестированный
прототип. Перед переходом к следующей стадии
выполняется анализ риска.
Прототип сохраняется как физиче-
ская модель потребностей пользо-
вателя
Последний прототип (рабочий) используется как
основа для детального проектирования, кодирова-
ния и тестирования.
Промежуточные версии пригодны
для использования
Таблица 1.8. Риски и условия применения спиральной модели
Риски, связанные с выбором модели Когда лучше применять
Все возможности должны быть реали-
зованы сразу
Проект крупный, сложный и требования не
могут быть определены сразу
Проект нельзя естественным образом
разделить на независимые части
Новая технология и требуется ее освоение
Проект можно естественным образом разде-
лить на независимые части
Пользователи не могут четко сформулировать
требования
Требуется ранняя демонстрация возможностей
Дальнейшим развитием этой модели является Win-Win Spiral Model, которая
основана на привлечении к разработке разных категорий участников проекта и оп-
ределении условий успеха (выигрыша) системы или подсистемы, которые обсуж-
даются на каждой итерации. Возможные альтернативные решения должны оцени-
ваться по отношению к целям и ограничениям проекта.
Модель эволюционного прототипирования. Эта модель основана на приме-
нении эволюционного прототипирования в рамках всего ЖЦ разработки (а не толь-
ко для моделирования требований). В литературе она часто называется моделью
быстрой разработки приложений (RAD от Rapid Application Development). Моде-
лирование включает следующие шаги: