~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ E7553FE0B54C6183AB1E6859CA91BEC7__1717027560 ✰
Заголовок документа оригинал.:
✰ Waterfall model - Wikipedia ✰
Заголовок документа перевод.:
✰ Модель водопада — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/Waterfall_model ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/e7/c7/e7553fe0b54c6183ab1e6859ca91bec7.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/e7/c7/e7553fe0b54c6183ab1e6859ca91bec7__translat.html ✰
Дата и время сохранения документа:
✰ 16.06.2024 09:03:14 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 30 May 2024, at 03:06 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

Модель водопада — Википедия Jump to content

Модель водопада

Из Википедии, бесплатной энциклопедии

Водопадная модель представляет собой разбиение деятельности по разработке на линейные последовательные этапы, то есть они передаются друг другу, где каждый этап зависит от результатов предыдущего и соответствует специализации задач. [1] Подход характерен для определенных областей инженерного проектирования . В разработке программного обеспечения , [1] он, как правило, относится к числу менее итеративных и гибких подходов, поскольку прогресс течет в основном в одном направлении (нисходящий, как водопад ) через этапы концепции, инициации, анализа , проектирования , строительства , тестирования , развертывания и обслуживания . [2] Водопадная модель — это самый ранний подход SDLC , который использовался при разработке программного обеспечения. [3]

Модель развития водопада зародилась в обрабатывающей и строительной отраслях. [ нужна цитата ] где высокоструктурированная физическая среда означала, что изменения в конструкции стали непомерно дорогими гораздо раньше в процессе разработки. [ нужна цитата ] Когда этот метод впервые был принят для разработки программного обеспечения, не существовало признанных альтернатив творческой работе, основанной на знаниях. [4]

История [ править ]

Первая известная презентация, описывающая использование таких этапов в разработке программного обеспечения, была проведена Гербертом Д. Бенингтоном на Симпозиуме по передовым методам программирования для цифровых компьютеров 29 июня 1956 года. [5] Эта презентация была посвящена разработке программного обеспечения для SAGE . В 1983 году статья была переиздана с предисловием Бенингтона, в котором он объяснял, что этапы были намеренно организованы в соответствии со специализацией задач, и указывал, что процесс на самом деле не выполнялся строго сверху вниз, а зависел от прототипа. . [6] [ нужен лучший источник ]

Хотя термин «водопад» в статье не используется, первая формальная подробная диаграмма процесса, позже известная как «водопадная модель», часто [ нужна цитата ] цитируется как статья Уинстона Ройса 1970 года . [7] [8] [9] Однако он также считал, что у него есть серьезные недостатки, связанные с тем, что тестирование проводилось только в конце процесса, который он назвал «рискованным и влекущим за собой неудачу». [7] В оставшейся части его статьи представлены пять шагов, которые, по его мнению, были необходимы для «устранения большинства рисков развития», связанных с неизменным водопадным подходом. [7]

Пять дополнительных шагов Ройса (которые включали написание полной документации на различных стадиях разработки) так и не получили широкого распространения, но его диаграмма того, что он считал ошибочным процессом, стала отправной точкой при описании «водопадного» подхода. [10] [ нужен лучший источник ]

Самое раннее использование термина «водопад», возможно, было в статье Белла и Тайера 1976 года. [11] [ нужен лучший источник ]

В 1985 году Министерство обороны США приняло каскадную модель в стандарте DOD-STD-2167 для работы с подрядчиками по разработке программного обеспечения. Этот стандарт относится к итерациям разработки программного обеспечения. [12] к « последовательным этапам цикла разработки программного обеспечения » и заявил, что « подрядчик должен реализовать цикл разработки программного обеспечения, который включает следующие шесть этапов: анализ требований к программному обеспечению, предварительное проектирование, детальное проектирование, кодирование и модульное тестирование, интеграцию и тестирование ». . [12] [13]

Модель [ править ]

Хотя Ройс никогда не рекомендовал и не описывал модель водопада. [ нужна цитата ] , жесткое соблюдение следующих этапов им подвергается критике:

  1. к системе и Требования программному обеспечению : отражены в документе с требованиями к продукту.
  2. Анализ : в результате создаются модели , схемы и бизнес-правила.
  3. Проектирование : создание архитектуры программного обеспечения.
  4. Кодирование : разработка , проверка и интеграция программного обеспечения.
  5. Тестирование : систематическое обнаружение и устранение дефектов .
  6. Операции : установка , миграция , поддержка и обслуживание полных систем.

Таким образом, водопадная модель утверждает, что переходить к определенной фазе следует только после того, как предыдущая фаза рассмотрена и проверена.

Однако различные модифицированные каскадные модели (включая окончательную модель Ройса) могут включать небольшие или существенные вариации этого процесса. [7] Эти варианты включали возврат к предыдущему циклу после того, как дефекты были обнаружены на последующих этапах, или полный возврат к этапу проектирования, если последующие этапы считались недостаточными.

Подтверждающие аргументы [ править ]

Время, потраченное на ранних стадиях цикла производства программного обеспечения, может снизить затраты на более поздних этапах. Например, проблему, обнаруженную на ранних стадиях (например, при составлении спецификации требований), исправить дешевле, чем ту же ошибку, обнаруженную позже (в 50–200 раз). [14]

В обычной практике каскадные методологии приводят к составлению графика проекта, в котором 20–40 % времени уделяется первым двум этапам, 30–40 % времени — кодированию, а остальное — тестированию и внедрению. Фактическая организация проекта должна быть высокоструктурированной. Большинство средних и крупных проектов включают подробный набор процедур и средств контроля, которые регулируют каждый процесс проекта. [15] [ не удалось пройти проверку ]

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

Водопадная модель обеспечивает структурированный подход; сама модель развивается линейно через дискретные, легко понятные и объяснимые фазы и, следовательно, ее легко понять; он также обеспечивает легко идентифицируемые вехи в процессе разработки. Возможно, именно по этой причине водопадная модель используется в качестве начального примера модели разработки во многих учебниках и курсах по разработке программного обеспечения. [17]

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

Критика [ править ]

Клиенты могут не знать точно, каковы их требования, прежде чем они увидят работающее программное обеспечение, и поэтому изменят свои требования, что приведет к перепроектированию, переработке и повторному тестированию, а также к увеличению затрат. [18]

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

Организации могут попытаться решить проблему отсутствия конкретных требований со стороны клиентов, нанимая системных аналитиков для изучения существующих ручных систем и анализа того, что они делают и как их можно заменить. Однако на практике трудно провести строгое разделение между системным анализом и программированием. [20] Это связано с тем, что реализация любой нетривиальной системы почти неизбежно выявит проблемы и крайние случаи, которые системный аналитик не учел.

В ответ на очевидные проблемы с чистой каскадной моделью были представлены модифицированные каскадные модели, такие как «Сашими (водопад с перекрывающимися фазами), водопад с подпроектами и водопад со снижением риска». [14]

Некоторые организации, такие как Министерство обороны США, теперь открыто отдают предпочтение методологиям каскадного типа, начиная с MIL-STD-498, выпущенного в 1994 году, который поощряет эволюционное приобретение , а также итеративную и поэтапную разработку . [21]

водопада Модифицированные модели

В ответ на очевидные проблемы с «чистой» водопадной моделью было введено множество «модифицированных водопадных моделей». Эти модели могут устранить некоторые или все критические замечания в адрес «чистой» водопадной модели.

К ним относятся модели быстрого развития, которые Стив МакКоннелл называет «модифицированными водопадами»: [14] «Модель сашими» Питера ДеГрейса (водопад с перекрывающимися фазами), водопад с подпроектами и водопад со снижением рисков. Также существуют другие комбинации моделей разработки программного обеспечения, такие как «модель поэтапного водопада». [22]

Последняя модель Ройса [ править ]

Последняя модель Ройса

Окончательная модель Уинстона В. Ройса , его предполагаемое улучшение первоначальной «водопадной модели», продемонстрировала, что обратная связь может (должна и часто будет) вести от тестирования кода к проектированию (поскольку тестирование кода выявляет недостатки в проекте) и от проектируйте обратно в соответствии со спецификацией требований (поскольку проблемы проектирования могут потребовать удаления конфликтующих или иным образом невыполнимых/неразрабатываемых требований). В той же статье Ройс также выступал за большое количество документации, выполняя работу «по возможности дважды» (чувство, подобное мнению Фреда Брукса , известного автором «Мифического человеко-месяца», влиятельной книги по управлению программными проектами , который выступал за планирование «выбрось один») и максимально вовлекая клиента (чувство, похожее на чувство экстремального программирования ).

Заметки Ройса об окончательной модели:

  1. Завершите разработку программы до начала анализа и кодирования.
  2. Документация должна быть актуальной и полной.
  3. Если возможно, выполните работу дважды.
  4. Тестирование должно планироваться, контролироваться и отслеживаться.
  5. Вовлекайте клиента

См. также [ править ]

Ссылки [ править ]

  1. ^ Перейти обратно: а б Петерсен, Кай; Волин, Клаас; Бака, Деян (2009). «Модель водопада в крупномасштабном развитии» . В Бомариусе, Фрэнк; Ойво, Маркку; Яринг, Пяйви; Абрахамссон, Пекка (ред.). Улучшение процесса разработки программного обеспечения, ориентированного на продукт . Конспекты лекций по обработке деловой информации. Том. 32. Берлин, Гейдельберг: Шпрингер . стр. 386–400. Бибкод : 2009pfsp.book..386P . дои : 10.1007/978-3-642-02152-7_29 . ISBN  978-3-642-02152-7 .
  2. ^ Том Гилб . «Эволюционное развитие против «модели водопада» ». ACM SIGSOFT Заметки по разработке программного обеспечения . 10 (3): 49–61. дои : 10.1145/1012483.1012490 . Значок открытого доступа
  3. ^ Линда Шеррелл. «Модель водопада». Энциклопедия наук и религий (АЛК Рунехов; Л. Овьедо (ред.)) . Дордрехт , Нидерланды: Springer : 2343–2344. дои : 10.1007/978-1-4020-8265-8_200285 .
  4. ^ Андреас П. Шмидт; Кристин Кунцманн (16 сентября 2014 г.). Проектирование для развития знаний: от программного обеспечения, основанного на знаниях, до поддержки развития знаний . i-KNOW '14: Материалы 14-й Международной конференции по технологиям знаний и бизнесу, управляемому данными. АКМ . стр. 1–7. дои : 10.1145/2637748.2638421 .
  5. ^ США, Консультативная группа ВМС по математическим вычислениям (29 июня 1956 г.), Симпозиум по передовым методам программирования для цифровых компьютеров , [Вашингтон, округ Колумбия]: Управление военно-морских исследований, Военно-морское ведомство, OCLC   10794738
  6. ^ Бенингтон, Герберт Д. (1 октября 1983 г.). «Производство больших компьютерных программ» (PDF) . IEEE Анналы истории вычислений . 5 (4). Отдел образовательной деятельности IEEE: 350–361. дои : 10.1109/MAHC.1983.10102 . S2CID   8632276 . Проверено 21 марта 2011 г. Архивировано 18 июля 2011 года в Wayback Machine .
  7. ^ Перейти обратно: а б с д Ройс, Уинстон (1970), «Управление разработкой больших программных систем» (PDF) , Proceedings of IEEE WESCON , 26 (август): 1–9
  8. ^ «Водопад» . Бременский университет – математика и информатика .
  9. ^ Аббас, Нура; Гравелл, Эндрю М.; Уиллс, Гэри Б. (2008). «Исторические корни гибких методов: откуда взялось «гибкое мышление»?» (PDF) . В Абрахамссоне, Пекка; Баскервиль, Ричард; Конбой, Киран; Фицджеральд, Брайан; Морган, Лоррейн; Ван, Сяофэн (ред.). Гибкие процессы в программной инженерии и экстремальном программировании . Конспекты лекций по обработке деловой информации. Том. 9. Берлин, Гейдельберг: Шпрингер . стр. 94–103. дои : 10.1007/978-3-540-68255-4_10 . ISBN  978-3-540-68255-4 .
  10. ^ Конрад Вайсерт, Методика водопада: такого не существует!
  11. ^ Белл, Томас Э. и Т.А. Тайер. Требования к программному обеспечению: действительно ли они являются проблемой? Материалы 2-й международной конференции по программной инженерии. Издательство IEEE Computer Society, 1976.
  12. ^ Перейти обратно: а б DOD-STD-2167 - Военный стандарт: Разработка программного обеспечения оборонных систем» . Министерство обороны Соединенных Штатов Америки. 04.06.1985. стр. 11.
  13. ^ «Разработка программного обеспечения для системы военной обороны» (PDF) .
  14. ^ Перейти обратно: а б с МакКоннелл, Стив (1996). Быстрая разработка: укрощение диких графиков работы программного обеспечения . Майкрософт Пресс. ISBN  1-55615-900-5 .
  15. ^ «Модель разработки программного обеспечения «Водопад» . 5 февраля 2014 года . Проверено 11 августа 2014 г.
  16. ^ Арцисферные технологии (2012). «Учебное пособие: жизненный цикл разработки программного обеспечения (SDLC)» (PDF) . Проверено 13 ноября 2012 г.
  17. ^ Хьюи, Дуглас (2009). «Сравнение традиционного системного анализа и проектирования с гибкими методологиями» . Университет Миссури — Сент-Луис . Проверено 11 августа 2014 г.
  18. ^ Парнас, Дэвид Л.; Клементс, Пол К. (1986). «Процесс рационального проектирования: как и зачем его подделывать» (PDF) . Транзакции IEEE по разработке программного обеспечения (2): 251–257. дои : 10.1109/TSE.1986.6312940 . S2CID   5838439 . Проверено 21 марта 2011 г.
  19. ^ МакКоннелл, Стив (2004). Код завершен, 2-е издание . Майкрософт Пресс. ISBN  1-55615-484-4 .
  20. ^ Энсменгер, Натан (2010). Компьютерные мальчики берут верх . МТИ Пресс. п. 42 . ISBN  978-0-262-05093-7 .
  21. ^ Ларман, Крейг; Базили, Виктор (2003). «Итеративная и поэтапная разработка: краткая история» . IEEE-компьютер . 36 (6) (ред. июня): 47–56. дои : 10.1109/MC.2003.1204375 . S2CID   9240477 .
  22. ^ «Методология:методы проектирования» .

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: E7553FE0B54C6183AB1E6859CA91BEC7__1717027560
URL1:https://en.wikipedia.org/wiki/Waterfall_model
Заголовок, (Title) документа по адресу, URL1:
Waterfall model - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)