Экстремальное программирование (XP)

Содержание

Слайд 2

Extreme Programming

XP отличается от других гибких методологий тем, что применимо только в области разработки

Extreme Programming XP отличается от других гибких методологий тем, что применимо только
программного обеспечения
Оно не может быть использовано в другом бизнесе или повседневной жизни, как scrum, kanban или lean

Слайд 3

Цель методики XP — справиться с постоянно меняющимися требованиями к программному продукту и повысить качество разработки.

Цель методики XP — справиться с постоянно меняющимися требованиями к программному продукту
Поэтому XP хорошо подходит для сложных и неопределенных проектов
Методология XP строится вокруг четырех процессов: кодирования, тестирования, дизайна и слушания. Кроме того, экстремальное программирование имеет ценности: простоту, коммуникацию, обратную связь, смелость и уважение

Extreme Programming

Слайд 4

Вся команда

Все участники проекта с применением XP работают как одна команда
В нее обязательно входит представитель

Вся команда Все участники проекта с применением XP работают как одна команда
заказчика, лучше, если это будет реальный конечный пользователь продукта, разбирающийся в бизнесе

Слайд 5

Планирование в XP проводят в два этапа — планирование релиза и планирование итераций

Игра в планирование

Планирование в XP проводят в два этапа — планирование релиза и планирование итераций Игра в планирование

Слайд 6

В XP версии выпускаются часто, но с небольшим функционалом

Частые релизы версий

В XP версии выпускаются часто, но с небольшим функционалом Частые релизы версий

Слайд 7

Заказчик сам определяет автоматизированные приемочные тесты, чтобы проверить работоспособность очередной функции продукта

Заказчик сам определяет автоматизированные приемочные тесты, чтобы проверить работоспособность очередной функции продукта

Команда пишет эти тесты и использует их для тестирования готового кода.

Пользовательские тесты

Слайд 8

В XP любой разработчик может править любой кусок кода, т.к. код не закреплен за своим автором

В XP любой разработчик может править любой кусок кода, т.к. код не
Кодом владеет вся команда

Коллективное владение кодом

Слайд 9

Это значит, что новые части кода сразу же встраиваются в систему — команды XP заливают новый

Это значит, что новые части кода сразу же встраиваются в систему —
билд каждые несколько часов и чаще.

Непрерывная интеграция кода

Слайд 10

Когда кодом владеют все, важно принять единые стандарты оформления, чтобы код выглядел

Когда кодом владеют все, важно принять единые стандарты оформления, чтобы код выглядел
так, как будто он написан одним профессионалом
Можно выработать свои стандарты или принять готовые

Стандарты кодирования

Слайд 11

Метафора системы — это ее сравнение с чем-то знакомым, чтобы сформировать у команды общее видение
Обычно

Метафора системы — это ее сравнение с чем-то знакомым, чтобы сформировать у
метафору системы продумывает тот, кто разрабатывает архитектуру и представляет систему целиком

Метафора системы

Слайд 12

XP команды работают на максимуме продуктивности, сохраняя устойчивый темп
При этом экстремальное программирование негативно

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

Устойчивый темп

Слайд 13

В XP тесты пишутся самими программистами, причем ДО написания кода, который нужно протестировать
При таком

В XP тесты пишутся самими программистами, причем ДО написания кода, который нужно
подходе каждый кусок функционала будет покрыт тестами на 100%

Разработка, основанная на тестировании

Слайд 14

Из двух вариантов решения проблемы выбирается лучший, код оптимизируется сразу же, ошибки отлавливаются еще

Из двух вариантов решения проблемы выбирается лучший, код оптимизируется сразу же, ошибки
до их совершения
В итоге имеем чистый код, в котором хорошо разбираются сразу двое разработчиков

Парное программирование

Слайд 15

Простой дизайн в XP означает делать только то, что нужно сейчас, не пытаясь угадать будущую

Простой дизайн в XP означает делать только то, что нужно сейчас, не
функциональность
Простой дизайн и непрерывный рефакторинг дают синергетический эффект — когда код простой, его легко оптимизировать

Простой дизайн

Слайд 16

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

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

Рефакторинг

Слайд 17

Принципы XP

Простота
Коммуникация
Обратная связь
Смелость
Уважение

Принципы XP Простота Коммуникация Обратная связь Смелость Уважение

Слайд 18

Алгоритм внедрения XP

Тестирование
Проектирование
Планирование
Менеджмент
Разработка

Алгоритм внедрения XP Тестирование Проектирование Планирование Менеджмент Разработка

Слайд 19

Преимущества XP

заказчик получает именно тот продукт, который ему нужен, даже если

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

Слайд 20

Недостатки XP

успех проекта зависит от вовлеченности заказчика, которой не так просто добиться
трудно предугадать затраты

Недостатки XP успех проекта зависит от вовлеченности заказчика, которой не так просто
времени на проект, т.к. в начале никто не знает полного списка требований
успех XP сильно зависит от уровня программистов, методология работает только с senior специалистами
менеджмент негативно относится к парному программированию, не понимая, почему он должен оплачивать двух программистов вместо одного
регулярные встречи с программистами дорого обходятся заказчикам
Имя файла: Экстремальное-программирование-(XP).pptx
Количество просмотров: 51
Количество скачиваний: 2