Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Project management 如何为多个任务和未知开发人员执行基于证据的调度(EBS)?_Project Management_Estimation_Fogbugz - Fatal编程技术网

Project management 如何为多个任务和未知开发人员执行基于证据的调度(EBS)?

Project management 如何为多个任务和未知开发人员执行基于证据的调度(EBS)?,project-management,estimation,fogbugz,Project Management,Estimation,Fogbugz,我正试图了解FogBugz中使用的基于证据的调度(EBS)方法,我已经读了好几遍了 我真正理解的是总体思路,为什么使用蒙特卡罗,等等 我还可以通过使用过去故事的因子来计算估算的外推。到目前为止,一切顺利 问题1 我的问题是:如何计算多个故事的概率分布?我想知道五层楼什么时候完工 我可以把10%的值加起来吗,20%的值,…,最后是100%的值吗 举个例子: 我知道故事1估计为4小时,它的概率分布告诉我0%是3小时,25%是4小时,50%是4小时,75%是5小时,100%是9小时 我知道故事2估计

我正试图了解FogBugz中使用的基于证据的调度(EBS)方法,我已经读了好几遍了

我真正理解的是总体思路,为什么使用蒙特卡罗,等等

我还可以通过使用过去故事的因子来计算估算的外推。到目前为止,一切顺利

问题1 我的问题是:如何计算多个故事的概率分布?我想知道五层楼什么时候完工

我可以把10%的值加起来吗,20%的值,…,最后是100%的值吗

举个例子:

  • 我知道故事1估计为4小时,它的概率分布告诉我0%是3小时,25%是4小时,50%是4小时,75%是5小时,100%是9小时
  • 我知道故事2估计为6小时,它的概率分布告诉我0%是4小时,25%是6小时,50%是6小时,75%是7小时,100%是13小时
如果我现在想知道故事1和故事2的概率分布,我可以加上它们吗,所以我得到:

  • 0%:7小时
  • 25%:10小时
  • 50%:10小时
  • 75%:12小时
  • 100%:22小时
这就是我需要做的吗?还是更复杂

问题2 我的另一个问题是,当涉及多个用户时,如何计算多个任务的结束时间,但我事先不知道哪个用户将处理哪个故事。只要我知道这个任务,就很容易:计算每个用户的故事总数,然后将最新的故事作为总时间(如果一个在3周后完成,另一个在5周后完成,整个项目将需要5周)

但是,如果我事先不知道,并且不是每个用户都能处理每个故事,该怎么办?例如,我把能力放在故事上,比如前端、后端。。。而且我已经为我的用户分配了能力,所以可能会有前端开发人员,后端开发人员。。。等等

当然,可能会有需要多个能力的故事,而这反过来又需要多个用户的工作。但他们将从事不同的工作,完成任务需要不同的时间。这又取决于概率分布:如果一个人跑了,他可能会比没有跑的更早完成。这可能会影响他下一步的工作,他可能会帮助谁,等等

你知道我该怎么计算吗?

1

您不能将概率分布中相应级别的值相加。这将毫无根据地假设任务完成时间之间存在完美的相关性。这里有一些你可以做的事情

在最坏的情况下,完成两项任务的时间是完成每项任务的时间之和。到目前为止,一切顺利。软件开发中的最坏情况估计可能还不错。我不认为把时间加起来通常会造成问题

现在我们需要考虑这两个任务的时间是否受独立于彼此的概率分布支配。也就是说,当我们知道一项任务完成的时间有多快时,这是否告诉我们另一项任务完成的时间有多快?如果我们不知道,我们能做出一个适当安全的假设吗

当然,这取决于错误估计的成本,但假设分布确实是独立的可能足够安全。这样,至少完成一项任务通常不会让我们对另一项任务抱有错误的希望。因此答案是,如果一个任务被分析成M个结果,每个结果都有其自身的概率,而另一个任务被分析成N个结果,每个结果都有其自身的概率,那么我们可以形成M*N个结果,并将第一个任务的第i个结果的概率(密度)与概率(密度)的乘积分配给(i,j)个结果第二个任务的第j个结果

我要修改你的例子,因为,对不起,我不明白。假设第一个任务具有此分布,其中X是一个均匀分布的连续随机变量,介于0%和100%之间:

3 hours, if       X <= 20% (with probability density 20%);
4 hours, if 20% < X <= 60% (with probability density 40%);
5 hours, if 60% < X <= 80% (with probability density 20%);
9 hours, if 80% < X        (with probability density 20%).

3小时,如果X不通过谷歌搜索问题,我猜“未知的开发人员能力”可能会将问题推到NP难优化问题的垃圾箱中。需要研究的两种算法是模拟退火算法和遗传算法(模拟退火算法用于Wintek的电子CAD自动定位程序(我是开发团队成员))。

我投票结束这个问题,因为它与编程无关
 4 hours, if       Y <= 20% (with probability density 20%);
 6 hours, if 20% < Y <= 60% (with probability density 40%);
 7 hours, if 60% < Y <= 80% (with probability density 20%);
13 hours, if 80% < Y        (with probability density 20%).

Now we calculate as follows:

               4@20%   6@ 40%   7@20%   13@20%
              ------ -------- ------- --------
     3@20% | 3+4@ 4% 3+6@  8% 3+7@ 4% 3+13@ 4%
     4@40% | 4+4@ 8% 4+6@ 16% 4+7@ 8% 4+13@ 8%
     5@20% | 5+4@ 4% 5+6@  8% 5+7@ 4% 5+13@ 4%
     9@20% | 9+4@ 4% 9+6@  8% 9+7@ 4% 9+13@ 4%
      7 hours, if       Z <=  4% (with probability density  4%);
      8 hours, if  4% < Z <= 12% (with probability density  8%);
      9 hours, if 12% < Z <= 24% (with probability density 12%);
     10 hours, if 24% < Z <= 44% (with probability density 20%);
     11 hours, if 44% < Z <= 60% (with probability density 16%);
     12 hours, if 60% < Z <= 64% (with probability density  4%);
     13 hours, if 64% < Z <= 68% (with probability density  4%);
     15 hours, if 68% < Z <= 76% (with probability density  8%);
     16 hours, if 76% < Z <= 84% (with probability density  8%);
     17 hours, if 84% < Z <= 92% (with probability density  8%);
     18 hours, if 92% < Z <= 96% (with probability density  4%);
     22 hours, if 96% < Z        (with probability density  4%).