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