Спиральная модель

Спиральная модель, предложенная Барри Боэмом в 1988 году, стала существенным прорывом в понимании природы разработки ПО. Она представляет собой процесс разработки программного обеспечения, сочетающий в себе как проектирование, делающая упор на начальные этапы жизненного цикла: анализ и проектирование. Отличительной особенностью этой модели является специальное внимание рискам, влияющим на организацию жизненного цикла. Боэм формулирует десять наиболее распространённых (по приоритетам) рисков: Дефицит специалистов. Нереалистичные сроки и бюджет. Реализация несоответствующей функциональности.

Разработка неправильного пользовательского интерфейса. «Золотая сервировка», перфекционизм, ненужная оптимизация и оттачивание деталей. Непрекращающийся поток изменений. Нехватка информации о внешних компонентах, определяющих окружение системы или вовлечённых в интеграцию. Недостатки в работах, выполняемых внешними (по отношению к проекту) ресурсами. Недостаточная производительность получаемой системы. «Разрыв» в квалификации специалистов разных областей знаний. \\\Большая часть этих рисков связана с организационными и процессными аспектами взаимодействия специалистов в проектной команде. Каждый виток спирали соответствует созданию фрагмента или версии программного обеспечения, на нем уточняются цели и характеристики проекта, определяется его качество и планируются работы следующего витка спирали. Таким образом углубляются и последовательно конкретизируются детали проекта и в результате выбирается обоснованный вариант, который доводится до реализации.

Каждый виток разбит на 4 сектора:*оценка и разрешение рисков,*определение целей,*разработка и тестирование,*планирование. На каждом витке спирали могут применяться разные модели процесса разработки ПО. В конечном итоге на выходе получается готовый продукт. Модель сочетает в себе возможности модели прототипирования и водопадной модели. Неполное завершение работ на каждом этапе позволяет переходить на следующий этап, не дожидаясь полного завершения работы на текущем. Главная задача— как можно быстрее показать пользователям системы работоспособный продукт, тем самым активизируя процесс уточнения и дополнения требований.

Основная проблема спирального цикла — определение момента перехода на следующий этап. Для ее решения необходимо ввести временные ограничения на каждый из этапов жизненного цикла. Переход осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. План составляется на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков. Одним из возможных подходов к разработке программного обеспечения в рамках спиральной модели жизненного цикла является получившая в последнее время широкое распространение методология быстрой разработки приложений RAD (Rapid Application Development). Под этим термином обычно понимается процесс разработки программного обеспечения, содержащий 3 элемента: небольшую команду программистов (от 2 до 10 человек);короткий, но тщательно проработанный производственный график (от 2 до 6 месяцев);повторяющийся цикл, при котором разработчики, по мере того, как приложение начинает обретать форму, запрашивают и реализуют в продукте требования, полученные через взаимодействие с заказчиком.

Спиральная модель ориентирована на большие, дорогостоящие и сложные проекты.

Достоинства спиральной модели:

  • наиболее реально (в виде эволюции) отображает разработку программного обеспечения;
  • позволяет явно учитывать риск на каждом витке эволюции разработки;
  • включает шаг системного подхода в итерационную структуру разработки;
  • использует моделирование для уменьшения риска и совершенствования программного изделия.

Недостатки спиральной модели:

  • новизна (отсутствует достаточная статистика эффективности модели);
  • повышенные требования к заказчику;
  • трудности контроля и управления временем разработки.
Смотрите также
Квалификационные требования к менеджерам проекта

Квалификационные требования к менеджерам проекта

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

Подробнее
Анализ проекта (стоимостные характеристики)

Анализ проекта (стоимостные характеристики)

В зависимости от этапа жизненного цикла проекта и целей оценки применяют различные виды и методы оценки стоимости проекта....

Подробнее
Обзор и характеристика программных средств

Обзор и характеристика программных средств

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

Подробнее