Чтобы не быть слишком широким для начала, прямой вопрос будет:
Ожидается ли, что разработчик должен постоянно напоминать руководству проекта о функции, которая не реализована из-за нехватки ресурсов для ее реализации?
Правила такие: У нас есть доска с задачами в столбцах. Разработчик выбирает задачу в «OPEN» и начинает над ней работать. При этом он переводит задачу в состояние «В ПРОГРЕССЕ». Когда он закончит, задача переходит в «РАЗРАБОТКА ВЫПОЛНЕНА» (позже в тестирование). Но если что-то пойдет не так, задача должна быть переведена в «ОБРАТНУЮ СВЯЗЬ», где нужно что-то решить. Возможно дизайн отсутствует или какое-то описание неясно...
Довольно просто, если вы спросите меня.
По моему мнению, как разработчику, когда задача не может быть завершена, а ее тикет находится в «ОБРАТНОЙ СВЯЗИ», руководитель проекта обязан отслеживать функцию и прилагать усилия, чтобы найти человека, который может решить проблему с ней.
Но вот что произошло в нашей команде: Тикет был отправлен в "ОБРАТНУЮ СВЯЗЬ", так как не был реализован необходимый API. Тикет лежал там несколько месяцев (да, на самом деле около полугода), а затем в какой-то момент один из менеджеров проекта просто закрыл тикет, потому что другой менеджер проекта сообщил, что он передал проблему другой команде. Проходит еще месяц, и вдруг появляется эта незавершенная функция. Теперь один из менеджеров проекта в ярости и заявляет, что мы как разработчики обязаны отслеживать такие вещи и что он ожидает, что у нас есть какой-то список вещей, которые не сделаны.
Это правда? Должны ли мы как-то отслеживать какие-то дополнительные вещи рядом с уже имеющейся доской? Я ожидаю, что для таких вещей должно быть достаточно одной платы, и команда разработчиков сделала все возможное, чтобы предотвратить такой беспорядок. Если нет, есть ли у вас какие-либо рекомендации о том, как избежать таких проблем или как лучше отслеживать такие потенциальные проблемы?
Чтобы дать полную историю о том, как/что произошло:
Делаем мобильное приложение. Несколько месяцев назад мы получили запрос о том, что на определенном экране (редко видимом пользователем) может быть получена ошибка от API (из-за какой-то редкой ситуации). Теперь эта конкретная ошибка также будет сообщать о дополнительном коде ошибки. Поэтому, если возникает эта ошибка, будет добавлена подошибка A
или подошибка . B
И в зависимости от этой подошибки приложение должно показывать screenA
либо screenB
. Но API не предоставил A
ни того, ни другого B
, и выполненная задача не могла быть проверена или протестирована.
Так что тикет попал в "ОБРАТНУЮ СВЯЗЬ", объяснив это тем, что API просто не готов к этому. Но затем в заявке началось обсуждение о том, чтобы увидеть экран, просто чтобы проверить дизайн. Таким образом, разработчик добавил логику для случайного отображения screenA
или screenB
и сообщил об этом в заявке, которая все еще находилась в разделе «ОБРАТНАЯ СВЯЗЬ».
Прошли месяцы, и в какой-то момент один из менеджеров попытался справиться с этим. Поэтому он (я полагаю) сообщил об этом команде, отвечающей за API, и прокомментировал тикет, что-то вроде «Они сказали нам, что это ошибка на их стороне. Упомяните: theOtherPM, мы можем закрыть этот тикет сейчас?». И «ДругойПМ» закрыл тикет. Еще через месяц из-за этого разверзается ад, и я не понимаю, почему это вина нас, разработчиков.
Примечание. Следует также упомянуть, что другая команда, отвечающая за API (среди прочего), не является частью нашей сети и даже не является частью нашей компании. У нас, как у команды разработчиков, нет прямого общения с ними. Так что не было другого способа решить эту проблему, кроме как через наше руководство.
Вопрос, который вы задаете, на самом деле является проблемой X/Y. У вас есть пара других проблем, которые вы на самом деле не назвали в своем вопросе:
Если у вас есть традиционные менеджеры проектов, отвечающие за проект, то они в конечном счете несут ответственность за отслеживание статуса рабочих элементов и предоставление соответствующих отчетов. Это верно независимо от того, делегируют ли они часть этой ответственности членам команды.
С другой стороны, если у вас действительно гибкий процесс, то как ответственность, так и ответственность за отслеживание рабочих элементов должны быть четко определены рабочими соглашениями команды, как внутри команды, так и с другими командами. Нет правильного или неправильного ответа на вопрос, кто должен нести ответственность или ответственность, если он отвечает потребностям всех заинтересованных сторон, включая потребности самой проектной группы.
Я думаю, что у этого есть канонический ответ, по крайней мере, с традиционной точки зрения PM, если не с Agile, Kanban или чем-то еще.
Если часть работы не может быть завершена по какой-либо причине механиком, разработчиком, продавцом, кем бы то ни было, тогда проблема возвращается к части проекта PM или PM, которая должна быть отслежена и решена. Назначенный персонал проекта, который должен был выполнить эту работу, либо переходит к другой работе, либо даже покидает проектную площадку. Эта роль больше не может и во многих случаях больше не может отслеживать и контролировать эту проблему. Ответственность возлагается на владельца в рамках элементов управления PM, и это может варьироваться от проекта к проекту.
Если в этом процессе что-то ломается и предмет теряется, ответственность за эту потерю лежит на PM или средствах контроля PM.
МСВ
Матич Облак
Майк Робинсон
Майк Робинсон
Матич Облак
Мачта
Хроноцид
Уилл Кроуфорд
Майк Робинсон