Концепция гибкой разработки программного обеспечения (Agile) заключается в следующем:
- Люди и взаимодействие важнее процессов и инструментов. 1 Agile призывает к активному сотрудничеству между разработчиками и заказчиками, а также между членами команды разработки. 1
- Работающее программное обеспечение важнее исчерпывающей документации. 1 Agile подчёркивает важность создания рабочего продукта на каждом этапе, что позволяет раньше получать фидбэк от клиентов и оперативно вносить коррективы. 1
- Сотрудничество с заказчиком важнее согласования условий контракта. 1 Agile поддерживает идею непрерывного общения с заказчиком, чтобы лучше понимать его потребности. 1
- Адаптация к изменениям важнее следования плану. 1 Agile призывает к гибкости и способности быстро реагировать на изменяющиеся обстоятельства, что помогает улучшить качество конечного продукта. 1
Как правило, для гибкого подхода Agile характерна работа короткими итерациями по две-три недели. 3 Внутри каждой итерации собрана серия задач: анализ, проектирование, непосредственно работа и тестирование. 3 После каждой итерации команда анализирует результаты и меняет приоритеты для следующего цикла. 3