В этой главе мы узнаем о некоторых дополнительных функциях экстремального программирования.
Петли обратной связи
Прелесть экстремального программирования заключается в непрерывной обратной связи, которая держит всех в фокусе, и развитие продолжается в правильном направлении без каких-либо задержек.
В экстремальном программировании обратная связь осуществляется на разных уровнях с необходимой и достаточной детализацией. Это делается непрерывно и постоянно на протяжении итераций и релизов.
Следующая таблица иллюстрирует события обратной связи и продолжительность обратной связи.
Обратная связь Событие | Длительность обратной связи |
---|---|
Парное программирование | секунд |
Модульное тестирование | минут |
Разъяснения среди Команды и с Заказчиком | часов |
Прогресс | В день |
Приемочное тестирование | дней |
Планирование итерации | Недели |
Планирование релиза | Месяцы |
Управление проектом
В экстремальном программировании управлению проектами не уделяется особого внимания, а роль менеджера выполняет минимальные и наиболее важные управленческие действия.
Тем не менее, эти действия включают требования управления проектом.
-
Планирование релиза
-
Область действия определяется пользовательскими историями в карточках историй.
-
Оценки — это оценки историй, которые могут быть в историях.
-
Вехи доставки фиксируются планами выпуска.
-
Релиз делится на итерации.
-
-
Планирование итерации
-
Истории вдуваются в задания в карточках задач.
-
Оценки являются оценочными заданиями.
-
Распределение задач осуществляется путем балансировки коэффициента нагрузки по команде.
-
Принятие задачи — обязательство и ответственность команды.
-
-
отслеживание
-
Скорость с точки зрения сюжетных моментов от фактического времени для реализации на уровне проекта.
-
Производительность с точки зрения оценки задач из фактического времени для реализации, выполненной на уровне разработчика.
-
Отслеживание дефектов
-
Планирование релиза
Область действия определяется пользовательскими историями в карточках историй.
Оценки — это оценки историй, которые могут быть в историях.
Вехи доставки фиксируются планами выпуска.
Релиз делится на итерации.
Планирование итерации
Истории вдуваются в задания в карточках задач.
Оценки являются оценочными заданиями.
Распределение задач осуществляется путем балансировки коэффициента нагрузки по команде.
Принятие задачи — обязательство и ответственность команды.
отслеживание
Скорость с точки зрения сюжетных моментов от фактического времени для реализации на уровне проекта.
Производительность с точки зрения оценки задач из фактического времени для реализации, выполненной на уровне разработчика.
Отслеживание дефектов
Экстремальное программирование — отраслевой опыт
Из проектов экстремального программирования, выполняемых в отрасли, есть определенные знания, полезные для команд.
Уроки из практики XP
В следующих разделах вы получите представление об этих уроках.
-
Простой дизайн — простой дизайн эффективен, прост в сборке и обслуживании.
-
Метафора . Основной целью использования метафоры является использование доменных имен во время разработки, что позволяет заказчику также активно участвовать в разработке.
-
Коллективное владение — каждый гордится своим хорошим кодом. Работая вместе, каждый гордится кодом каждого.
-
Планирование — если команда завершает много пользовательских историй за итерацию, сделайте итерации меньшими. Иметь консенсус команды, чтобы изменить план.
Простой дизайн — простой дизайн эффективен, прост в сборке и обслуживании.
Метафора . Основной целью использования метафоры является использование доменных имен во время разработки, что позволяет заказчику также активно участвовать в разработке.
Коллективное владение — каждый гордится своим хорошим кодом. Работая вместе, каждый гордится кодом каждого.
Планирование — если команда завершает много пользовательских историй за итерацию, сделайте итерации меньшими. Иметь консенсус команды, чтобы изменить план.
Scaling Extreme Программирование
Первоначально экстремальное программирование считалось эффективным в небольших командах, с размером команды до 12-16 разработчиков.
Позже было замечено, что возможно масштабировать экстремальное программирование до команд 40-50. Тем не менее, рекомендуется делать масштабирование путем создания рекурсивных команд. Сначала создайте небольшую команду, постепенно наращивайте ее, используя первую команду для создания рекурсивных команд.
Документация
Экстремальное программирование не против какой-либо документации. Он поощряет документирование того, что требуется, когда это требуется и только до требуемой и достаточной детализации. Это может отличаться от проекта к проекту, и от проекта зависит размер документации. Тем не менее, практика экстремального программирования не допускает пропуск документации.
Преимущества применения XP
Экстремальное программирование оказывается полезным при применении в —
-
Среды, которые очень неопределенны
-
Внутренние проекты
-
Совместные предприятия
Среды, которые очень неопределенны
Внутренние проекты
Совместные предприятия
Недостатки применения XP
Экстремальное программирование оказывается невыгодным, когда —
-
Среды большие и сложные.
-
Требования хорошо поняты.
-
Клиент находится на расстоянии или недоступен.
Среды большие и сложные.
Требования хорошо поняты.
Клиент находится на расстоянии или недоступен.
Заблуждения XP
Есть некоторые заблуждения об экстремальном программировании. В следующей таблице приведены разъяснения существующих заблуждений.