Сравнительный анализ каскадной и спиральной моделей разработки программного обеспечения
Выполнил : Шумлянский Михаил Сергеевич
Воронеж 2003
Содержание
Введение ………………………………………………………………………………………………..2
Водопадная модель процесса разработки ……………………………………………………………..3
Спиральная модель процесса разработки ……………………………………………………………..4
Итерации по спирали ………………………………………………………………………………4
Возможно вы искали - Реферат: Сравнительный анализ развития компьютеров в США и на Украине
Общие характеристики этапов разработки программного обеспечения …………………………..5
Этап планирования и анализа требований …………………………………………….5
Этап разработки ………………………………………………………………………………6
Реализация ………………….…………………………………………………………………...10
Внедрение ………………………………………………………………………………………10
Похожий материал - Реферат: Сравнительный анализ языков программирования JavaScript и VBScript
Сопровождение и Эксплуатация ……………………………………………………………………..10
Заключение ………………………………………………………………………………………………..11
Список источников ……………………………………………………………………………………….11
Введение
В настоящее время просматривается тенденция в сторону увеличения объема работ, связанных с разработкой программного обеспечения по сравнению с работами, выполнение которых позволит получить аппаратные средства ЭВМ.
В основе деятельности по созданию и использованию программного обеспечения лежит понятие жизненного цикла. В общем случае различают понятия жизненного цикла программного обеспечения и технологического процесса его разработки. Более четко различия между данными понятиями просматривается в отношении программных средств. Жизненный цикл является моделью создания и использования программного обеспечения, отражающей его различные состояния, начиная с момента возникновения необходимости в данном ПО и заканчивая моментом его полного выхода из употребления у пользователей.
Существует несколько моделей жизненного цикла. Традиционно выделяют следующие основные этапы жизненного цикла :
Очень интересно - Реферат: Средства защиты данных
· стратегическое планирование; анализ требований;
· проектирование (предварительное и детальное);
· кодирование (программирование);
· тестирование и отладка;
· эксплуатация и сопровождение.
Под моделью обычно понимается структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач на протяжении жизненного цикла. Из существующих в настоящее время моделей наиболее распространены две: каскадная и спиральная.
Каждому этапу соответствуют определенный результат и набор документации, являющейся исходными данными для следующего этапа. В заключение каждого этапа производится верификация документов и решений с целью проверки их соответствия первоначальным требованиям заказчика.
Водопадная модель процесса разработки
![]() |
? ???????? 80-? ????? ?????????? ??????????????? ??????? "??????????" (waterflow) ??? "?????????" ??????? ???????? ???????????? ???????????. ????? "???????????" ???????? ????????? ?? ???. 1.1. ??? ???????? ??????????????? ???????? ????????? ???? ?????????? ?? ?????, ?????? ??????? ? ?????? ????? ?? ????????? ?????????? ?????? ????? ????, ??? ????? ????????? ????????? ?????? ?? ???????. ?????? ???? ??????????? ???????? ??????? ????????? ????????????, ??????????? ??? ????, ????? ?????????? ????? ???? ?????????? ?????? ???????? ?????????????.
Рис 1.1. "Водопадный" процесс
Применение "водопадного" процесса эффективно для систем, для которых в самом начале разработки можно достаточно точно и полно сформулировать все требования, с тем чтобы предоставить разработчикам свободу реализовать их как можно лучше с технической точки зрения. В эту категорию попадают сложные расчетные системы, системы реального времени и другие подобные задачи. Однако, в процессе использования этого подхода обнаружился ряд его недостатков, вызванных прежде всего тем, что реальный процесс создания программных систем никогда полностью не укладывался в такую жесткую схему. В процессе создания ПО постоянно возникала потребность в возврате к предыдущим этапам и уточнении или пересмотре ранее принятых решений. В результате реальный процесс создания систем принимал следующий вид (рис. 1.2):
![]() |
Рис 1.2. Реальный процесс "водопадной" схемы
Данный процесс обладает рядом существенных недостатков, основным из которых является, пожалуй, то, что требования к создаваемой системе "заморожены" в виде технического задания на все время ее создания. Таким образом, пользователи могут внести свои замечания только после того, как работа над системой будет полностью завершена. В случае неточного изложения требований или их изменения в течение длительного периода создания системы, пользователи получают систему, не удовлетворяющую их потребностям.
Спиральная модель процесса разработки
![]() |
? ???????? ????? ???????????, ??? ?? ?????? ???????????? ?????????? ???????? ?? ????? ????? ?????????? ??? ?????????? ? ???????????? ????????. ??? ??????????? ?????? ???????? ?? ?????? ???????? 80-? ????? ??? ????????? "??????????" ??????? ???????? ???????? (???. 1.3), ???????? ???? ?? ????? ??????? ? ??????????????. ?????????? ??????? ?? ?????? ??????????? ?????????? ??????????, ? ????? ??????????? ??????? ????? ??????? ???????????? ???????? ????????? ?????? ???????. ????? ????????? ?????????? ?????? ?????? ?????????? ???? ? ?????????????? ???????, ???????????? ??? ???????? ? ??????????? ?????? ?????????? ????? ???????.
Рис 1.3. Спиральная модель
Вам будет интересно - Реферат: Средства отладки электронных схем
Итерации по спирали
Спиральная модель разработки ПО, в тех или иных версиях используемая во множестве конкретных прикладных методик, построена на следующем шаблоне. Прежде всего в ходе общения с заказчиком определяется набор наиболее важных и критичных возможностей будущей системы. Далее совместными усилиями определяются желаемые сроки для реализации этой базовой функциональности. Формируется план, начинаются работы и отслеживается их выполнение .
В основу спиральной модели заложены две посылки. Многочисленными исследованиями подтверждено, что и заказчик и исполнитель обычно слишком оптимистично относятся к срокам и бюджету, даже при использовании хороших методик оценки объема работ (по функциональным точкам и т. п.). Поэтому результаты таких оценок предлагается увеличивать (ухудшать) достаточно серьезно - примерно на 50%. Кроме того, заказчик обычно слабо представляет архитектуру будущей системы, поэтому ее следует проектировать, закладываясь на открытые технологии и максимально гибкие возможности расширения и наращивания функциональности. Уточнение конкретных требований выполняется итерационно, при этом на каждом витке проектной спирали создается все более точная версия, соответствующая пожеланиям заказчика.
Шесть шагов спиральной модели
1. В процессе общения с заказчиком формируется общее видение проекта, а также описываются функциональные возможности, которые необходимо реализовать в определенные сроки с нужным качеством.
Похожий материал - Реферат: Средства составления и изготовления текстовой информации - сканеры
2. Расставляются приоритеты, задающие порядок реализации основных функциональных возможностей.
3. Согласовываются временные рамки проекта. Часто для этого применяются методики стоимостного прогнозирования . Далее исполнитель решает, сколько функциональных возможностей в соответствии с их приоритетами удастся реализовать в оговоренный срок.
4. На данном этапе определяются архитектура и ядро будущей системы. Это наиболее ответственный момент, так как здесь необходимо учесть пока еще не детализированные полностью требования к проекту - а они вполне могут быть противоречивыми.
Ядро должно представлять собой законченный работающий вариант системы с небольшим набором необходимых возможностей. Не исключено, что заказчик видит архитектуру как жесткую конструкцию и не предусматривает средств ее расширения для обеспечения дополнительной или менее приоритетной функциональности. Поэтому далее определяется способ реализации требований с более низкими приоритетами - это можно делать, например, с помощью встроенного языка сценариев или подключением динамических библиотек, для чего необходимо определить внутренние интерфейсы ядра.


