Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОБУЧАЮЩИЙ КУРС Глухова Лилия Александровна 2004.doc
Скачиваний:
178
Добавлен:
15.06.2014
Размер:
894.98 Кб
Скачать

Область применения инкрементной модели

Применениеинкрементной модели целесообразно в следующих случаях:

  1. при разработке проектов, в которых большинство требований можно сформулировать заранее, но часть из них могут быть сформулированы через определенный период времени;

  2. при необходимости быстро поставить на рынок продукт, имеющий функциональные базовые свойства;

  3. для выполнения проектов с большим периодом разработки (один год и более);

  4. при разработке систем с равномерным распределением важности функциональных свойств;

  5. при разработке проектов с низкой или средней степенью риска;

  6. при выполнении проекта с применением новой технологии;

  7. при разработке проектов, для которых разработка системы за один цикл связана с большой степенью риска;

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

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

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

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

На рис.2.10 приведен вариант классической спиральной модели Боэма, ориентированный на работы процесса разработки, соответствующие СТБ ИСО/МЭК 12207-2003.

Модель поделена на четыре квадранта. В каждый квадрант модели входят основные и вспомогательные действия по разработке продукта или системы. В квадранте 1 – анализ требований, альтернативных вариантов и ограничений – определяются рабочие характеристики, выполняемые функции, стабильность (возможность внесения изменений), аппаратно/программный интерфейс.

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

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

В квадранте 2 – оценка альтернативных вариантов, идентификация и разрешение рисков - выполняется оценка альтернативных вариантов, рассмотренных в предыдущем квадранте; оценка возможных вариантов разрешения рисков. Выполняется прототипирование как основа для работ следующего квадранта.

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

В квадранте 4 - планирование следующей фазы - выполняются действия, связанные с разработкой планов проекта, управления конфигурацией, тестирования, установки системы.

Работа над проектом в соответствии со спиральной моделью, изображенной на рис.5.10, начинается с определения заказчиком потребности в разработке системы или программного продукта (центр квадранта 1).

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

каждой новой версией. В результате получается конечная система (программный продукт).

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

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

Количество итераций модели выбирается в соответствии со сложностью проекта. Работы каждой итерации должны бать адаптированы под конкретный проект.

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