Когда применять
Экстремальное программирование (XP) было разработано в ответ на частые изменения требований к ПО.
Заказчики могут не иметь точного представления о том, что именно в конечном итоге должно делать разрабатываемое ПО. Функциональность может меняться каждые несколько месяцев или даже недель. Именно в таких случаях применение XP покажет хороший результат.
XP помогает управлять рисками. Если проект должен быть готов к определенной дате, риск высок. Если он не выглядит тривиальным для разработчиков, риск ещё выше. Практики экстремального программирования помогают снизить риски и увеличить вероятность успеха.
Требования к команде
Методология предназначена для небольших команд разработки от 2 до 12 человек, но, несмотря на это, успешно применялась и в более крупных командах с участием порядка 30 человек.
Разработчики в команде могут быть самыми обычными, XP не требует самых сильных и опытных специалистов.
Команда, работающая по экстремальному программированию, включает в себя не только разработчиков, но и менеджеров и заказчиков.
Обсуждение вопросов, согласование объема работ и сроков, а также формирование тестов требуют участия не только разработчиков.
Важно, чтобы в команду были включены один или два заказчика.
Тестируемость
Ещё одним важным требованием является тестируемость системы.
Некоторые предметные области и решения могут потребовать дополнительных усилий для настройки поддерживаемого фреймворка тестирования.
Упрощение архитектуры системы также может упростить внедрение тестов.