V-model

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

Характерной особенностью этой модели считается то, что в ней основное внимание направлено на тестирование ПО, которое находится на ранних стадиях разработки, включая проектирование. Тестирование происходит параллельно с процессом разработки — к примеру, во время написания кода выполняются модульные тесты.

Когда нужно применять V-модель?

  • Если программный продукт нуждается в скрупулезном тестировании, то принципы V-модели (validation and verification) наиболее оправданы в данной ситуации.
  • Для небольших и средних проектов, с четко обозначенными требованиями.
  • При наличии большого количества квалифицированных тестировщиков.

Инкрементная модель

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

Цикл сборки разделен на небольшие и простые модули. Каждый из них проходит тщательную проверку требований, проектирования, написания кода, внедрения и тестирования.

Процесс разработки согласно инкрементной модели начинается с выпуска базовой версии продукта с минимальным функционалом. Затем происходит “нарастание” функций, которые называются “инкременты”. Рабочий процесс длится, пока все запланированные ранее функции не интегрируют в систему.

Итеративная модель

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

Процедура создания функций “по частям” повторяется снова и снова, до завершения согласно утвержденному плану. Работа продолжается до получения работоспособной версии продукта.

На приложенной здесь диаграмме можно увидеть итерационную “разработку” портрета Мона Лизы. В первой итерации вы видите лишь набросок портрета девушки, во второй уже видны цвета, третья итерация становится более детализированной и насыщенной. Процесс завершен.

Если же вспомнить инкрементную модель, то по ней портрет будет написан совершенно иначе — по кусочкам, из отдельных частей.

Примером разработки по итерационной модели может стать распознавание голоса. Научные исследования на эту тему начались давно, сперва — в форме идей, затем началась практическая реализация. Каждая новая итерация улучшала качество распознавания голоса. Однако даже сейчас распознавание нельзя назвать идеальным. Таким образом, задача еще не завершена.

Когда лучше всего использовать итеративную модель?

  • Если требования к системе четко расписаны и всем понятны.
  • Проект по своему объему очень крупный.
  • Главная цель определена, но детали реализации могут изменяться в процессе работы.

Спиральная модель

“Спиральная модель” схожа на инкрементную, но имеет особенность в виде наличия анализа рисков. Ее обычно применяют для критически важных процессов, когда сбой в работе просто недопустим.

В спиральную модель входит четыре этапа работы:

  • составление плана;
  • анализ рисков;
  • работа над конструкцией ПО;
  • проверка результата и переход к новому этапу.

CI/CD

Continuous Integration (непрерывная интеграция) и Continuous Delivery (непрерывная поставка). Позволяет обеспечить последовательную и автоматизированную сборку, упаковку и тестирование приложений. CI/CD является распространенной DevOps-практикой.

undefined
3
Опрос
null,  15 уровень,  6 лекция
недоступен
null
Методологии разработки