Классические модели: Водопадная, V-модель XT, спиральная модель
Этот материал представляет собой определение понятий классических методологий разработки с вопросами для экзаменов, ключевыми компонентами и тегами.
Суть
- Водопадная модель и V-модель XT основаны на планировании и артефактах.
- Спиральная модель управляется рисками и носит итеративный характер: каждый цикл снижает неопределённость через анализ рисков и прототипы.
Краткое описание
Водопадная модель
Последовательные этапы:
- Анализ
- Проектирование
- Реализация
- Тестирование
- Эксплуатация
Требует обширной документации, обратная связь приходит поздно.
V-модель XT
V связывает спецификации (левая сторона) с соответствующими уровнями тестирования (правая сторона):
- Детальное проектирование ↔ Модульное тестирование
- Архитектура/компоненты ↔ Интеграционное тестирование
- Системные требования ↔ Системное тестирование
- Пользовательские/заказчиковские требования ↔ Приёмочное тестирование
Ключевой момент: Tailoring (адаптация ролей и артефактов к особенностям проекта) должна быть обоснована и задокументирована.
Спиральная модель
Управляется рисками: каждый цикл включает цели → риски → прототип/оценку → планирование. Результат - постепенно улучшаемый продукт с активно управляемыми рисками.
Важные моменты для экзаменов
- Водопадная модель: изменения в конце дорого обходятся. При водопадной модели фазы выполняются последовательно. Изменения, выявленные в поздних фазах, часто требуют возврата к предыдущим документам и могут существенно повысить затраты.
- V-модель XT: связь тестов с требованиями и прослеживаемость (классика экзаменов). V-модель XT часто встречается в экзаменационных вопросах. Она связывает каждый уровень спецификации с соответствующим уровнем тестирования и требует полной прослеживаемости качества.
- Tailoring: обязателен в V-модели XT. Tailoring означает адаптацию методологии к особенностям конкретного проекта. Такие адаптации должны быть обоснованы и задокументированы для обеспечения аудируемости и прозрачности.
- Спиральная модель: анализ рисков в каждом цикле, прототипы в центре. Спиральная модель работает циклами. Каждый цикл начинается с выявления и оценки рисков, затем следует разработка прототипа, который эти риски снижает.
- Цепь артефактов: требование → проектирование → тест (прослеживаемость). Прослеживаемость гарантирует, что каждое требование покрыто проектом, реализацией и тестом. Это особенно важно в V-модели XT и в проектах с регуляторными требованиями.
- Gate-обзоры и приёмки. Gate-обзоры - это формальные точки принятия решений между фазами. Приёмки подтверждают, что результат соответствует определённым критериям и следующая фаза может быть запущена.
Ключевые компоненты
- Фазы (Водопадная модель) – Водопадная модель разделяет проект на последовательные фазы: анализ, проектирование, реализацию, тестирование и эксплуатацию. Каждая фаза должна быть завершена до начала следующей.
- Иерархия артефактов (V-модель XT) – V-модель XT определяет различные уровни артефактов, которые создаются в ходе проекта. К ним относятся требования, проектные документы, тестовые случаи и протоколы.
- Соответствие уровней тестирования в V – V-модель связывает каждый уровень спецификации с соответствующим уровнем тестирования. Детальное проектирование проверяется модульными тестами, архитектура - интеграционными тестами, системные требования - системными тестами, а требования заказчика - приёмочными тестами.
- Руководство по Tailoring – Руководство по Tailoring документирует, какие роли, артефакты и деятельность адаптируются или исключаются для конкретного проекта. Это обязательная часть V-модели XT.
- Управление (Gates/вехи) – Gates и вехи - это точки принятия решений, где проверяется, может ли проект перейти к следующей фазе. Они обеспечивают контроль качества и бюджета.
- Анализ рисков (Спиральная модель) – В спиральной модели анализ рисков проводится в каждом цикле. Высокие риски решаются в первую очередь для ранней их минимизации.
- Типы прототипов (осуществимость/архитектура/UI) – Прототипы могут преследовать разные цели. Прототипы осуществимости выясняют технические риски, архитектурные прототипы проверяют общую структуру, UI-прототипы опробуют пользовательский интерфейс.
- Плановые артефакты (проектный/план качества/план тестирования) – Проектные планы, планы качества и планы тестирования документируют, как проект будет выполняться и проверяться. Они особенно важны в V-модели XT и водопадной модели.
- Прослеживаемость – Прослеживаемость связывает требования с проектированием, реализацией и тестами. Она позволяет доказать, что все требования выполнены.
- Управление изменениями (Change Requests) – Change Requests документируют запрашиваемые или необходимые изменения. Они оцениваются, одобряются и включаются в план, чтобы контролировать влияние изменений.
Практический пример (краткий)
Государственная система с внешними интеграциями
Водопадная модель:
- Спецификация -> Проектирование -> Реализация -> Тестирование -> Приёмка
V-модель XT:
- Спецификации слева
- Тесты справа (модульный/интеграционный/системный/приёмочный)
- Документ по Tailoring (например, отсутствие аппаратных артефактов)
Спиральная модель:
- Цикл 1: риск интеграции -> прототип нагрузочного тестирования
- Цикл 2: риск аутентификации -> прототип OAuth
Преимущества и недостатки
Водопадная модель
- Преимущества: простое планирование, чёткие переходы между этапами
- Недостатки: поздняя обратная связь, высокие затраты на изменения
V-модель XT
- Преимущества: высокая доказуемость, явное соответствие тестов требованиям
- Недостатки: объём документации, негибкость без хорошего Tailoring
Спиральная модель
- Преимущества: активное управление рисками, ранние прототипы
- Недостатки: требует большего контроля, сложнее планировать фиксированную цену
Типичные экзаменационные вопросы (с краткими ответами)
- Водопадная модель или V-модель XT? V связывает спецификацию с тестами и требует Tailoring.
- Как читать V? Слева специфицируют, справа проверяют и подтверждают (уровни тестирования).
- Когда применять спиральную модель? При высокой неопределённости, технологических рисках, множественных интеграциях.
- Зачем Tailoring? Адаптация к контексту проекта и обеспечение аудируемости.
Стратегия подготовки
- Нарисовать V и указать на ней уровни тестирования.
- Для каждой модели назвать 2 подходящих сценария применения.
- Потренироваться в кратком обосновании выбора модели (регуляторные требования, темп изменений, риски).
Пример упражнения 1: соответствие уровней тестирования в V
- Детальное проектирование относится к модульному тестированию, так как здесь проверяются отдельные функции или классы.
- Архитектура/компоненты относится к интеграционному тестированию, так как проверяются интерфейсы между компонентами.
- Системные требования относятся к системному тестированию, так как вся система проверяется на соответствие требованиям.
- Пользовательские/заказчиковские требования относятся к приёмочному тестированию, так как заказчик подтверждает приемлемость результата.
Пример упражнения 2: обоснование выбора модели
Сценарий: Внутренний инструмент для обработки данных, который нужно разработать быстро.
Решение: Здесь подходит простая водопадная модель, так как требования ясны и изменения маловероятны.
Сценарий: Медицинское устройство с регуляторными требованиями.
Решение: V-модель XT подходит идеально, так как требуется доказуемость, явное связывание тестов с требованиями и Tailoring.
Сценарий: Проект с неясными технологиями и множеством внешних интеграций.
Решение: Спиральная модель подходит, так как риски можно ранее выявлять и снижать через прототипы.
Практическое задание 1: объясните Tailoring
Задача: поясните, почему Tailoring необходим в V-Modell XT.
Решение: Tailoring требуется, потому что не каждый проект нуждается во всех ролях, продуктах и деятельности обширного V-Modell XT. Адаптация должна быть документирована и обоснована, чтобы сохранить проверяемость и возможность аудита.
Практическое задание 2: нарисуйте V-Modell XT
Задача: изобразите V-Modell XT и подпишите левую и правую стороны.
Решение: левая сторона содержит спецификации: требования пользователя, системные требования, архитектура/компоненты, детальный дизайн. Правая сторона содержит тесты: приёмочный тест, системный тест, интеграционный тест, модульный тест. Чем глубже спускаться в V, тем детальнее становятся спецификация и соответствующий тест.
Практическое задание 3: риск в спиральной модели
Задача: проект имеет неизвестный риск интеграции при работе с внешним API. как действует спиральная модель?
Решение: в первом цикле риск определяется и оценивается. Затем разрабатывается прототип, который тестирует интеграцию. На основе результатов планируется следующий цикл.
Анализ тем
- Технический центр: спецификация и верификация. каскадная модель, V-Modell XT и спиральная модель решают по-разному задачу фиксации требований, их реализации и проверки. V-Modell XT подчёркивает попарное соответствие спецификации и теста.
- Реализация: выбор подходящего метода для каждого типа проекта. каскадная модель подходит для стабильных требований, V-Modell XT для нормативных и критичных по безопасности проектов, спиральная модель для инновационных проектов с высокими рисками.
- Безопасность: подтверждаемость и качество. особенно в V-Modell XT тесты должны явно соответствовать требованиям. это снижает риск того, что критичные функции останутся непроверенными.
- Документация: Tailoring, планы и протоколы. без документации остаётся непонятна обоснованность выбора ролей, продуктов и уровней тестирования. логи Tailoring, планы проекта и протоколы приёмки — центральные документы.
- Экономическая целесообразность: затраты на ошибки и снижение рисков. чем раньше выявляются ошибки, тем дешевле их исправлять. спиральная модель снижает дорогостоящие поздние ошибки благодаря ранней оценке рисков и прототипам.
Важнейшие источники
- https://www.cio.bund.de (V‑Modell XT)
- https://dl.acm.org/doi/10.1145/360248.360251
- Расширенная каскадная модель с обратной связью и прототипами



