Это то, что ты никогда не должен говорить. Все, что вы будете делать, это раздражать вашего менеджера и заставлять вас выглядеть некомпетентным.
Скажите ему, что вы думаете, что это займет (если вы не можете определить шаги и приблизительно, что они будут делать, то вам, вероятно, нужно, чтобы кто-то сделал лучшую работу по требованиям, так что скажите ему, что требования неясны и, следовательно, вы не можете определить, что это займет.), какие задержки у вас, как правило, из-за более приоритетной работы, а затем дать ему дату. Клиенты не согласятся с тем, когда наступит срок сдачи, поэтому не стоит давать ему его. Когда что-то происходит, чтобы изменить приоритет и другие вещи подталкивают его вперед, напишите менеджеру и установить новую дату, основанную на задержке. Часто, когда вы указываете на изменение даты, эти вещи с более высоким приоритетом сдвигаются вниз. Когда происходят вещи, которые приводят к тому, что работа занимает больше времени, чем вы предполагали, убедитесь, что менеджер сразу же знает, какое влияние это оказывает на дату выполнения.
Любой разработчик должен быть в состоянии предоставить оценку времени. Это часть того, за что вам платят, так что перестаньте “когда угодно”. Если у вас это не очень хорошо получается, то лучше вести учет того, что вы оценили, и какова была реальная дата. Включите время задержки и время для встреч, общения по электронной почте, требования к доработке, модульное тестирование, поддержку qa-тестирования и т.д. в вашу оценку, чтобы получить лучшее число. Если вас попросили указать прямую дату, предположим, что не более 6 производительных часов в день, когда вы конвертируете часы, которые, по вашему мнению, займут несколько дней, и вложите пару дней для неизбежных задержек.
На основании комментариев по другим ответам, кажется, что ваша проблема заключается не в оценке времени, а в сообщении задержек на основе изменения приоритетов. Что вам нужно, так это быть более, а не менее коммуникабельным, когда это происходит. Вам нужно дать людям знать, когда их задача попадет в список приоритетов (и к чему) и будет задержана, и как долго вы ожидаете, прежде чем вернетесь к ней. Пусть они идут бороться с приоритетами вместе с менеджерами. Скажите им, что они могут поговорить с менеджером, если они не согласны с текущими приоритетами.
Но это ваша абсолютная обязанность дать им знать, когда все изменится, и что вы будете работать над чем-то перед их проектом. Это не должно ждать, пока они не спросят вас, почему это еще не сделано. В любом случае, “когда” не является приемлемым ответом. Притворяться, что вы слишком заняты, чтобы ответить, тоже неприемлемо.
Вы должны понимать, что отчеты о ходе работ, оценки времени и т.д. - это все ваша работа, и они так же важны или более важны, чем фактические части разработки. Это не является ненужным перерывом, это часть вашей работы. Эти люди платят вам зарплату своими проектами. Начните относиться к ним с уважением и уважением. Как только они узнают, что могут доверять вам, чтобы вы сказали им, когда дела будут отложены, они будут меньше беспокоить вас.