您的位置:首页 > 其它

估算

2004-11-17 21:33 246 查看
项目的规模
对软件项目进行有效的估算,取决于掌握多少有关项目范围的原始资料。通常,应当根据正式的需求描述进行估算。正式的需求描述可以是需求说明书、系统规格说明书或软件需求说明书等。如果开始时缺乏一些正式的资料,也可以采用口头描述或草稿的方式开始估算工作。在得到项目范围的正式资料后,必须进行再估算。估算的两个主要方法是:
第一种方法是根据项目特征和算法进行估算。
例如,根据软件系统的输入、输出、查询、文件及外部接口等信息,使用功能点法估算出系统的规模。基于功能点估算是按照用例(Use case)来做的,而不是软件功能来做。通过研究初始应用需求来确定各种输入、输出、计算和数据库需求的数量和特性。通常的步骤是:
A、计算输入、输出、查询、主控文件和接口需求的数目。
B、将这些数据进行加权乘。下表为一个典型的权值表。



C、估计者根据对复杂度的判断,总数可以用乐观值、可能值或悲观值调整。
D、采用下面的方式计算功能点:
FP=总计数值×[0.65+0.01×ΣFi]
其中,“总计数值”是所有功能点条目的总和。
Fi(i=1到14)是基于对表2中问题的回答而得到的“复杂度调整值”(0~5)。等式中的常数和信息域值的加权因子是根据经验确定的。
下面将以某个计算机辅助设计(CAD)应用为例,估算开发的软件包的输入、输出、查询、文件及外部接口。为了达到这个估算目的,我们假设复杂度加权因子都是平均的。根据对软件范围的叙述,对软件功能进行分解,识别出主要的几个功能:用户界面和控制功能、二维几何分析、三维几何分析、数据库管理、计算机图形显示功能、外设控制以及设计分析模块。最后可得到如表2所示的估算表。



由表2得到总计数值为318。
接着,估算14个复杂度加权因子(Fi,根据问题对项目的影响取值范围是0~5),表3给出了因子值。



FP=总计数值×[0.65+0.01×ΣFi]=366
第二种方法是采用类比的方法,根据历史数据来进行估算。
如果有一个以前做过的类似项目并且掌握它的规模,就可以把新项目的各个主要部分与原有项目的相应部分进行比较,得出一个比例关系,将各部分相对于原项目规模比例相加,计算出新项目的规模。如果估算者的经验丰富并且新项目与老项目具有足够的相似性,就能够得到合理的估算值。
但是采用类比法,往往还要解决可重用代码的估算问题。估计可重用代码量的最好办法就是由程序员或系统分析员详细地考查已存在的代码,估算出新项目可重用的代码中需重新设计的代码百分比、需重新编码或修改的代码百分比以及需重新测试的代码百分比。根据这三个百分比,可用下面的计算公式计算等价新代码行:
等价代码行 = [(重新设计% +重新编码% +重新测试%)/3]× 已有代码行
比如:有10,000行代码,假定35%需要重新设计,55%需要重新编码,75%需要重新测试,那么其等价的代码行可以计算为:
[(30% + 50% + 70%)/3]×10,000= 5,500 等价代码行。即:重用这10000代码相当于编写5500代码行的工作量。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: