Каскадная модель
| Процесс разработки ПО | |
| Шаги процесса | |
|---|---|
|
Анализ • Проектирование • Реализация • Тестирование • Внедрение • Сопровождение |
|
| Модели / Методы | |
|
Agile (XP, Lean, Scrum и др.) • Cleanroom • Итеративная (OpenUP) • RAD • RUP • MSF • Спиральная • Каскадная • V-Model • Dual Vee Model • DSDM |
|
| Сопутствующие дисциплины | |
|
Конфигурационное управление • Документирование • Управление проектами • Управление требованиями |
|
Каскадная модель (англ. waterfall model) — модель процесса разработки программного обеспечения, в которой процесс разработки выглядит как поток, последовательно проходящий фазы анализа требований, проектирования, реализации, тестирования, интеграции и поддержки. В качестве источника названия часто указывают статью, опубликованную У. У. Ройсом (W. W. Royce) в 1970 году; забавно, что сам Ройс использовал итеративную модель разработки.
Содержание |
[править] Содержание модели
В 1970 году в своей статье Ройс описал в виде концепции то, что сейчас принято называть «каскадная модель», и обсуждал недостатки этой модели. Там же он показал как эта модель может быть доработана до итеративной модели.
В оригинальной каскадной модели Ройса, следующие фазы шли в таком порядке:
- Определение требований
- Проектирование
- Конструирование (также «реализация» либо «кодирование»)
- Интеграция
- Тестирование и отладка (также «верификация»)
- Инсталляция
- Поддержка
Следуя каскадной модели, разработчик переходит от одной стадии к другой строго последовательно. Сначала полностью завершается этап «определение требований», в результате чего получается список требований к ПО. После того как требования полностью определены, происходит переход к проектированию, в ходе которого создаются документы, подробно описывающие для программистов способ и план реализации указанных требований. После того как проектирование полностью выполнено, программистами выполняется реализация полученного проекта. На следующей стадии процесса происходит интеграция отдельных компонентов, разрабатываемых различными командами программистов. После того как реализация и интеграция завершены, производится тестирование и отладка продукта; на этой стадии устраняются все недочёты, появившиеся на предыдущих стадиях разработки. После этого программный продукт внедряется и обеспечивается его поддержка — внесение новой функциональности и устранение ошибок.
Тем самым, каскадная модель подразумевает, что переход от одной фазы разработки к другой происходит только после полного и успешного завершения предыдущей фазы, и что переходов назад либо вперёд или перекрытия фаз — не происходит.
Тем не менее, существуют модифицированные каскадные модели (включая модель самого Ройса), имеющие небольшие или даже значительные вариации описанного процесса.
[править] Критика каскадной модели и гибридные методологические решения
Методику «Каскадная модель» довольно часто критикуют за недостаточную гибкость и объявление самоцелью формальное управление проектом в ущерб срокам, стоимости и качеству.[1] Тем не менее, при управлении большими проектами формализация часто являлась очень большой ценностью, так как могла кардинально снизить многие риски проекта и сделать его более прозрачным. Поэтому даже в PMBOK 3-ей версии формально была закреплена только методика «каскадной модели» и не были предложены альтернативные варианты, известные как итеративное ведение проектов.
Начиная с PMBOK 4-ой версии удалось достичь компромисса между методологами, приверженными формальному и поступательному управлению проектом, с методологами, делающими ставку на гибкие итеративные методы.[2] Таким образом, начиная с 2009 года, формально Институтом Проектного Менеджмента (PMI) предлагается как стандарт гибридный вариант методологии управления проектами, сочетающий в себе как плюсы от методики «Водопада», так и достижения итеративных методологов.
[править] См. также
[править] Примечания
[править] Ссылки
| Это заготовка статьи о программном обеспечении. Вы можете помочь проекту, исправив и дополнив её. |
|
|
|
|---|---|
| Известные деятели |
Кент Бек (англ.) • Гради Буч • Фред Брукс • Barry Boehm • Уорд Каннингем • Оле-Йохан Даль • Том Демарко • Эдсгер Вибе Дейкстра • Дональд Кнут • Мартин Фаулер • Чарльз Энтони Ричард Хоар • Watts Humphrey • Майкл Джексон • Ивар Якобсон • Craig Larman • James Martin • Bertrand Meyer • David Parnas • Winston W. Royce • James Rumbaugh • Никлаус Вирт • Эдвард Йордан • Стив Макконнелл |
| Процесс | |
| Концепции | |
| Направления | |
| Модели разработки |
Гибкая методология разработки • Cleanroom • CASE • Итеративная разработка • RUP • OpenUP • RAD • Scrum • MSF • Спиральная модель • Модель водопада • XP • V-Model • Dual Vee Model • DSDM |
| Другие модели |
CMM • CMMI • Модель данных • Function model • IDEF • Information model • Metamodeling • Object model • View model • UML |
| Прочее | |