AgileCamp'11 Новосибирск - введение в инженерные практики

21
Введение в инженерные практики XP Anton Katkov

description

материал с конференции http://camp.agiledays.ru

Transcript of AgileCamp'11 Новосибирск - введение в инженерные практики

Page 1: AgileCamp'11 Новосибирск - введение в инженерные практики

Введение в инженерные практики XP

Anton Katkov

Page 2: AgileCamp'11 Новосибирск - введение в инженерные практики

ЗНАКОМСТВО

Page 3: AgileCamp'11 Новосибирск - введение в инженерные практики

Знакомство

• Антон Катков• Дмитрий Паньшин• Евгений Хамухин• Александр Бындю

Page 4: AgileCamp'11 Новосибирск - введение в инженерные практики
Page 5: AgileCamp'11 Новосибирск - введение в инженерные практики

Вопрос

• Какие практики вы используете у себя?

Page 6: AgileCamp'11 Новосибирск - введение в инженерные практики

План

• Code Review & Pair Programming• Unit tests• Refactoring• Build Automation• Continuous Integration• Test Driven Development

Page 7: AgileCamp'11 Новосибирск - введение в инженерные практики

ОСНОВНЫЕ ПОНЯТИЯ

Page 8: AgileCamp'11 Новосибирск - введение в инженерные практики

Вопрос

• Какие метрики качества кода вы используете?

подсказка: большую часть времени код читается (порядка 80% и больше)

Page 9: AgileCamp'11 Новосибирск - введение в инженерные практики

Основная метрика для кода

Page 10: AgileCamp'11 Новосибирск - введение в инженерные практики

Запахи кода (Code smells)

• Code Duplication• Long method• Large class• Comments• …

Список запахов кода

Page 11: AgileCamp'11 Новосибирск - введение в инженерные практики

Ценности XP

• Simplicity• Communication• Feedback• Respect• Courage

Page 12: AgileCamp'11 Новосибирск - введение в инженерные практики

Чистый код, который работает

• «Clean code, that works»

Page 13: AgileCamp'11 Новосибирск - введение в инженерные практики

Правило бойскаута

• «Оставь место стоянки чище, чем оно было до твоего прихода»

Page 14: AgileCamp'11 Новосибирск - введение в инженерные практики

XP – идеальный процесс?

• Идеальный процесс VS процесс сходящийся к идеальному

Page 15: AgileCamp'11 Новосибирск - введение в инженерные практики

А ЗАЧЕМ НУЖНО XP?

Page 16: AgileCamp'11 Новосибирск - введение в инженерные практики

Вопрос

• Так зачем нужно eXtreame Programming?

Page 17: AgileCamp'11 Новосибирск - введение в инженерные практики

Существующие проблемы

• Изменяющиеся требования• Ограниченность сроков• Недовольство работой в команде

разработчиков• Стоимость исправления ошибок

Page 18: AgileCamp'11 Новосибирск - введение в инженерные практики

Стоимость изменений и ошибок

• Сколько будет стоить нахождение и исправление ошибки– Совершенную минуту назад?– Совершенную вчера?– Совершенную на прошлой неделе?– Совершенную в прошлом месяце?– Совершенную в прошлом году?

Page 19: AgileCamp'11 Новосибирск - введение в инженерные практики

Стоимость изменений для XP

Page 20: AgileCamp'11 Новосибирск - введение в инженерные практики

Наша цель на инженерном треке

• Дать твёрдый фундамент для дальнейшего развития навыков.

Page 21: AgileCamp'11 Новосибирск - введение в инженерные практики

НАША ИСТОРИЯ