🧩 Хаос в задачах и сила Definition of Done
Так уж получилось, что за последние дни очень часто стал замечать одну проблему с самоорганизацией разработчиков и других членов команды, которые порождают хаос в команде
Вот типичные примеры:
* Делать несколько задач параллельно вместо того, чтобы закрывать их последовательно
* Писать код “на будущее”, добавляя лишние абстракции и параметры
* Начинать задачу с неполным ТЗ
* Зависать на бесконечном ресёрче
* Лезть в рефакторинг до того, как вообще есть что рефачить
И самое интересное — у всех этих проблем одна причина и одно решение.
🎯 Простое правило
"Закрывай Definition of Done как можно быстрее"
Чтобы это сделать, нужен правильный процесс. Любая задача состоит из четырёх этапов:
1. Погружение в контекст
2. Составление Definition of Done (DoD) — чёткие условия, при которых задача считается выполненной
3. Реализация задачи так, чтобы выполнить DoD
4. Рефакторинг и приведение кода в порядок (после выполнения DoD, а не до!)
Цель всегда одна — как можно быстрее выполнить DoD, а всё остальное — вторично.
⸻
📌 Разберём несколько кейсов
🔹 Параллельная работа над задачами
Например, разработчик делает “Профиль игрока” и понимает, что нужна “Система сохранений”. Из-за соблазна делать всё сразу обе задачи уходят в работу. За второй задачей подтягивается третья и вот в In Progress половина задач из спринта, сроки расползаются, непонятно чем человек занят на самом деле
Как быть?
Если реализация сохранений не нужна для выполнения DoD по профилю,
то просто сделайте интерфейс и мок-методы.
А полноценную реализацию — в отдельную задачу.
Так мы сохраняем фокус и не расползаемся в стороны.
Опять же. Думайте как закрыть Dod как можно быстрее
⸻
🔹 Начало задачи без понятого ТЗ
Классика.
Но помним главное правило: Если DoD непонятен — задача не может быть закрыта.
А значит брать её в работу нельзя.
Задача без чёткого ТЗ = гарантированный хаос.
⸻
🔹 Рефакторинг “пока делаю фичу”
А этой кейс пожалуй еще популярнее чем задача без ТЗ. Каждый разработчик проводил рефакторинг, строит нереально крутую архитектуру, писал идеальный код, который потом летел в мусорку и был никому не нужен
Я понимаю почему мы это делаем. Мы чувствуем кайф во время рефакторинга, это состояние потока и оптимизации реально доставляют нам удовольствие, но почти всегда — вредит процессу.
Рефакторинг всегда должен быть отдельной задачей с конкретным DoD.
Не частью другой задачи, а именно отдельной задачей
P.S Тут я говорю про серьезный рефакторинг, небольшой косметический рефакторинг, который не затронет логику можно сделать и в задаче. Но если он затрагивает логику, то лучше отдельно, что бы составить список пунктов QA для тестирования
⸻
✔️ Итог
Правило "Закрывай Definition of Done как можно быстрее"
• даёт прозрачность
• ускоряет разработку
• снижает количество переделок
• уменьшает хаос
• делает команду быстрее и спокойнее
И самое главное — помогает закрывать задачи быстро, чётко и без лишних движений
Post #63
757
- ❤ 7
- 🔥 6
- 👍 2
- 💯 1
- 💅 1