Попса

популярный светский альманах

Тег: фейл

О договорённостях задним числом

«Эксперт — это человек, который совершил все возможные ошибки в очень узкой специальности.»

—  Нильс Хенрик Давид Бор

Однажды со мной приключилась грустная и поучительная история. Устроился на работу в аутсорсную компанию, получил назначение на проект, заказчиками которого были друзья, а точнее, подруги нашего генерального. Была некая устная договорённость о составе работ, но не было ни списка функциональности, ни письменного договора, ничего.

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

Я провёл вводную встречу с заказчиком и начал проработку требований, параллельно с подготовкой дизайна, получив некое представление о том, что нужно сделать в MVP. И тут начались проблемы. Заказчицы буквально каждый день стали накидывать к MVP дополнительные функции, видимо, боясь, что Большой Босс, который всё это финансирует, обозлится, если увидит в MVP мало функций. Мои ответы, что в MVP должна быть одна-две функции, решающие ключевую пользовательскую проблему и что дополнительные функции в оговорённые сроки мы сделать просто не успеем, их не устраивали. «Мы договаривались с Мишей, что всё это будет в MVP» и точка. Никаких «оценим и сделаем в следующей итерации» и всё.

В качестве доказательств, что эти функции были в изначальной договорённости, предъявляли некую наскальную майндкарту, в которой, действительно, были пункты, которые можно было трактовать как обещание сделать соответствующие функции. Договора, повторюсь, нет.

Последним таким вбросом было требование сделать полноценную отчётность. Я спросил, не будет ли достаточно сделать выгрузку гридов в эксель. Они ответили, что недостаточно, они хотят полноценную отчётность. Какую — не знают, но полноценную. Сделал опросник для предварительного сбора требований к отчётности и закинул им для размышлений.

Буквально на следующий день гендиректор позвонил и сказал, что моя работа категорически не устраивает заказчика и я должен быть уволен, причём без выплаты зарплаты за последнюю неделю, настолько это было плохо. Оставим это на его совести.

Теперь самое важное. Как нужно было вести себя, чтобы из этой ситуации вылезти. Ситуации, когда скоуп проекта не определён, допускать нельзя. Окажись я в таком положении сейчас, действовал бы так. В первые же дни собрал встречу с заказчицей и своим гендиром, как бы он ни был занят, и заставил проговорить, что обязательно должно быть в первой итерации, потом оценил эти работы с командой заново, потом составил документ и подписал вместе с договором.

И напоследок бонус. Чтобы определить базовые приоритеты заказчика, можете ему подсунуть на заполнение вот такую простенькую табличку:

Базовые приоритеты заказчика

Просто для разных проектов эти приоритеты могут быть разными и далеко не всегда, например бюджет — самое главное. В частности, ни одни олимпийские игры за последние лет пятьдесят не уложились в бюджет и это нормально. А вот за срыв сроков подготовки организаторы получили бы атата от МОК.

Пять признаков проекта, который провалится

Пять признаков проектов, которые провалятся

Подавляющее большинство проектов проваливается. Понять, что данный проект провалится, не очень сложно. Есть несколько маячков.

Дедлайн спущен сверху

В практике постоянно натыкаюсь на ситуации, когда высокое начальство поговорило и решило, что срок 15 октября этого года. Или 2 ноября. Или 28 декабря. Как оно это посчитало — непонятно, потому что никаких планов нет даже близко, ещё даже не вполне понятен набор фич продукта.

Иногда дата, действительно, оправдана. Например, с 15 октября меняется форма отчёта, а продукт как раз и делается, чтобы генерить отчёты по новой форме. После 15 октября делать отчёты по старой форме бессмысленно.

Чаще же она привязывается к старту какой-нибудь маркетинговой активности или ещё какой-нибудь ереси из мира высокого начальства. У РМ-а же, как правило, возможности отказаться делать проект к данной дате нет и приходится выкручиваться.

Я делал такие проекты. Приходилось подключать дополнительные ресурсы, максимально упрощать фичи, экономить на качестве. Как правило, это приводило к тому, что проект был либо сдан вовремя, либо с небольшим опозданием, однако пользоваться продуктом было невозможно из-за багов и наступали «вторые 90 % проекта», когда попеременно наши тестировщики и приёмщики заказчика шлют баги, а разработчики их мужественно правят.

В общем, если дедлайн спускается сверху без точных расчётов, проект, скорее всего, провалится.

Планируют и реализуют разные люди или даже подразделения

А вот ещё как бывает. Когда делали первичную оценку, привлекли тимлида, дали ему декомпозицию, он посчитал. А после подтверждения перехода проекта в разработку, на точную оценку забили. Осталась тимлидская оценка, в которой раза в полотора меньше часов, чем могло бы быть в оценке рядового разработчика.

В отличие от материального труда, где производительность сотрудников различной квалификации примерно сравнима (нельзя, например, нанять сениора плиточника, чтобы он за ночь обложил вам плиткой большую ванную комнату, если реально там труда на несколько дней) и сотрудники относительно взаимозаменяемы, в разработке так нельзя. Сениор может кодить быстрее мидла не в два, не в четыре раза, а на порядок. Да ещё и допускать в коде меньше дефектов. И специалисты примерно одной квалификации могут сильно различаться по производительности.

Иными словами, оценивать должен тот, кто будет кодить/дизайнить/описывать требования. Иначе проект начнёт проваливаться очень быстро.

Руководитель проекта недостаточно квалифицирован или мотивирован

Очень часто можно слышать рассказы о народе, выигравшем войну вопреки командованию, требования не валить всё на власть, а начать с себя и прочую ересь. Это всё ерунда. Успех любого проекта, в первую очередь, зависит от качества управления. Точнее, качественное управление далеко не всегда гарантирует успех проекта, зато некачественное гарантирует провал.

Менеджеру проекта должно быть «больше всех надо». Именно он должен предвидеть, беспокоиться, подскакивать кабанчиком, обкашливать вопросики. Поэтому у него должно быть ограниченное количество проектов. Фактическое число зависит от квалификации, для меня оптимальны два крупных или один крупный и штук пять мелких, не требующих много внимания. Для другого менеджера эта цифра может оказаться другой. РМВОК, вообще, регламентирует, что в зрелой с точки зрения проектного управления компании, РМ полностью сфокусирован на одном проекте.

С недостаточной квалификацией всё ещё прозрачней. Джуну РМ-у лучше ограничиться лендингами за 3000 руб. или простенькими интернет-магазинами и копить опыт. Если действовать по принципу отца, сбрасывающего сына с лодки, всегда есть риск провала. Ну, или того, что сын научится писать и напишет на незадачливого отца заявление в милицию.

Не определились с особенностями реализации проекта

Бывает, что важные особенности проекта держатся в неопределённом состоянии на стадии первичной или даже точной оценки, а иногда на них забивают даже после старта работ.

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

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

Не определены специфические критерии успешности проекта

Обычно успешным проектом считается проект, который удалось запихнуть в треугольник сроков, денег и качества. Однако бывают проекты, на которых, к примеру, срок важнее других параметров. Как в примере, о котором я писал выше. Ну кровь из носу нужно к 15 октября иметь инструмент для генерации отчётов новой формы. И ничего страшного, если мы потратим немного больше денег или в продукте будут отдельные некритичные баги. А бывает наоборот, запуск проекта связан с репутационными рисками и лучше выпустить продукт попозже, но без багов.

В качестве примера могу привести внедрение безналичной оплаты в калининградских автобусах. Пообещали дату, пролюбили эту дату всего на пару недель, можно сказать, выпустили вовремя. А оказалось, что на деле воспользоваться оплатой безналом невозможно. Терминалы то не ловят сеть, то разряжаются. И вообще, печатают билеты так медленно, что в час пик половина автобуса выходит необилеченной. Соответствующее количество гневных постов и публикаций в СМИ, правительство региона выглядит полными шлемазлами. А оттестируй они систему как положено ещё пару месяцев, никто бы слова не сказал.

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