Надгробья современного геймдева. Феномен самораздувающихся сроков

от автора

Материал содержит применяемые в отрыве от современной политики именования и отсылки, а так же длинные слова, которые огорчают Винни-Пуха.

Cyberpunk 2077. Был перенесён больше, чем на полгода.
Atomic Heart. Как ждали бета-версию в конце 2019 года, так и ждём.
Escape from Tarkov. Бета-тестирование длится уже почти пять лет.
Vampire: The Masquerade – Bloodlines 2. Перенесён на бооооольше, чем два года, сильно больше…
Bayonetta 3. За прошедшее с момента первого анонса время уже можно было выпустить игру, спин-офф, тизер сиквела и начать снимать сериал для Netflix — но неееет, всё ещё ждём…
И прочие, и прочие, и прочие.

Ладно, «Побег из Таркова» и Atomic Heart: амбиции, нехватка опыта, технологическая болтанка. Допустим.
Но остальные игры — их как минимум продьюсировали видные деятели в этой сфере. Это не первое их родео в мир ААА-проектов. Что ж так не повезло то им?

А если сместить фокус с геймдева и окинуть взглядом IT в целом?
Куда ни глянь — «не попали в дедлайн», «кранч», «лучше MVP в проде, чем срыв сроков в ххх», etc, etc…

Вдобавок, две недавних публикации (о проектировании в IT в целом и о YOLO-разработке в геймдеве) напомнили мне в очередной раз о потенциальной причине этого феномена.
И имя ему — «феномен самораздувающихся сроков».

Что за феномен?


Что в повседневной работе, что в отголосках от более удачно окопавшихся знакомых, что в произвольных трезвых откровениях несдержанных посторонних я регулярно слышу очень любопытные тезисы, которыми руководствуется разработка проектов. Например:

  • Надо занять новую нишу сейчас — продукт доработаем потом, если спрос будет.

  • Конкуренты слишком выбились вперёд — надо их нагнать любой ценой, а доработаем потом при случае.

  • Да бахни ТЗ по-быстрому, делов то, по ходу дела разберёмся, я прикрою.

  • Нет, у нас нет документации на уже проведённые по проекту работы — ты же напишешь, а мы потом по ней что-нибудь попланируем?

  • Да, выбранное решение — отстой и поддерживать его будет невозможно. Но лучшего то нету, надо было делать быстро.

И так далее, и тому подобные рассуждения на тему «нет времени экономить время».

Вопреки обыкновению, я не буду изливать негодование (а то мы никогда не закончим). Только быстро-быстро проведу кое-какие выкладки на чистых логике и здравом смысле, замешаные на опыте и наблюдениях.

Предпосылка №1: диктатура пролетариата

Давным-давно в область вычислений реальных сроков воплощения проектов в IT проник… коммунизм.
Дух демонического Ленина восстал!
Но вместо наших женщин и кулацких подворий он обобществил право голоса и экспертной оценки сроков.
Story Point Poker — это он.
«Я бы смог это сделать за X времени — но %USERNAME% наверняка успеет за Y» — это тоже его учение.
Неважно, сколько времени работа займёт на самом деле, — ведь оценка времяёмкости проекта идёт не «сверху», а «снизу»!

Только вот беда — оценка «снизу» нужна разве что для того, чтобы гордо заявить: «У нас не waterfall! Мы точно планируем в спринты по твёрдым цифрам оценки!»
Но, увы, переход к пост-коммунизму в оценке задач в IT пока невозможен потому, что…

Предпосылка №2: стейк из ТЗ категории rare

Стейков, что характерно, больше одного вида.
Возможно, из меня очень плохой повар и я не понимаю ни рецептуры, ни методологии, но у меня стейки получаются видов:

  • слишком лаконичные — «потому, что всё равно в процессе надо уточнять. Всё предусмотреть невозможно»

  • слишком ёмкие — «потому, что многотекста леньчитать»

  • слишком авангардные — «давайте попробуем эту методологию… упс, да её надо нам всем подучить!»

  • слишком примитивные — «эээээ, а где BPMN?»

  • жульены. Нет, это не ошибка, вместо стейка якобы получается жульен из ТЗ потому, что мешанина и недостаточно информационного «мяса», официант, замените блюдо…

Что характерно, если упереться рогом и НЕ делать стейк rare (или заготовить заранее и ТЗ-стейк-rare, и нормально прожареное подготовленное ТЗ с сопутствующими) — то по завершении стадии №4 «депрессия» припасённое в моей заначке сделанное «по уму» блюдо идёт очень даже неплохо… под дружное нытьё «ну зачем так подробно, только время угробил».

Да, и официант из меня, видимо, тоже плохой.
Хотя для ситуации, когда требования к блюду заведомо невыполнимы, — результат неплох.
Только к моменту, когда сделанное «по уму» ТЗ становится востребовано — планы все уже зафиксированы.
(так и запишем: демонический Ленин любит стейки rare из ТЗ)

Предпосылка №3: безумие

Здесь должна была находиться цитата из знаменитого монолога Вааса Монтенегро. Но кто заинтересован — тот её и так знает. Ведь зачем её повторять раз за разом…

Проект 1 начат, попланирован, разрабатывается, не попали в сроки, кранч, седельные корчи и красные глаза, сдали, фух.
Под настроение написали постмортем, в котором поклялись: невермор!
Берём следующий проект.

Проект 2 начат, попланирован, разрабатывается, не попали в сроки, кранч, превозмогание и морковка сзади, сдали, фух.
Под настроение написали постмортем, в котором поклялись: невермор х2!
Берём следующий проект.

Проект 3 начат, попланирован, разрабатывается, не попали в сроки, кранч, «поработай на выходных — иначе не командный игрок!», сдали, фух.
Под настроение написали постмортем, в котором поклялись: невермор х3!
И снова, и снова, и снова…

…видите паттерн?

Да, иногда случается маленькое чудо и кто-то инициирует Большое Собрание, на котором ищутся способы прервать этот порочный круг.
Но демонический Ленин не заинтересован в том, чтобы его разрывать.
Демонический Ленин заинтересован в стейке rare из ТЗ — и чего-нибудь принять. Чисто чтобы запить.

И по итогу на Большом Собрании принимается какой-нибудь комплекс мер по исследованию расширения скоупа сужения времязатрат в контексте ещё более передовых методологий ведения проектов yadda-yadda-yadda…

Но реальная проблема то не там.

Единственная методология, которая более-менее натягивается на любой проект, укладывается в три вопроса:
ЧТО делаем?
КАК делаем?
ПОЧЕМУ делаем?
Причём, прорабатывать эти вопросы детально надо уже на стадии «а не бахнуть ли нам эту фичу в Q4?»
Потому, что настанет Q4 — а что хотели, не помним, что помним, не хотим. Это раздует сроки.
Потому, что недетальная проработка ТЗ и нежелание уделить чтению/обсуждению тоже ГАРАНТИРУЕТ увеличение сроков.

Да, с одной стороны разработка — это творческая работа.
С другой стороны, есть конечное число способов адекватно сделать функционал Х — и есть конечное количество времени, за которое можно сделать функционал Х любым адекватным способом.
И уж наверняка в распоряжении команды есть ветеран, который на детальное ТЗ на функционал может выдать адекватную оценку этого самого времени + 30%.
(и потом не забыть выделить пропорциональную долю на тесты-фиксы-мелкие-поправки)
Это — МОЖНО стандартизировать и избавить себя от призрака коммунизма и его воя! И не тратить впредь на бесконечные планировательногрумерские митинги!

Звучит как ересь… поначалу. Да.
Более того, за такое пьяное откровение мне, наверное, сольют более чем скромные остатки кармы (почему-то не до конца потопленной в статье о coinкойнах).

Но подумайте вот о чём.

Предпосылка №4: разум

«Любое разумное существо стремится как можно меньше работать.» (с) Джим Статхэм

Даже если сотрудник полностью лоялен, даже если мнение его непредвзятое и 100% объективное, выдаваемая им оценка времязатрат будет дана исходя из того, сдельная предстоит работа или почасовая.
И в зависимости от этого она [выданная сотрудником оценка времязатрат] будет… отличаться! Даже при полностью идентичных прочих равных! Даже если умудриться заставить сотрудника дать оценку подсознательно, без времени на размышления!

Британские учёные (или Карл Маркс, или ещё какие-то авторитеты) наверняка успели это поисследовать — но это, в принципе, доказуемо логически без исследований, выводится из самоё природы человеческой.

А раз у нас распространена почасовая оплата труда, тооооооо?..

В детальной проработке проекта ради своевременной сдачи оказывается заинтересован никто.
(и если я попытаюсь заикнуться о том, почему ИМЕННО, — то меня точно отсюда попрут… Все всё знают — но говорить об этом не-при-ня-то)
Соответственно, текущая ситуация с залётами по срокам (что в геймдеве, что в «общем» IT), во-первых, абсолютно ожидаема (даже в силу одной только этой предпосылки, не то что всех четырёх), а во-вторых, совершенно неизбежна…

Нет, есть какие-то исключения типа знаковых дат, в которые конкретный функционал точно должен быть поставлен, иначе морковкой по щекам.

Но чаще либо таких дат нет, либо к дате успели, но вместо релиза выкинули MVP, который внезапно вынужден бороться с давно развившимися конкурентами, как вышло, например, в случае с Hood: Outlaws & Legends … опять…

Что с этим делать…

Рассудив трезво, что плохому научиться я ещё успею, я предпочёл сдуть пыль со своего совершенно не-IT-шного диплома. Я не готов продолжать душить собственную совесть, хоть бы даже и ради оставшихся «несметных сокровищ» современного IT. И иных вариантов не предвидится.

А вы?


ссылка на оригинал статьи https://habr.com/ru/post/665744/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *