Недавно у меня был такой случай. У одного разработчика было задание, которое мы разбили на 3 не связанные между собой подзадачи.
- подзадача 1 - время выполнения 1/2 дня (t1=1d=8h);
- подзадача 2 - время выполнения 1 час (t2=1h);
- подзадача 3 - есть два несовместимых варианта решения :
- вариант А - пол дня (tA3=1h)
- вариат - B 3 дня (tB3=3d=24h).
Я бы работал по следующему плану:
- отправил письмо заказчику;
- подзадача 1;
- подазача 2 ;
- если не получен ответ то приступил бы к подзадаче 3, вариант Б.
- по получении ответа либо продолжил бы делать вариант Б либо переключился на вариант А
Разработчик же решил делать так:
- отправил письмо заказчику;
- подзадача 3, вариант Б (который 3 дня);
- получил ответ от заказчика (угадал - т.е. вариант Б+)
- подзадача 1;
- подзадача 2;
Дальше для тех, кто любит математику:
Сначала мой случай.
Максимальное время на выполнение всего задания (худший случай) при моем подходе:
Tmymax
= 1/2h + 4h+1h +max ((1d - 1/2h-4h-1h),3d) =
= 5 1/2h +max ((2 1/2h), 3d) = 29 1/2 h,
где t_{email,1,2} = t_{email} + t_1 + t_2;= 1/2h + 4h+1h +max ((1d - 1/2h-4h-1h),3d) =
= 5 1/2h +max ((2 1/2h), 3d) = 29 1/2 h,
Минимальное время на выполнение всего задания (лучший случай) при моем подходе:
T_{my}^{min}= t_{email,1,2} + min( (t_{reply}^{slow} - t_{email,1,2} + t_3^A), t_3^B ) = 8 h
Вероятность худшего случая при моем подходе :
P_{my}^{max} = P_3^B = 90%
Мат. ожидание времени выполнения при моем подходе:
E[T_{my}] = P_{my}^{max} * T_{my}^{max} + (1-P_{my}^{max}) * T_{my}^{min} =
= 90 % * 29 1/2 h + 10% * 8h = 27.35 h
Максимальное время на выполнение всего задания (худший случай) при подходе разработчика: = 90 % * 29 1/2 h + 10% * 8h = 27.35 h
Теперь подход разработчика.
T_{dev}^{max}= t_{email}+max(t_{reply}^{slow} + t_3^A, t_3^B) + t_{1,2} =
= 1/2h + max(1d + 1/2d,3d) + 4h + 1h = 29 1/2 h
= 1/2h + max(1d + 1/2d,3d) + 4h + 1h = 29 1/2 h
Минимальное время на выполнение всего задания (лучший случай) при подходе разработчика:
T_{dev}^{min} = t_{email}+min(t_{reply}^{slow} + t_3^A, t_3^B) + t_{1,2} = 14h
Вероятность худшего случая при подходе разработчика:
P_{dev}^{max} = P_{email}^{long}= 50%
Мат. ожидание времени выполнения при подходе разработчика:
E[T_{dev}] = P_{dev}^{max} * T_{dev}^{max} + (1-P_{dev}^{max}) * T_{dev}^{min} =
= 50 % * 29 1/2 h + 50% * 14h = 21.75 h
= 50 % * 29 1/2 h + 50% * 14h = 21.75 h
Т.о. подход разработчика, дает меньшее ожидаемое время исполнения, хотя в лучшем случае и занимает большее время.