Экстремальное программирование (XP) - Тактическое и оперативное планирование разработки интернет-приложения

Методология XP, разработанная Kent Beck, Ward Cunningham, и Ron Jeffries, на сегодня является наиболее известной из гибких методологий. На русском языке издано уже несколько книг, посвященных этой методологии. XP это упрощенный, ориентированный на кодирование процесс, для небольших проектов. Также как и RUP, эта технология основана на итерациях, объединяющих некоторые приемы, такие как небольшие релизы, простое проектирование, тестирование и постоянная интеграция. XP предлагает несколько подходов, которые эффективны для соответствующих проектов и обстоятельств, но содержит неочевидные предположения, работы и роли. RUP и XP исходят из различных философских основ. RUP - это система процессов, методов и техник, которые вы можно применить в любом конкретном программном проекте. Предполагается, что пользователь будет адаптировать RUP. С другой стороны XP - более ограниченный процесс, требующий дополнений для того, чтобы соответствовать полному циклу разработки проекта. Эта разница объясняет предпочтения в сообществе разработчиков программного обеспечения. Разработчики крупных систем рассматривают RUP в качестве решения своих проблем, в то время как сообщество разработчиков малых систем решение своих проблем видит в XP. XP описывается как 12 практик: игра в планирование, короткие релизы, метафоры, простой дизайн, переработки кода, разработка "тестами вперед", парное программирование, коллективное владение кодом, 40-часовая рабочая неделя, постоянное присутствие заказчика и стандарты кода.

Основная цель игры в планирование -- быстро сформировать приблизительный план работы и постоянно обновлять его по мере того, как условия задачи становятся все более четкими, это позволяет получить приблизительный план работы по выпуску следующих одной или нескольких небольших версий продукта.

При использовании XP тщательное оперативное планирование заменяется, с одной стороны, постоянным присутствием в команде заказчика, готового ответить на любой вопрос и оценить любой прототип, а с другой стороны, регулярными переработками кода (так называемый рефакторинг). При этом основой проектной документации считается тщательно прокомментированный код. Очень большое внимание в методологии уделяется тестированию. Как правило, для каждого нового метода сначала пишется тест, а потом уже разрабатывается собственно код метода до тех пор, пока тест не начнет выполняться успешно. Эти тесты сохраняются в наборах, которые автоматически выполняются после любого изменения кода.

Данный метод ни в коем случае не отрицает важности предварительного планирования и управления проектом, но предлагает эффективные альтернативы классическим способам выработки оперативного плана разработки и поддержки спецификации проекта. Таким образом, после составления тактического плана и проектирования, можно приступать к работе, без детального оперативного планирования, пользуясь методологией XP.

Парное программирование и 40-часовая рабочая неделя, хотя и являются, возможно, наиболее известными чертами XP, носят все же вспомогательный характер и способствуют высокой производительности разработчиков и низкому количеству ошибок при разработке.

Похожие статьи




Экстремальное программирование (XP) - Тактическое и оперативное планирование разработки интернет-приложения

Предыдущая | Следующая