XP
Экстремальное программирование (XP) — еще одна Agile-методология. В отличие от предыдущих практик, применяется только в IT.
В основе XP — 5 ценностей:
- Коммуникация
- Простота
- Обратная связь
- Смелость
- Уважение
Этим пяти ценностям подчинены 13 практик:
- Целостность команды
В команде нет обязательных ролей. Все участники могут работать над одной задачей.
2. Парное программирование
Два разработчика работают за одним компьютером. Так можно написать большее количество кода, быстрее исправить ошибки.
3. Устойчивый темп
Команда работает максимально продуктивно. Но никаких переработок! Эффективный сотрудник — отдохнувший сотрудник.
4. Стандарты кодирования
В команде действуют единые стандарты написания кода. Это позволяет легче в нем ориентироваться, а значит — быстрее корректировать.
5. Пользовательские тесты
Практика предполагает использование User Story (максимально простого и понятного описания функционала продукта). Это позволяет команде и заказчику лучше понимать друг друга.
6. Частые релизы версий
Короткие итерации для выпуска версий с небольшим функционалом. Опять-таки, так проще найти ошибки.
7. Игра в планирование
В XP применяется два вида планирования.
Ежеквартальное. Команда вместе с заказчиком определяют общие ориентиры и то, каким должен быть релиз.
Еженедельное. Позволяет разбить объемную задачу на более простые, оценить их приоритет. За небольшой промежуток времени предоставить заказчику результат, получить обратную связь.
8. Коллективное владение кодом
Код доступен всей команде. Каждый участник может его править.
9. Непрерывная интеграция кода
Новые части кода сразу же добавляются в систему. Команда может проанализировать, как изменения отразились на всей системе, и тут же скорректировать код при необходимости.
10. Метафора системы
Сравнение системы с чем-то уже знакомым. Это позволяет команде сформировать схожее представление о задаче.
11. Простой дизайн
Создается только то, что необходимо сейчас.
12. Рефакторинг
Постоянное улучшение дизайна системы, в соответствии с новыми требованиями.
13. Разработка, основанная на тестировании
Тесты пишутся программистами до написания кода.
Если следовать этим практикам, есть все шансы получить очень качественный код 😁
Продолжение следует :)