В свете последних событий с массовым использованием ИИ-ассистентов вижу интересную картину:
Разрабы начинают юзать Cursor →
Код пишется быстрее →
Фичи в проде появляются медленнее
Объяснить этот феномен может закон Литтла
Cycle Time = WIP / Throughput
• WIP — сколько фич одновременно в работе у команды
• Throughput — сколько фич полноценно завершает команда за единицу времени
• Cycle Time — сколько времени занимает полноценно сделать одну фичу
Что происходит с AI
Чтобы полноценно сделать фичу, нужна совместная работа дискавери, дизайна, бэка, фронта, QA
Cursor увеличивает локальную скорость написания кода
И получаем примерно следующую картину:
Бэк быстро сделал свою часть фичи →
Бэк берет следующую фичу →
Очередь перед фронтом и QA растет →
WIP растет
С WIP разобрались. Но что насчет Throughput? Кажется, что если Cursor ускоряет индивидуальных разработчиков, то должен ускорять и всю команду целиком
Но есть нюансы:
• Если боттлнек — не разработка, то ускорение разработки сделает только хуже для команды в целом
• Из-за роста WIP получаем безумное количество context switching
И в реальности получаем, что эффект от ускорения индивидуальных разработчиков невелируется, и Throughput либо не меняется, либо становится хуже
Если подытожить:
• WIP растет
• Throughput либо не меняется, либо ухудшается
• Согласно закону Литтла Cycle Time сильно вырастает
—
Какое минимальное действие можно сделать, чтобы этого избежать? На мой взгляд — это WIP-лимиты на уровне фичей
Т.е. команда одновременно работает не более чем над N фичами
И если условный бэк сделал все по своей части, он не берет (N + 1)-ую фичу в работу, а вместо этого
• либо идет исправлять техдолг
• либо в идеале идет помогать текущему узкому месту в команде, например QA
Поскольку все основные негативные эффекты с замедлением команды связаны с ростом WIP и переключениями контекста, WIP-лимиты помогут это нивелировать, и обратить ускорение разработки на пользу команды
Пишите ваше мнение в комментариях!
👍 — AI-ассистенты ускоряют работу моей команды
🔥 — замедляют