软件项目的规模、工作量和成本是如何进行估算的

软件项目的规模、工作量和成本是如何进行估算的

ID:11630749

大小:91.50 KB

页数:5页

时间:2018-07-13

软件项目的规模、工作量和成本是如何进行估算的_第1页
软件项目的规模、工作量和成本是如何进行估算的_第2页
软件项目的规模、工作量和成本是如何进行估算的_第3页
软件项目的规模、工作量和成本是如何进行估算的_第4页
软件项目的规模、工作量和成本是如何进行估算的_第5页
资源描述:

《软件项目的规模、工作量和成本是如何进行估算的》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、软件项目的规模、工作量和成本是如何进行估算的 2010-08-23来源:网络 1.基于代码行和功能点的估算软件项目的规模是影响软件项目成本和工作量的主要因素。在基于代码行(loc,lineofcode)和功能点(functionpoint)的估算方法中,利用代码行和功能点来表示软件系统的规模,并通过对软件项目规模的估算进而来估算软件项目的成本和工作量。显然,一个软件项目的代码行数目越多,它的规模也就越大。软件代码行的数目易于度量,许多软件开发组织和项目组都保留有以往软件项目代码行数目的记录,这有助于在以往类似软件项目代码行记录的基础上对当前软件项目的规模进行估算。

2、用代码行的数目来表示软件项目的规模简单易行,自然、直观且易于度量。但是其缺点也非常明显。在软件开发初期很难估算出最终软件系统的代码行数;软件项目代码行的数目通常依赖于程序设计语言的功能和表达能力;采用代码行的估算方法会对那些设计精巧的软件项目产生不利的影响;该方法只适合于过程式程序设计语言,不适合于非过程式程序设计语言(如函数式或者逻辑语言)。针对上述问题,人们提出用软件系统的功能数目来表示软件系统的规模。1979年ibm的albrecht提出了计算功能点的方法。该方法需要对软件系统的二个方面进行评估,即评估软件系统所需的内部基本功能和外部基本功能,然后根据技术复

3、杂度因子对这二个方面的评估结果进行加权量化,产生软件系统功能点数目的具体计算值。具体的,以下是软件系统功能点的计算公式。fp=ct×(0.65+0.01×sfi)(i=1..14)其中,ct是5个信息量的“加权和”,fi是14个因素的“复杂性调节值”(i=1..14),0.65和0.01是经验常数。ct的计算方法如表3所示,ct=(简单用户输入数×3+一般用户输入数×4+复杂用户输入数×6)+(简单用户输出数×4+一般用户输出数×5+复杂用户输出数×7)+(简单用户查询数×3+一般用户查询数×4+复杂用户查询数×6)+(简单文件数×7+一般文件数×10+复杂文件数

4、×15)+(简单外部界面数×5+一般外部界面数×7+复杂外部界面数×10)。其中,用户输入数是指由用户提供的、用来输入的应用数据项的数目;用户输出数是指软件系统为用户提供的、向用户输出的应用数据项的数目;用户查询数是指要求回答的交互式输入的项;文件数是指系统中主文件的数目;外部界面数是指机器可读的文件数目(如磁盘或者磁带中的数据文件)。表3.ct值的加权计算参数取值加权加权因子 最终值简单一般复杂用户输入数´3´4´6用户输出数´4´5´7 用户查询数´3´4´6 文件数´7´10´15 外部界面数´5´7´10 ct= fi(i=1..14)14个因素的“复

5、杂性调节值”取值见表4。表4.fi的取值表序号i问题fi的取值(0,1,2,3,4,5)0-没有影响1-偶有影响2-轻微影响平均影响4-较大影响5-严重影响f1系统需要可靠的备份和复原码f2系统需要数据通信吗f3系统有分布处理功能吗f4性能是临界状态吗f5系统是否在一个实用的操作系统下运行f6系统需要联机数据项吗f7联机数据项是否在多屏幕或多操作之间进行切换f8需要联机更新主文件吗f9输入、输出、查询和文件很复杂吗f10内部处理复杂吗f11代码需要被设计成可重用吗f12设计中需要包括转换和安装吗f13系统的设计支持不同组织的多次安装吗f14应用的设计方便用户修改和

6、使用吗例如,假设项目组要开发一个软件项目a。根据用户的需求描述,该软件项目的ct取值如表5所示。进一步的,假设该软件项目的14个复杂性调节值全部取平均程度。那么根据表5可知,该软件项目的ct=341,14个复杂性调节因素的累加值sfi=42,因而根据公式fp=ct×(0.65+0.01×sfi)(i=1..14)可知,该软件项目的功能点fp=341×(0.65+0.01×42)=364.87,即该项目的功能点数目大致为364。表5.软件项目a的ct值参数取值加权加权因子最终值简单一般复杂用户输入数6´32´45´656用户输出数7´46´55´7103用户查询

7、数2´30´45´636文件数0´73´103´1575外部界面数2´53´74´1071ct=341用功能点来表示软件项目规模的好处是:软件系统的功能与实现该软件系统的语言和技术无关,而且在软件开发的早期阶段(如需求分析)就可通过对用户需求的理解获得软件系统的功能点数目,因而该方法可以较好地克服基于代码行软件项目规模表示方法的不足。其不足主要体现在:该方法没有直接涉及算法的复杂度,不适合算法比较复杂的软件系统;功能点计算主要靠经验公式,主观因素比较多;此外计算功能点所需的数据不好采集。大量的实践表明:针对特定的程序设计语言,软件系统的功能点和代码行二者之间存在某

8、种对应关系

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。