Заметки Романа Теличкина

Какой у вас опыт работы по Agile?

Апрель 2018
Этот забавный вопрос приходится часто слышать на собеседованиях. Есть много способов задать его, но объединяет их одно — использование слова "agile" в качестве существительного, а не прилагательного. 
Когда собеседник использует слово "agile" как существительное, он навешивает вам на уши маркетинговую лапшу. Уверен на сто процентов, что следом вы услышите слова "Scrum", "Kanban", "Sprint", "Daily meeting", "Backlog" и "Product Owner". Эти термины не помогают гибко разрабатывать ПО, а только создают видимость гибкости.
Например, если вы используете Scrum или Kanban, но план разработки продукта расписан на полгода вперед — это Waterfall. Вы не изменили свой процесс и продолжаете планировать все также далеко. Просто разбить огромный план на маленькие кусочки недостаточно, гибкая разработка не про это. Через полгода окажется, что спланированные фичи никому не нужны, проект не взлетел, а "Agile не работает".
Слово "agile" — это прилагательное, которое применяется к существительному "software development" или по-русски и полностью "гибкая разработка программного обеспечения". Когда мы воспринимаем"agile" в качестве прилагательного, сразу начинают закрадываться интересные вопросы вроде "Вот мы спланировали фичи на полгода вперед, а это действительно гибко?"
На самом деле, использование "agile" в качестве прилагательного — просто хороший триггер, чтобы переключиться с маркетинга на реальную разработку. Вся суть гибкой разработки ПО — это четыре ценности и двенадцать принципов. Ценности:
Если команде комфортно следить за задачами на пробковой доске, а ей насаждают использование Jira в качестве удобного инструмента работы по Agile, нарушается первая ценность гибкой разработки ПО. Если менеджер фанатично пишет документацию на каждую функциональность прежде чем отдать ее в разработку, нарушается вторая ценность.
Ценности и принципы неизменны, они важнее всего. Практики — ситуационны. При работе "по Agile" картина обратная: практики используются как карго-культ, а ценности и принципы никого не интересуют. Так какой у меня опыт работы по Agile? Я работал по Agile больше двух лет, но я ни дня не участвовал в гибкой разработке ПО.
Оригинал манифеста гибкой разработки программного обеспечения: http://agilemanifesto.org/
Открыть комментарии