Каскадная (водопадная, последовательная) модель жизненного цикла

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

При каскадном (водопадном) ЖЦ считается, что

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

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

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

Каскадная (водопадная, последовательная) модель жизненного цикла - student2.ru

Рис.5.2. Каскадная модель жизненного цикла

Условия применения:

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

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

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

Модификации каскадной модели:

- итерационная модель жизненного цикла

- V-образная модель жизненного цикла.

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

 
  Каскадная (водопадная, последовательная) модель жизненного цикла - student2.ru

Рис. 5.3. Классическая итерационная модель.

В V-образной модели каждая последующая фаза начинается по завершению получения результативных данных от предыдущей фазы. Модель демонстрирует комплексный подход к определению фаз процесса разработки ПО. В ней подчеркнуты взаимосвязи, существующие между аналитическими фазами и фазами проектирования, которые предшествуют кодированию, после которого следуют фазы тестирования. Пунктирные линии означают, что эти фазы необходимо рассматривать параллельно.

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

 
  Каскадная (водопадная, последовательная) модель жизненного цикла - student2.ru

Рис. 5.4. V –образная модель жизненного цикла разработки ПО.

Условия применения:

- когда вся информация о требованиях доступна заранее;

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

Наши рекомендации