Некоторые правила улучшения временнóй оценки задачи
Автор статьи: Александр Дрёмов.
Подготовка статьи к публикации: Алексей Мудрик.
Содержание
- 1. Введение
- 2. Об оценке времени
- 3. Итоги
© ralphb58
1. Введение
— Что же мы видим, товарищи? Мы видим, что блондин играет хорошо, а брюнет играет плохо. И никакие лекции не изменят этого соотношения сил, если каждый индивидуум в отдельности не будет постоянно тренироваться в шашк... то есть я хотел сказать — в шахматах...
И. Ильф & Е. Петров. «Двенадцать стульев».
Глава XXXIV. Междупланетный шахматный конгресс
Меня попросили рассказать о том, как правильно, с моей точки зрения, оценивать время на задачу. В качестве вступления хочется сказать немножко о человеческом факторе и различиях в психике разных людей.
Все мы рождаемся с разными способностями в работе с теми или иными информационными аспектами окружающего нас мира. Одним из таких информационных аспектов является восприятие времени.
Если не вдаваться в дебри психологии, то можно сказать коротко и просто: люди делятся на сенсориков и интуитов.
Работа с аспектом времени интуитам дается от рождения лучше чем сенсорикам.
Интуитам же (одним из которых являюсь и я сам) часто не бывает необходимости думать о том, как именно они оценивают время: они и так работают со временем без проблем, имея соответствующий тип строения психики.
Поскольку мы с вами работаем в сфере разработки ПО, в основном — в качестве программистов, то так или иначе у большинства из нас должна быть развита логика. Поэтому я попытался заменить интуицию времени логикой, выведя ряд правил, позволяющих, с моей точки зрения, улучшить работу с аспектом времени людям, которым, в силу строения их психофизики, на этот аспект приходится тратить больше энергии, чем им бы хотелось.
Если же вам захочется сказать мне по окончании чтения этой статьи: «Спасибо, Кэп!», скорее всего это значит не то, что вас сегодня посетил Капитан Очевидность в моем лице, а то, что вы либо сами являетесь сильным интуитом, либо, устав терять энергию на оценку временных затрат, сами уже давно реализовали через логику защиту своей психики от лишних энергозатрат по аспекту интуиции времени.
2. Об оценке времени
2.1. Поймите, что именно вам надо сделать в результате
Прежде чем давать оценку по времени на выполнение задачи, поймите как можно лучше, что именно от вас требуется для реализации данной задачи.
Для этого вы должны обязательно получить достаточное для вас описание задачи от вашего менеджера (лица, который дает вам для оценки задачу). Если никто не берет на себя ответственность за определение конкретики, необходимой для вашего понимания при оценке, отказывайтесь оценивать задачу пока кто-то из вышестоящих в иерархии ответственности не возьмет на себя ответственность по конкретизации деталей (или официально не делегирует ее вам).
Далее, если задача не атомарная, создайте ее детализацию.
2.1.1. Детализация задачи
Нельзя оценивать задачу без четкого понимания того, на что вам нужно время. Немного о правильной детализации задачи.
• Разбивайте задачу на очевидные подзадачи до тех пор, пока подзадачи не будут настолько для вас понятны, что вы сможете дать их приемлемую временную оценку
Если вы не можете точно оценить то, сколько времени у вас занимает задача, продолжайте дробить ее на более мелкие. Суммарная оценка подзадач составит требуемую оценку всей задачи
• Не увлекайтесь чрезмерным дроблением.
Слишком сильное дробление не несет пользы; скорее наоборот — оно вредно. Чрезмерная детализация забирает время на ее построение и дальнейшее поддержание детализированного плана задачи. Также чрезмерная детализация бессмысленна при недостаточно подробном тех.задании на задачу на момент оценки.
Лично я при оценке чаще всего не опускаюсь ниже 4 часов на задачу. Хотя иногда ставлю 2 часа или 1 час (необходимость в этом возникает тогда, когда явно выделяются атомарные задачи небольшой продолжительности). Но, в целом, ваш минимальный порог будет зависеть от того, какой минимальный уровень сложности задачи вы сможете точно оценить.
2.1.2. Определение рисковых подзадач
Определите, является ли задача рисковой. Рисковой она для вас является если включает, например, работу с технологией с который вы слабо знакомы, или ставит вас в зависимость от внешних факторов (возможное неожиданное для вас изменение API внешней системы, которой вы пользуетесь и т.д.). Добавьте коэффициент на риск. На то что «что-то пойдет не по плану» обычно отводится 20%-30% от времени задачи.
Если слишком много рисковых задач, или риск высок настолько, что вы совершенно не в состоянии оценить задачу (например, новая технология, вам совершенно не знакомая), то отложите оценку и создайте отдельную задачу типа research, целью которой будет более подробное ознакомление и понимание сути рисковой задачи. Оцените время на этот research. После такого исследования вы сможете более точно оценить время, которое вам потребуется на такую рисковую задачу.
2.1.3. Оценка времени детализированной задачи
Во-первых, помните, оценивая задачу, что вы никогда не тратите все 8 часов рабочего дня непосредственно на работу по задаче. У вас всегда будут затраты времени, на то чтобы заварить/попить кофе/чай, посидеть в туалете, послушать свежий анекдот и т.д. Потом вы садитесь за компьютер и пытаетесь какое-то время вспомнить, что же вы там делали. Вас отрывают коллеги вопросами по работе и прочее, прочее.
Когда же вы оцениваете задачи по запросу менеджера, вы, возможно, выдаете время оценки исключительно на работу над задачей, без учета всех этих непроизводственных затрат времени. Как результат, ваши оценки будут менеджером использованы в суммарной оценке задачи, и получится ,что в вашем рабочем дне все 8 часов непрерывная работа над задачей. Что, конечно же, не так. Хорошо если из этих 8 часов хотя бы 6 часов составят время вашей эффективной работы. В результате, получаем неточную реальную оценку задачи.
• Оценивая задачу, представьте, что вы реально сидите за компьютером и работаете над ней непрерывно. Подумайте, хватит ли вас на такое непрерывное кодирование? Если нет, добавьте к оценке и затраты, которые вам потребуются на непроизводственные нужды. А лучше всего всегда закладывайте в оценку любой задачи эти затраты времени на «попить кофе и почитать почту».
• Не забывайте добавлять задачи по интеграции различных частей задачи друг с другом (если это может потребовать значимого для оценки времени). Не забывайте что интеграция вашего модуля с другими модулями, или интеграция подзадач между собой может в ряде случаев нести временные издержки на устранение тех или иных ошибок и непродуманности в реализации интегрируемых модулей.
2.2. Оцените качество вашей оценки
Ведите для себя статистику качества вашей временной оценки по задачам. Сравните реальное время, потраченное на задачу, с данной вами предварительной оценкой. Определите ваш коэффициент погрешности в оценке времени. Определите его как отношение реального времени (Tp), потраченного на задачу, к времени предварительной оценки (To).
K = Tр / Tо
Чем больше статистика замеров, тем вероятнее то, что вы более точно учтете вашу погрешность.
Запомните этот коэффициент и умножайте в дальнейшем на него вашу предварительную оценку. Это приблизит вас к более точному прогнозу.
2.3. Для менеджеров
Хочется отметить ряд моментов, которые требуются тем, кто обрабатывает временные оценки от подчиненных и сводит их в единый календарный план.
• Добавляйте к суммарным временным оценкам комплексных задач 20%-30% на риски. Это может быть риск того, что кто-то из исполнителей заболеет, или у него неожиданно (для вас) родится ребенок, или будет свадебное путешествие в Магадан. Так или иначе, что-то да обязательно сработает, особенно если сроки верхнеуровневых задач более двух недель.
• Не забывайте при составлении интегрального календарного плана о блокирующих взаимозависимостях между различными задачами. Календарный срок реализации комплексной задачи не равен сумме оценок всех исполнителей. Кто-то будет ждать окончания работы другого сотрудника, для того чтобы начать свою задачу. Учитывайте это. Иначе будут неожиданные сдвиги даты окончания задачи.
• Ведите свои коэффициенты точности оценки времени каждым вашим подчиненным. Корректируйте с помощью этих коэффициентов полученные от подчиненных оценки.
2.4. Кратко об инструментарии
Есть множество программ для тайм-менеджмента и временнóго планирования. Лично я пользуюсь для построения календарного плана общеизвестным продуктом MS Project. Мне его возможностей более чем достаточно.
У вас могут быть свои предпочтения.
3. Итоги
Резюмируем все вышесказанное. Что чаще всего приводит к ошибкам во временных оценках задачи?
Причины:
• Отсутствие конкретики в поставленной задаче и попытка оценить задачу, сформулированную в стиле «Пойди туда, не знаю куда. Принеси то, не знаю что»
• Недостаточное понимание оценивающим количества действий, требуемых для реализации большой задачи
• Неучтенные риски, влияющие на те или иные задачи
• Оценка задачи в «чистом» времени без учета непроизводственных временных затрат
• Неучтенность временных затрат на интеграцию различных подзадач друг с другом
• Неучтенность блокирующих взаимозависимостей между задачами различных исполнителей
Методика устранения:
• Требуйте конкретики в постановке оцениваемой задачи. Либо требуйте себе полномочий на определение того, каким образом та или иная неопределенность будет разрешена.
• Детализируйте задачу до тех пор пока вы не получите подзадачи которые уверено сможете оценивать во времени.
• Не увлекайтесь чрезмерной детализацией
• Определите рисковые задачи и увеличьте их оценку по времени, в соответствии с риском (по умолчанию это увеличение времени оценки на 20%-30%)
• Если рисковые задачи невозможно оценить по времени, потребуйте отложить оценку и возьмите себе время на предварительное исследование вопроса, после которого вы уже сможете более точно оценить исходную задачу.
• Учитывайте в вашей временной оценке непроизводственные затраты времени
• Высчитайте ваш коэффициент погрешности оценки и используйте его в дальнейшем для корректировки.
• Учитывайте в оценке блокирующие взаимозависимости между задачами различных исполнителей.
• Ведите коэффициенты погрешности оценки для ваших подчиненных и используйте их для корректировки выдаваемой ими временной оценки.
Это все на сегодня.
Спасибо за внимание.
Все про українське ІТ в телеграмі — підписуйтеся на канал DOU
Найкращі коментарі пропустити