Распределение времени на исправление ошибок

StackOverflow https://stackoverflow.com/questions/134821

  •  02-07-2019
  •  | 
  •  

Вопрос

Клиент попросил нас дать нам оценку времени на каждую имеющуюся у нас ошибку.

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

Я не сторонник уделять время ошибкам просто потому, что:

  1. Обычно это неточно.Очень сложно подсчитать, сколько времени потребуется на исправление.
  2. Пустая трата времени.
  3. Влияет на качество кода
  4. В долгосрочной перспективе создает больше ошибок (мы можем упустить некоторые вещи, пытаясь завершить работу к установленному сроку).

Как нам следует решить эту проблему, если мы не хотим указывать количество часов на одну ошибку, а хотим указать только временные рамки того, какие ошибки будут исправлены?

Как вы распределяете время на свои ошибки?Эффективно ли это?Стоит потраченного времени и усилий?

Это было полезно?

Решение

Единственный ответ, который я могу дать, — это быть крайне консервативным.Угадайте, сколько времени это займет, и умножьте свое предположение на четыре.Используйте это в качестве оценки.Как вы сказали, очень сложно предугадать, сколько времени потребуется на исправление ситуации, и лучше сказать, что это займет больше времени, чем на самом деле, чем быть пойманным на «нарушении сроков», потому что вы были недостаточно консервативны.

Другие советы

Компания, в которой я работаю, часто получает необоснованные запросы от наших клиентов. Главное, что нужно помнить, — это то, что клиенты хотят быть хорошо информированными. Мы нашли лучший способ сделать это с помощью отчетов о состоянии.

Итак, сначала мы неплохо разъясняем нашу позицию.В вашем примере это будет примерно так:

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

Тем не менее, я считаю, что полезно попытаться оценить, сколько времени потребуется на исправление каждой ошибки.Причина в том, что вам нужно понимать, сколько всего времени займет исправление всех ошибок.Вы не сможете получить точную оценку, если у вас нет оценки того, сколько времени потребуется на ремонт отдельных частей.Конечно, это могут быть приблизительные оценки (по оценкам, не более часа на исследование проблемы) — вы не хотите тратить слишком много времени на оценку.Тогда я обычно добавляю дополнительные 20%.Допустим, оценки ошибок составляют 3 дня, 5 дней и 2 дня.Затем я сообщал заказчику, что мы сможем исправить ошибки в течение 12 дней.Тогда, конечно, вам может потребоваться добавить больше времени на тестирование и переупаковку вашего продукта, прежде чем вы сможете предоставить им результат.

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

Подумайте об этом с точки зрения управление гневом клиента.Если вы скажете им, что исправление ошибок не займет много времени и в конечном итоге займет 3 месяца, ваш клиент будет доволен вами сейчас и разозлится на вас в будущем.

Если вы скажете им, что исправление ошибок займет 3 месяца, а на самом деле исправление займет 3 месяца (что и будет), ваш клиент будет в ярости сейчас и доволен вами в будущем.

Я обычно говорю, что устранение ошибок не займет много времени (2-3 дня кажутся хорошим успокаивающим числом).

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

Вы правы, оценки обычно неточны.

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

Почему бы просто не выбрать несколько диапазонов по серьезности ошибок, например.1 час, 1/2 дня, 1 день, 1 неделя и назначайте их.Обычно вы чувствуете ошибку — о которой вы понятия не имеете, припишите к ней наихудшее значение!

Я не думаю, что вам потребуются оценки на более тонком уровне, чем этот, по причинам, которые вы указали (слишком много времени для расследования и т. д.).

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

Ни при каких обстоятельствах это не должно приводить к созданию новых ошибок.Вам не следует торопиться, чтобы исправить это.Если вы рассчитали 1 день, а на это ушло 10 часов, это нормально.Если вы рассчитали 1 неделю, а на это ушло 2 часа – хороший результат!

Это просто упражнение на оценку!

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

Если это ошибки, которые были обнаружены и о которых сообщалось, то вы сможете оценить время их исправления (и время повторного тестирования).Достоверность оценки, скорее всего, будет пропорциональна времени, которое вы потратите на оценку; возможно, объясните эту стоимость клиенту.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top