3.2.4.
Экстремальное программирование (eXtreme
Programming)
Методология XP, разработанная Кентом Беком (Kent Beck), Уордом
Каннингемом (Ward Cunningham) и Роном Джеффрисом (Ron Jeffries),
является сегодня одной из самых популярных гибких методологий. Она
описывается как набор практик: игра в планирование, короткие релизы,
метафоры, простой дизайн, переработки кода (refactoring), разработка
«тестами вперед», парное программирование, коллективное владение
кодом, 40-часовая рабочая неделя, постоянное присутствие заказчика и
стандарты кода.
Интерес к XP рос снизу вверх – от разработчиков и тестировщиков,
замученных тягостным процессом, документацией, метриками и прочим
формализмом. Они не отрицали дисциплину, но не желали бессмысленно
соблюдать формальные требования и искали новые быстрые и гибкие
подходы к разработке высококачественных программ.
При
использовании
XP
тщательное
предварительное
проектирование ПО заменяется, с одной стороны, постоянным
присутствием в команде заказчика, готового ответить на любой вопрос и
оценить любой прототип, а с другой – регулярными переработками кода
(так называемый рефакторинг). Основой проектной документации
считается тщательно прокомментированный код. Очень большое
внимание в методологии уделяется тестированию. Как правило, для
каждого нового метода сначала пишется тест, а потом уже
разрабатывается собственно код метода до тех пор, пока тест не начнет
выполняться успешно. Эти тесты сохраняются в наборах, которые
автоматически выполняются после любого изменения кода.
Хотя парное программирование и 40-часовая рабочая неделя и
являются, возможно, наиболее известными чертами XP, но все же носят
вспомогательный характер и способствуют высокой производительности
разработчиков и сокращению количества ошибок при разработке [26].
Достарыңызбен бөлісу: |