2010-02-01 115 views
3

如何使用COCOMO2计算开发时间(小时)?我正在计算程序员在使用COCOMO2编程项目上花费的时间(小时)。这是我迄今为止的,但我不确定这是否正确。我宁愿手工计算,而不是使用在线计算器。任何援助将真正理解:使用COCOMO 2计算使用小时

公式:PM =系数* KLOC ^(升高至1.01 + 0.01 *的总和5比例因子次幂)* 17个成本动因

人月的产品(PM) =?
系数= 2.5 ?? (混经验的团队,是该系数是否正确?)代码(KLOC)的
千行= 100
5的总和比例因子= PREC 2.43 + PMAT 2.73 + TEAM 3.95 + FLEX 3.64 + RESL 3.38 = 16.13
的产品17个比例因子= 17.32

因此,2.5 * 100 ^(1.01 + 0.01 * 16.13)* 17.32 = 9529.9

是9529.9正确的吗?它的单位是什么?我正在努力获得项目花费的时间。

回答

9

COCOMO II.2000.0 Model Manual

在COCOMO II的努力表示为 人月(PM)。一个人月是 一个人花费 工作在软件开发 项目一个月的时间量。

该论文很长并且描述了很多不同的因素。在维基百科页面 上给出了一个名为Intermediate COCOMO的表单,其中有15个成本驱动器,也许这个表单更简单。在http://csse.usc.edu/csse/research/COCOMOII/cocomo_downloads.htm有一个程序,你可以下载来计算(未经我测试)。

此外,项目估计可以在线完成COCOMO Estimation。有3种型号正在使用 - COCOMO,COSYSMO & COQUALMO。

+1

hlovdal, 我不能感谢你足够的精彩PDF你推荐!我从头到尾阅读它。它不仅回答了我的所有问题,而且令人惊讶的是,这个问题清楚而直接。我希望我能评价你/你的帖子,但我现在的排名还不够高。再次感谢。 – Anthony 2010-02-04 09:27:18

1

COCOMO2(和COCOMO,就此而言)以人月计算产出。一个人年= 12个人月(显然)。一年的两个男人= 24个人月。

要将其转换为工时,请乘以组织的每个人月的可用工时数。你的会计部门可以给你这个电话号码。 (它通常是高度专有的,因为它是估算过程和企业运营效率的关键。)

在美国,每年可用非加班工时的名义数量为2080年 - (假期日+假期+病假日)* 8。这是52周*每周40小时,减去休假,假期和病假。你可能会也可能不想包括几天在那里的自然灾害应急。与你的会计部门讨论。如果每月12 *您的可用工时大大超过每年可用的非加班工时名义数量,那么您将被设置为在项目估算中假设重大的计划外,未编制预算和无补偿的加班时间。 (是的,我已经看到了这样做的地方,聪明的人不这样做。)

还应该注意的是,COCOMO和COCOMO2假定一个月与另一个月大致相同。如果您接近年历结束时,或者您正在尝试估计(并计划)一个短小的项目,则这是危险的。就完成工作量而言,11月1日至12月31日的美国不会超过一个月。

假设你正确选择了各种因素,你的数学看起来是正确的。看起来好像你正在为你的100,000行代码项目计算9530个人月,或者少于80个人年。

+0

John Strohm,非常感谢您花时间提供这些真实世界的例子。他们非常有帮助,谢谢! – Anthony 2010-02-04 09:22:53