Каскадный жизненный цикл
Модели жизненного цикла ПС
При классическом жизненном цикле ПО (каскадная или водопадная модель) разработка рассматривается как последовательность этапов, в которой переход на следующий, иерархически нижний этап происходит только после полного завершения работ на текущем этапе.
Рис. 1.1.Классический жизненный цикл разработки ПО
Характеристика основных этапов:
Разработка начинается на системном уровне и проходит через анализ, проектирование, кодирование, тестирование и сопровождение. При этом моделируются действия стандартного инженерного цикла.
Системный анализ задает роль каждого элемента в компьютерной системе и взаимодействие элементов друг с другом. Поскольку ПО является частью большой системы, то анализ начинается с определения требований ко всем системным элементам и назначения подмножества этих требований ПО.
На этапе системного анализа начинается решение задачи планирования проекта ПО. В ходе планирования проекта определяются:
- объем проектных работ и их риск,
- необходимые трудозатраты,
- формируются рабочие задачи и план-график работ.
Анализ требований относится к программному элементу – уточняются и детализируются функции ПО, его характеристики и интерфейс.
Все определения документируются в спецификации анализа. На этапе анализа требований завершается решение задачи планирования проекта.
Проектирование состоит в создании следующих представлений:
- архитектуры ПО;
- модульной структуры ПО;
- алгоритмической структуры ПО;
- структуры данных;
- входного и выходного интерфейса (входных и выходных форм данных).
Исходные данные для проектирования содержатся в спецификации анализа.
В ходе проектирования выполняется трансляция требований к ПО во множество проектных представлений.
При решении задач проектирования основное внимание уделяется качеству будущего программного продукта.
Кодирование состоит в переводе результатов проектирования в текст на языке программирования.
Тестирование – выполнение программы для выявления дефектов в функциях, логике и форме реализации программного продукта.
Сопровождение - это внесение изменений в эксплуатируемое ПО.
Цели изменений:
- исправление ошибок;
- адаптация к изменениям внешней для ПО среды;
- усовершенствование ПО по требованиям заказчика.
Сопровождение ПО состоит в повторном применении каждого из предшествующих шагов (этапов) жизненного цикла к существующей программе, но не в разработке новой программы.
Достоинства классического жизненного цикла:
- дает план и временной график по всем этапам проекта,
- упорядочивает ход конструирования.
Недостатки классического жизненного цикла:
- реальные проекты часто требуют отклонения от стандартной последовательности шагов;
- цикл основан на точной формулировке исходных требований к ПО (реально в начале проекта требования заказчика определены лишь частично);
- результаты проекта доступны заказчику только в конце работы.