Сегодня затронем техническую сторону одной небольшой управленческой проблемы.

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

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

Расчеты ведутся для определенного сотрудника на основании его рабочего календаря и работ которые находятся в не конечном состоянии.

Длительность работы - период времени, на протяжении которого нужно выполнить работу.
Плановая продолжительность работы - время за которое нужно выполнить работу.
Длительность работы "по календарю" - время рассчитанное функцией.
GetWorkTimeByStartDateAndDueDate(CalendarID, StartDate, DueDate) - фактически количество рабочих часов в определенном периоде.
Затраченное время - время уже затраченное на выполнение работы

Пример: Работа “Написать документ” нужно выполнить за 2 недели с 01.10.2010 до 14.10.2010. На выполнение работы есть 10 часов.

Длительность работы - 336 часов (2 недели).
Плановая продолжительность работы - 10 часов.
Длительность работы “по календарю” - 80 часов (10 рабочих дней по 8 часов)
Затраченное время - 5 часов (сотрудник уже выполнял данную работу в течении 5 часов)

Итак, каждая работа создает определенную нагрузку на сотрудника. Нагрузка рассчитывается в определенной точке времени, назовем ее KeyDate.
KeyDate - ключевое время для которого и будет рассчитываться загруженность сотрудника.
CurrentDate - текущее время.
Рабочее время расчета - Длительность по календарю для периода от CurrentDate до KeyDate.
KeyDate > CurrentDate, то есть мы рассчитываем загруженность в будущем, а не прошлом.

Есть несколько категорий работ, которые по разному влияют на загруженность в определенную дату.
В первую категорию попадают работы у которых дата начала и дата завершения меньше KeyDate. Для первой категории работ нагрузка, которую создают они считается очень просто: Нагрузка Работы= Плановая продолжительность работы - Затраченное время (мы рассматриваем случаи, когда Плановая продолжительность работы не меньше Затраченного времени, и если у нас получается наоборот - то варианты обработки таких случаев мы рассмотрим в отдельной статье)
рис.1

Объясняется так: чтобы доделать эту работу нужно затратить еще х=Нагрузка работы часов.
Примечательно, что в данном случае нагрузка рассчитывается одинаково, независимо от CurrentDate.

Вторая категория - работы дата начала которых меньше KeyDate, а дата завершения - больше. То есть, KeyDate разделяет работу на 2 части. Но для подсчета при подсчете нагрузки в данном случае решающую роль играет CurrentDate. Но для начала расчитаем нагрузку по предыдущей формуле Нагрузка = Плановая продолжительность работы - Затраченное время. Теперь все что нужно сделать взять правильную пропорцию. Есть два варианта:
a) Если CurrentDate меньше начала работы:
рис. 2

то формула расчета пропорции примет следующий вид.
Нагрузка Работы = Нагрузка*(B/A), где B и A - длительность “по календарю”, (Обращаем внимание, что отношение берется не просто длительностей частей работ, а именно длительность “по календарю”)
б) Если CurrentDate больше начала работы:
рис. 3

то формула расчета пропорции примет следующий вид.
Нагрузка Работы = Нагрузка*(D/(D+C)), где D и C - длительность “по календарю”, (Обращаем внимание, что отношение берется не просто длительностей частей работ, а именно длительность “по календарю”)

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

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

Нравится

Поделиться

0 комментариев
Показать все комментарии