编辑: 梦里红妆 | 2017-08-29 |
③ 给出使用了新的软件工程方法和工具所得到的(在生产率和质量两方面)的效益;
④ 建立项目估算的 基线 ;
⑤ 帮助调整对新的工具和附加培训的要求. 度量的方式 在物理世界中的度量有两种方式. 直接度量(例如,度量一个螺栓的长度);
间接度量(例如,用次品率来度量生产出的螺栓质量).软件度量也同样分为两类:直接度量与间接度量. 软件工程过程的直接度量包括所投入的成本和工作量.软件产品的直接度量包括产生的代码行数(LOC)、执行速度、存储量大小、在某种时间周期中所报告的差错数.软件产品的间接度量包括功能性、复杂性、效率、可靠性、可维护性和许多其它的质量特性. 只要事先建立特定的度量规程,很容易做到直接度量软件所需要的成本和工作量、产生的代码行数等.软件的功能性、效率、可维护性等质量特性却很难用直接度量判明,只有通过间接度量才能推断. 软件度量域的分类 软件生产率度量的焦点集中在软件工程过程的输出;
软件质量度量则指明了软件适应明确和不明确的用户要求到什么程度;
技术度量的焦点则集中在软件的某些特性(如逻辑复杂性、模块化程度)上而不是软件开发的全过程. 另一种分类方法 面向规模的的度量用于收集与直接度量有关的软件工程输出的信息和质量信息.面向功能的度量提供直接度量的尺度.面向人的度量则收集有关人们开发计算机软件所用方式的信息和人们理解有关工具和方法的效率的信息. 面向规模的度量 面向规模的度量是对软件和软件开发过程的直接度量.可以建立一个面向规模的数据表格来记录项目的某些信息.该表格列出了在过去几年完成的每一个软件开发项目和关于这些项目的相应面向规模的数据. 面向规模的数据表格 项目aaa-01 规模为 114.1 KLOC(千代码行) 工作量用了 24个人月 成本为168,000元 文档页数为365 在交付用户使用后第一年内发现了29个错误, 有3个人参加了项目aaa-01的软件开发工作. 需要注意的是,在表格中记载的工作量和成本是整个软件工程的活动(分析、设计、编码和测试),而不仅仅是编码活动.对于每一个项目,可以根据表格中列出的基本数据计算简单的面向规模的生产率和质量的度量. 根据数据表格可以对所有的项目计算出平均值:生产率 = KLOC/PM(人月)质量 = 错误数/KLOC成本 = 元/LOC文档 = 文档页数/KLOC 面向功能的度量 面向功能的软件度量是对软件和软件开发过程的间接度量.面向功能度量主要考虑程序的 功能性 和 实用性 ,而不是对 LOC计数.该度量是一种叫做功能点方法的生产率度量法,利用软件信息域中的一些计数和软件复杂性估计的经验关系式而导出功能点 FP. 面向功能的数据表格 功能点计算 确定五个信息域的特征,并在表格中相应位置给出计数. (1) 用户输入数:各个用户输入是面向不同应用的输入数据.(2) 用户输出数:各个用户输出是面向应用的输出信息,包括报告,屏幕信息,错误信息等.在报告中的各个数据项不应再分别计数. (3) 用户查询数:查询是一种联机的交互操作,每次询问/响应具备应计数. (4) 文件数:每一个逻辑主文件都应计数.逻辑主文件是指逻辑上的一组数据,可以是一个大数据库的一部分,可以是一个单独的文件.(5) 外部接口数:与系统中其他设备通过外部接口读写信息次数均应计数. 一旦收集到上述数据,就可以计算出与每一个计数相关的复杂性值.一个信息域是简单的、平均的还是复杂的,由使用功能点方法的机构自行确定,从而计算出加权计数.计算功能点,使用如下的关系式:FP = 总计数*( 0.65+0.01*SUM ( Fi ) )总计数是所有加权计数项的和 Fi(i=1..14)是复杂性校正值,它们应通过逐一回答如下提问来确定.Fi的取值0..5:0 没有影响