Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция2.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.06 Mб
Скачать

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

Спиральная модель (80 – 90 годы), прототипная модель, предполагающая постепенное расширение прототипа АИС.

Проектирование в данном случае ведется «сверху – вниз», когда определяется состав функциональных подсистем, общие системные проектные решения (например, организация интегрированной (единой для всего предприятия) Базы Данных (БД), разработка технологии сбора, регистрации, накопления и передачи информации), а затем проводится постановка отдельных задач.

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

Мощность системы может наращиваться сразу по всей спирали или по секторам.

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

Рисунок 8. Спиральная модель жизненного цикла

Версии программного продукта называют прототипами. Каждый виток спирали соответствует созданию фрагмента или версии ПО.

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

При использовании спиральной модели на первый план выходят вопросы взаимодействия интерфейсов программных модулей между собой и с БД. На втором плане – реализация алгоритмов решения задач.

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

Одним из условий обеспечения высокого качества является активное вовлечение заказчика в процесс разработки, что нашло отражение в методологии прототипного проектирования. Ядром этой методологии является совокупность приемов для быстрой разработки приложений RAD (Rapid Application Development) – RAD – технологии.

Данная технология обеспечивает создание на ранней стадии реализации действующей интерактивной модели системы, так называемой системы – прототипа, позволяющей наглядно продемонстрировать пользователю будущую систему (в других моделях он ее видит только на этапе внедрения), уточнить его требования, оперативно модифицировать интерфейсные элементы: формы ввода сообщений, выходные документы, структуру диалога, состав реализуемых функций. Этим реализуется возможность получать замечания и дополнения в процессе проектирования, снижая стоимость (исправление ошибки, совершенной на предыдущем этапе, стоит в 10 раз дороже ошибки текущей) и время разработки и повышая качество системы.

В случае спирального процесса (автор Барри Боэм, 1988) последовательность анализ требований - проектирование - реализация - тестирование выполняется более одного раза.

Для этого может быть несколько причин:

- необходимость предупреждения рисков;

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

Дополнительное преимущество: на каждом витке спирали можно собрать метрические характеристики проекта (трудоемкость затрат, затраты на проект, длительность, документированность). Таким образом, уточняется план-график дальнейшей работы.

Минусы использования спиральной модели:

1. Требуется более искусное управление;

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

3. Трудность в определении момента перехода на следующий этап;

4. Переход осуществляется в соответствии с планом, даже если не все работы выполнены;

5. Слишком большое количество витков потребует увеличения затрат;

Типичный проект, трудоемкость которого оценивается в три человеко-месяца, а продолжительность - в четыре месяца, вероятнее всего, потребует две-три итерации. Затраты на проведение большего числа итераций могут просто перевесить выгоду от дополнительных итераций.

Жизненный цикл при использовании RAD – технологии предполагает активное участие на всех этапах разработки конечных пользователей будущей системы и включает 4 основных стадии информационного инжиниринга:

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

  • проектирование. Пользователи принимают участие в техническом проектировании под руководством специалистов – разработчиков;

  • реализация. Специалисты – разработчики разрабатывают рабочую версию АИС с использование современных языков программирования;

  • внедрение. Специалисты – разработчики обучают пользователей работе в среде новой АИС.

Все приемы для быстрой разработки приложений RAD служат одновременно для обеспечения высокого качества продукта и низкой стоимости разработки. К числу этих приемов относятся:

  • разработка приложений итерациями;

  • необязательность полного завершения работ на каждом из этапов ЖЦ для начала работ на следующем;

  • обязательное вовлечение пользователей в процесс проектирования и построения системы;

  • высокая параллельность работ (чем выше параллельность работ, тем меньше длительность проекта);

  • повторное использование частей проекта;

  • необходимое применение CASE (Computer- Aided (помощник) Software/System Engineering) – средств, обеспечивающих техническую целостность на этапах анализа и проектирования;

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

  • использование автоматических генераторов (мастеров);

  • использование прототипирования, позволяющего полнее выяснить и удовлетворить потребности конечного пользователя;

  • тестирование и развитие проекта, осуществляемые одновременно с разработкой нескольких версий прототипа.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]