您好,欢迎来到飒榕旅游知识分享网。
搜索
您的当前位置:首页采用功能点分析法度量软件规模应用研究

采用功能点分析法度量软件规模应用研究

来源:飒榕旅游知识分享网
总第286期 2013年第8期 计算机与数字工程 Computer&Digital Engineering V01.41 No.8 1283 采用功能点分析法度量软件规模应用研究 胡波 北京100071) (海军装备部装备采购中心摘要对软件规模进行估算和度量已经成为软件规范化开发的基础要求,针对现有软件规模估算中功能点分析法的计算规则及其不 足,提出了一种可行的功能点分析法实施准则,并运用线性回归数学模型对开发项目实例的数据进行了演算和分析,评价结果表明线性回归 数学模型的可靠性和准确性。 关键词软件规模;功能点分析;线性回归模型 TP391 DOI:10.3969/j.issn1672—9722.2013.08.024 中图分类号Application of Adopt the Function Point Analysis Measurement Software Size HU B0 (Equipment Procurement Center in Equipment Department of the Navy,Beijing 100071) Abstract Estimating and measuring software scales has been already recognized as an essential requirement during executing the process of software development successfully.Aiming at the calculation rules。applicability,merits and demerits of FPA,this paper put for~ ward an executable standard,and used liner regression analysis model to analyze the developed proiect instance.The experiment results show the soundness and veracitinity of proposed mode1. Key Wo s software size,function point analysis,liner regression model Class Nulrnl ̄}r TP391 1 引言 随着软件技术的发展,采用功能点分析法度量软件规 程,软件规模很可能被高估。 针对现有软件规模估算中功能点分析法的计算规则及 其不足,本文以IFPUG功能点标准为基础,提出一个适用 于现有应用系统的软件规模估算模型,基于功能点分析法 模应运而生并逐步成熟。功能点分析法是一种度量软件规 模的标准方法,能够较好地克服源代码行法的缺点。功能 规模度量方法源于2O世纪7O年代由IBM公司提出的功 能点分析(Function Point Analysis,FPA)_1 ,此后,功能 点分析方法逐渐受到了广泛的关注和接纳,陆续出现了很 多不同的功能点分析方法。目前有五个标准(IFPUG标 准、COSMIC标准、MARKⅡ标准、NESMA标准、FISMA 延续其组件的选择、组件的复杂程度分类及组件的功能点 赋予等架构,利用线性回归分析求出各组件依功能需求分 类的功能点与每一功能点代表的衡量单位,提出适应企业 内部开发的功能点分析法实施推进规则。 2功能点分析实施准则研究 功能点分析法是对软件功能需求和开发规模的间接定 量测量,它基于客观的外部应用接口和主观的内部应用复 杂度以及通用性能特征进行测量的17 。功能点分析实施 标准)被国际标准化组织(ISO)确定为软件功能点度量标 准。其中,IFPUG出版了功能点计算实践手册4.2版[3], 定义了功能点分析包含的五个衡量组件:外部输入、外部输 出、外部查询、内部逻辑文件及外部接口文件。为了更加科 学合理地确定软件装备的价格,提高装备经费使用效益和 舰艇装备集成优化水平,2011年海军颁布了《海军舰艇装 准则主要包含以下四个部分和八个步骤,如图1所示。 1)计算基础数据,归纳以往开发项目的开发管理信 息,为以后开发的项目提供参照,形成开发基础数据库; 备软件计价办法(试行)》,明确以功能点分析法和社会平均 成本为定价基础,开展软件计价工作。 功能点分析法用于新软件开发项目的规模估算,一旦 系统的输入、输出画面及输出的报表、文件确定,即可由事 2)决定估算类型和应用系统范围,根据以往开发项目 的相关开发信息计算未调整功能点数; 3)计算调整因子; 4)计算调整后功能点数,计算开发工时。 实施准则的输入主要包括: ・务处理与数据组的复杂度相互对照,查组件复杂度表计算 出功能点 ],但现有很多应用软件开发中的需求往往只 是某一部分的功能改善,有时会跳过系统分析阶段,直接进 以往开发项目按系统模块划分的外部输入、外部输 出、外部查询、内部逻辑文件、外部接口文件的复杂度评价 数以及开发工时。 行程序设计即可满足需求。若仍遵循计算功能点的全过 收稿日期:2013年2月11日,修回日期:2013年3月27日 作者简介:胡波,男,高级工程师,研究方向:电子信息装备总体技术。 1284 胡 波:采用功能点分析法度量软件规模应用研究 第41卷 ・开发估计项目按系统模块划分的外部输入个数、外 部输出个数、外部查询个数、内部逻辑文件个数、外部接口 文件个数以及开发工时。 实施准则的输出主要包括: ・通过线性回归模型计算出最佳的一个功能点所消 耗的工时以及外部输入、外部输出、外部查询、内部逻辑文 件和外部接口文件所对应的低、中、高的功能点数。 ・开发估计项目的功能点数以及分析指标,计算出所 需消耗的工时。 决定S估te算p2类型H柰S tep3昌 S计功算能t数e点p据4 数组  Step5 计算事务处理 功能点数 二二]二二二 计 后 计算St未ep调6熬 功能点数 【功能点数 图1功能点计算步骤 2.1计算基础数据 根据以往开发项目提供的机能清单以及各机能对应的 外部输入、外部输出、外部查询、内部逻辑文件、外部接口文 件的复杂度评价数以及开发工时归纳分析,采用线性回归 模型,求取最小二乘估计值,使得实际观察值和回归估计值 的方差平方和最小,通过计算可以得到对应外部输入、外部 输出、外部查询、内部逻辑文件和外部接口文件每一功能点 消耗的工时以及低、中、高不同程度的功能点。对计算所得 到的数据建立为开发基础数据库,便于以后类似开发项目 提供参照。 计算基础数据使用的线性回归数学模型具体如下: 假设自变量X为组件的功能点,共有 个组件;未知 常数w为每一功能点的人月值;常数 为组件的GSC调 整因子;变量y为详细设计至功能测试开发阶段的实际人 月,那么有: y一∑ x*W* (1) 在式(1)中,在不考虑GSC的影响,令 一1展开如下 Y—X1*W+X2*W+…+ *W (2) 在式(2)中,X 、X 、…、X 是自变量,w是常数,在未 得到最佳解之前,仍需以自变量来看待,因此必须将非线性 的式(2)简化为线性函数。这里假设自变量XI都可以用一 个已知常数A 乘上另一自变量 替代,则X W可化为 A A W,再将九 转换为另一自变量w ,式(2)则可被替换 为: Y—A】*Wl+X2*W2+…+X *W (3) 以792组开发数据带人式(3)进行线性回归计算,可得 到一组w , W:,…,w 使每一组数据满足式(4): A *WV1+X2*WV +…+X *WV +Y+e (4) 同时使式(5)得到偏差平方和最小: 、 Q一∑ e*e (5) 2.2计算未调整功能点数 计算数据组功能点数的步骤包括:确认数据组的复杂 度,先解析应用系统包括多少数据文件,然后决定是属于内 部逻辑文件,还是属于外部接口文件,然后算出所有的事务 处理使用了该文件的多少数据元素类型,再由数据元素型 数(Data Element Types,DET)对照记录元素类型数(Re— cord Element Types,RET)归纳为低功能需求、中功能需 求、高功能需求,最后就不同功能需求赋予不同的未调整功 能点(Unadjusted Function Point)。 计算计算事务处理功能点数的步骤包括:确定事务处 理复杂度,先解析应用系统包括几个事务处理,每一事务处 理是外部输入(EI)、外部输出(EO)、外部查询(EQ)事务处 理类型的哪一类,然后计算出每一事务处理使用了多少数 据元素(Data Elements),再由数据元素类型数对照引用文 件类型数(File Type Referenced,FI'R)归纳为低功能需求、 中功能需求、高功能需求,最后就不同功能需求赋予不同的 未调整功能点(Unadjusted Function Point)。 将带有权重的外部输入、外部输出、外部查询、内部逻 辑文件和外部接口文件汇总在一起,得到的结果即为未调 整功能点数,如图2所示。 图2未调整功能点汇总过程 2.3计算调整因子 功能点分析法的调整因子(Value Adjustment Factor, VAF)值取决于14个通用系统特征(General System Char acteristics,GSC)。通过这些系统特征来评定所计算功能点 个数应用的通用功能的级别。每个特征有关的描述以帮组 确定这个系统特征的影响度。影响度的取值范围从0~5, 从没有影响到有强烈影响,根据项目开发情况,对估算出来 的功能点进行调整。14个通用系统特征的说明如表1所  。 查找各个通用系统特征的影响度决定其所对应的值, 通过综合14个GSC的影响度,根据以下的功能点调整因 子决定各个通用系统特征的影响度表¨3]: VAF=(65+ (6) - ,一j,GSC)/100  2.4计算调整后功能点数 功能点分析法可分别应用于新开发项目、现有应用系 统增强及升级开发项目的功能点计算。根据以下公式计算 调整后功能点数。 2013年第8期 计算机与数字工程 1285 表l通用系统特征组件说明 不。 通用系统特征概要说明 表2参考项目基本情况 数据通信 用于描述应用软件和通信硬件设备之间直接通信 的程度 分布数据处理用于描述应用软件的各个组成部分之间数据传送 JAVA 详细设计至2012.6~22人 6 良好 的程度 0RACLE 9i机能狈0试 2013.4 11个月 性能 用于描述用户要求相应时间或者吞吐量 硬件负荷 用于描述计算机资源(硬件平台)对应用软件运行 估算项目的数据来源主要有开发机能设计式样书、开 的影响程度 发详细设计式样书、开发计划书、开发程序代码、项目机能 事务频度 用于描述应用软件的事务执行的频率(天、周、月) 在线数据输入用于描述数据通过交互式事务输入的程度 测试式样书、项目交付书、项目开发合同书以及项目经理访 最终用户使用用于描述对于人为因素和易用性的考虑程度 谈等。通过对以上数据的收集整理,按照功能点各个组件 效率 进行划分统计出事务处理组件相关联的FTR和DET的个 在线更新 用于描述内部逻辑文件在线更新的频率程度 数以及数据组组件相关联的RET和DET的个数,再加上 处理复杂度 用于描述处理逻辑对应用软件开发的影响程度 各个机能所耗费的工时数,最后将这些数据整理为CSV格 重用性 用于描述应用软件和软件的代码设计、开发以及其 他软件中重用的程度 式文件。 易安装性 用于描述环境变化对应用软件开发的影响程度 3.2线性回归演算 易操作性 用于描述应用软件在操作方面(启动、备份、恢复过 功能点分析法以五个衡量组件外部输入、外部输出、外 程)的考虑程度 跨平台性 用于描述应用软件在设计、开发和支持安装在多个 部查询、内部逻辑文件及外部接口文件,对记录元素型个数 地点和用户不同的安装点的软硬件平台环境的程度 或引用文件类型个数及数据元素类型个数的低、中、高功能 可扩展性 星 慈装嵩暑 件被开发以利于处理逻辑或数据 需求,分别给予(3)(4)(6)、(4)(5)(7)、(7)(10)(15)及(5) (7)(1O)四组适当的功能点。倘若1个项目共有1000个功 新开发项目功能点计算如式(7)所示,CUFP表示现存 能点,最后完成时共耗用250个人月,则1个功能点代表 机能的未调整功能点数,UFP表示开发机能的未调整功能 0.25个人月。若有新的项目提出时,1个外部输入事务处 点数。 理属于低功能点需求(3)是3个功能点,代表此事务处理将 FP一(C【 P+UFP)* F (7) 使用0.75个人月,1个外部接口文件属于高功能需求(10) 现存应用系统增强功能点计算如式(8)所示,AUFP表 是1O个功能点,代表这个数据组将使用2.5个人月。 示新增机能的未调整功能点数。 根据上节对应的未调整功能点表可以计算出每个机能 FP—AUFP* F (8) 的EI、EO、EQ、LIF、EIF对应的功能点数,然后直接代入式 升级开发项目功能点计算如式(9)所示,AUFP表示新 (3)中进行线性回归模型分析,得到线性回归计算后功能点 增机能的未调整功能点数,MUFP表示变更机能的未调整 人月数,如表3所示。 功能点数,CUFP表示现存机能的未调整功能点数,DUFP 表3线性回归计算后功能点人月数 表示删除机能的未调整功能点数,VAF1表示新的调整因 EI EQ EQ ILF EIF W 平均值 子, F2表示旧的调整因子。 FP一(AUFP+^ FP+CUFP)*V-AF1~DUFP*V_AF2 (9) 从表3所得结果可知,每一组件功能点的人日值并不 相当,无法满足wi最大与最小值差不超过5 的收敛条 3 实验系统 件。参照功能点分析法的每一组件功能点可有不同赋予的 3.1数据收集整理 架构,以表3中w 的平均值为基数,以Al* 除以这个 本节主要根据参考项目的开发管理数据,来探讨上节 基数,算出所有新的A ,继续代入式(3)进行回归分析,再 提出的软件规模线性回归估算数学模型,并评价该估算数 得到一组新的w ,并重复此步骤,最后Ⅵ 收敛如表4的结 学模型的可靠性和正确性。参考项目基本情况如表2所 果。 表4线性回归演算过程表 低中高FP 4.5 W 5.26 最佳低中高FP 4,6 最佳W 5.23 4结语 响度进行了评定,基于IFPUG的功能点计算规则建立了线性 回归数学模型,实验结果证明了该模型是可靠的和正确的。同 软件规模估算是一件难度较高的任务,国外有国际性学术 时,通过本文的研究和分析,也说明了在海军以功能点分析法 组织IFPUG推动的功能点分析法,国内很多软件公司则以以 为基础开展软件规模评估和计价是可行的。 往经验来做未来的项目管理。因此,软件开发机构以功能点分 参考文献 析法为基础实施项目管理会更科学有效。本文通过建立一套 Eli J.Albrecht.Measuring Application Development Produc— 功能点估算实施准则,对功能点的各组件和通用系统特征的影 tivity[C]//Proceedings of IBM Application Development Sym一 1286 胡 波:采用功能点分析法度量软件规模应用研究 第41卷 (上接第1279页) 用XMI 技术、以XML数据处理代替重量级数据库的数据 处理更能提高工作流系统的广泛应用。 参考文献 [6]曾月,范玉顺.基于COM和ASP技术的工作流管理系统的设 计与实现[J].计算机工程与应用,2002,38(1):241—244. ZENG Yue,FAN Yushun.The design and implementationof COM and ASP based workflow management system[J].Com puter Engineering and Applications,2002,38(1):241 233. E1]范玉顺.工作流管理技术基础[M].北京:清华大学出版社, 2001:5-10. [7]胡光,任满杰.一种工作流管理系统新模型的研究与实现[J]. 烟台大学学报(自然科学与工程版),2007,2O(3):200—204. HU Guang,REN Manjie.Research and hnplement on a New FAN Yushun.The basis of Workflow Management Technolo— gyEM].Beijing:Qinghua University Press,2001:5-10. [2]Hollingsworth n Workflow Management Coalition:The Work-fIow Reference Model rR].Document Number WfMC- TC00—1003.BrusseIs,1994. Model of Workflow Management System[J].Journal of Yantai University(Natural Science and Engineering Edition),2007,20 (3):200-204. [3]何清法,李国杰,焦丽梅,等.基于关系结构的轻量级工作流引 [8]赵久梁,颜云辉,陈连运.工作流技术及其与ERP系统的集成 研究[J].现代情报,2007(6):220—223. ZHA0 Jiuliang,YAN Yunhui,CHEN Lianyun.Integration 擎[J].计算机研究与发展,2001,38(2):129—137. HE Qingfa,LI Guojie,JIAO Limei,et a1.Relation-Based Light Weight WorkHow EngineEJ].Journal of Computer Re— search&Development,2001,38(2):129—137. Research of WorkFlow Technology with ERP System[J]. Modern Information,2007(6):220—223. [4]刘建胜,涂海宁,夏芳臣,等.基于Web方式的工作流管理系统 的设计_J].机械设计与制造,2005(2):125—127. LIU Jiansheng,TU Haining,XIA Fangcheng。et a1.The de [9]贺奔,刘沛沛,冯海心,等.工作流管理系统设计与实现[J].计 算机与数字工程,2009,37(12):163 166. HE Ben。UU Peipei,FENG Haixin,et a1.Design and Imple sign of workflow management system based on Web[J].Ma— chinery Design Manufacture,2005(2):125—127. mentation of Workflow Management System[J].Computer&. Digital Engineering,2009,37(12):163 166. Is]厉英,于瑞云,张登科.基于B/S架构的工作流管理系统的设计 与实现[J].控制工程,2006,13(2):190 192. LI Ying,YU Ruiyun.ZHANG Dengke.Design and Perform— [1O]Wendy Boggs,等著.UML with Rational Rose2002从入门到 精通[M].邱仲潘,译.北京:电子工业出版社,2002:65—120. Wendy Boggs Michael Boggs.Mastering UMI with Rational ance for B/S-based Workflow Management Systems[J].Con— trol Engineering of China,2006,13(2):190—192. Rose 2002[M].Tranlated by QIU Zhongpan.Beijing:Pub— lishing House of Electronics Industry,2002:65—120. 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sarr.cn 版权所有 赣ICP备2024042794号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务