V-модель
V-модель — это улучшенная каскадная модель.
При разработке в соответствии с данной моделью заказчик вместе с командой разработчиков одновременно описывают и требования к системе и то, как будут тестировать систему на каждом из этапов.
V-модель, как правило, используется в тех проектах, где важна надёжность и цена ошибки очень высока.
V-модель состоит из следующих этапов:
- этап разработки;
- этап тестирования.
Каждый из этих этапов также подразделяется на этапы.
Этап разработк состоит из:
- анализа требований (общение с заказчиком, чтобы выяснить требования);
- проектирования системы (проектирование системы и настройка оборудования и коммуникаций для разработки продукта);
- архитектурного дизайна (системный дизайн, разбивка на модули, которые выполняют различные функции);
- разработки модулей (продукт разбивается на небольшие модули и определяется детальный дизайн модулей).
Этап тестирования состоит из:
- модульного тестирования (устранение ошибок на уровне кода или модуля);
- интеграционное тестирование (устранение ошибок в связи модулей между собой);
- системное тестирование (тестируется полностью приложение со всей его функциональностью, взаимозависимостью и связью, проверяются функциональные и нефункциональные требования разработанного продукта);
- пользовательское приемочное тестирование (проверяют, что система соответствует требованиям пользователей и готова к использованию в реальном мире).
V-модель основана на следующих принципах:
- от большого к малому (требования, которые команда проекта определила, создают этапы высокого уровня и детального проектирования и по мере завершения этапов, определенные изначально требования, становятся все более и более уточненными и подробными);
- целостность данных / процессов (для успешного проектирования любого проекта требуется интеграция и согласованность и данных и процессов, элементы процесса должны быть идентифицированы для каждого из требований);
- масштабируемость (V-Model — гибкая модель, которая позволяет приспособить любой проект независимо от его размера, сложности или продолжительности);
- перекрестные ссылки (прямая корреляция между требованиями и соответствующей деятельностью по тестированию — перекрестные ссылки);
- материальная документация (каждый проект должен создавать документ).
Преимуществами V-образной модели является:
- на каждой стади имеются конкретные результаты;
- более высокие показатели относительно каскадной модели из-за того, что тестирование начинается на ранних этапах;
- экономит время (по сравнению с каскадной моделью экономия может достигать до 50%);
- хорошо подходит для небольших проектов, где все требования к продукту понятны сразу;
- полноценная реализация доступных ресурсов.
Недостатками V-образной модели является:
- отсутствует гибкость (внесение изменений на поздних этапах — трудный и дорогой процесс);
- разработка должна начинатьсяс строго с началом соответствующей стадии;
- отсутствие определённого способа решения критических проблем, которые были обнаруженны на этапе тестирования.