Модели разработки и тестирования ПО: Инкрементная модель
Инкрементная модель — это метод, в котором проект проектируется, реализуется и тестируется инкрементно (то есть каждый раз с небольшими добавлениями) до самого окончания разработки. Это включает в себя как разработку, так и дальнейшую поддержку продукта. Он считается законченным в то время, когда удовлетворяет всем требованиям. Модель объединяет элементы каскадной модели с прототипированием.
Проект можно разложить на несколько составляющих, каждая из которых спроектирована и построена независимо от другой (билд). Каждый такой компонент поставляется клиенту по мере готовности, что позволяет сразу начать использовать продукт и избежать длительной разработки. Также это стимулирует большие инвестиционные затраты, но сокращает время ожидания результата. Модель помогает «сгладить углы», вместо того, чтобы выкатывать пользователю совершенно новую систему разом.
Есть и проблемы. Например, каждый новый билд должен быть интегрирован с предыдущим во всех системах. Разборка на билды тоже не элементарна. Если есть несколько билдов, которые еще и необходимо разобрать, все превращается в модель «Компилируй и исправляй ошибки». Как бы то ни было, большое количество сборок означает малое количество изменений между ними.
Преимущества инкрементной модели
- Рабочее приложение выходит на ранней стадии жизненного цикла продукта
- Гибкость. Изменить масштабы и требования проекта относительно менее затратно
- Небольшие итерации упрощают тестирование и внесение правок
- Проще идентифицировать риски, справиться с ними
- Каждая итерация — простая в управлении контрольная точка проекта
Недостатки инкрементной модели
- Каждая фаза итерации неподвижна
- Могут возникнуть проблемы относительно архитектуры системы, так как не все требования собраны заранее для всего жизненного цикла ПО
Когда использовать инкрементную модель
- Инкрементная модель используется вкупе с четкими и понятными требованиями, которые внедряются пофазово
- Востребована при разработке веб-приложений и продуктов компаний-брендов.
По материалам Testing Excellence