IFPUG法在绿色出行软件规模评估中的应用

时间:2022-02-24 03:30:07

IFPUG法在绿色出行软件规模评估中的应用

摘要 软件规模度量是工作量估算、成本管理、进度管理的基础,也一直是业界难题,本文介绍了在交警绿色出行软件开发项目中应用IFPUG法进行规模评估的过程。

关键词 软件度量;IFPUG FPA;功能点

中图分类号TP39 文献标识码A 文章编号 1674-6708(2013)110-0209-02

1背景

软件规模的度量一直是业界难题,政府投资的软件开发和维护项目在预算、招投标、项目计划等活动中因为缺乏科学统一的软件规模度量标准,较大程度导致项目做预算时无据可依,咨询或设计公司仅仅参照类似历史项目规模,或直接用工作量人月来描述项目规模,进而造成预算浪费或预算不足。在软件项目招投标过程中,也因为缺乏软件规模的量化描述,恶意竞标、低价中标现象屡屡发生;软件服务商在项目实施过程中,由于缺乏科学依据,经常出现时间滞后、费用超出预算的情况。因此,迫切需要在软件开发和维护项目中引入科学的规模评估体系。

近些年国内软件开发的企业仅少数通过能力成熟度模型CMMI 4级评估,推进了量化管理,但多数企业的开发估算还停留在“拍脑袋”阶段,很多管理人员认为估算不就是大概估计一下,没必要搞那么麻烦。另一方面,由于缺乏适合的工具和专业人员,靠经验不同的工程师估算出来差别很大,难以有说服力。典型的软件规模度量方法有LOC(Line of Code),Delphi法、类比法、Putnam法、功能点法等,国际标准化组织ISO/IEC已的以下四种功能规模度量标准,即:

ISO/IEC 19761:COSMIC-FFP方法;

ISO/IEC 20926:IFPUG方法;

ISO/IEC 20968:MkⅡ方法;

ISO/IEC 24570:NESMA方法。

根据相关国际标准中的方法适用范围声明,COSMIC方法适用于商业应用软件和实时系统,IFPUG方法适用于所有类型软件的功能规模度量,MkⅡ方法适用于逻辑事务能被确定的任何软件类型,NESMA方法与IFPUG方法非常类似,但对功能点计数进行了分级,以便在估算的不同时期选择不同精度的方法进行估算。根据我单位项目的特点,选择IFPUG法对软件项目规模进行评估。

2功能点估算法

IFPUG (International Function Points Users Group)即国际功能点用户组是一个致力于功能点分析研究的非营利性组织。IFPUG的功能点分析(FPA)方法是一个被广泛接受的关于软件规模度量的方法。

FPA是从用户角度出发度量软件规模的一种方法。它将系统分为数据功能和事务功能两大类,根据各自的规则计算功能点,然后结合软件系统的特征因子来调整功能点数,从而得到最终的软件规模。他将把用户的业务功能需求分为:

IFPUG法的主要步骤:

1)功能定义

在估算前应明确项目范围及系统边界。软件需求描述文档中应进行初步的子系统/模块划分,绘制ILF和ELF的数据流图,并对每个功能项的IPO(输入、处理逻辑、输出)进行描述。

2)计算未调整的功能点

根据数据流程图,识别每个数据功能的数据元素类型( DET )数和记录元素类型( RET )数确定ILF、EIF的复杂度,每个事务功能的DET和引用文件类型(FTR)来计算EI、EO、EQ的复杂度,根据每个数据功能和事务功能的功能点,求和即为未经调整的功能点数(Unadjusted Function Point)。

3)确定值调整因子

项目的早期阶段可以根据行业数据、经验值等确定调整因子。对系统进行细化分析后,可以根据数据通讯、分布式数据处理、性能、资源需求、事务频率、在线数据输入、终端用户效率、在线升级、复杂处理、可重用性、易安装性、易安装性、易操作性、多点运行、易变更14个系统特征对系统的影响程度确定调整因子。

4)调整功能点数

根据功能点调整系数计算已调整功能点数。

IFPUG法针对新开发类型、增强类型、应用系统这三种类型的系统在计算功能点的时候采用不同的计算方法。其中新开发类型就是开发一套全新的软件,增强类型是修改、新增、完善及删除已有软件的功能,应用系统则是对已存在的软件统进行功能点计数。

3绿色出行系统

绿色出行系统是“爱我深圳、停用少用、绿色出行”自愿停驶申报与履诺管理系统的简称,系统主要包括申报、布控信息、管理、数据交换和共享、数据校验和处理、数据统计与分析、信息共七个子系统构成。

申报子系统包括集体用户和个人用户,申报方式包括短信、网站、移动PDA、热线电话和办事窗口申报。布控系统包括停车场布控、移动警务PDA和电子警察。信息子系统包括短信、网站、媒体等方式。管理子系统主要用于对用户信息进行管理,汇总数据,评定奖励,并具备对数据进行定期统计和分析等功能。

该系统作为面向公众服务的系统,用户多,关联的系统多,不同的承建单位采用了不同版本的开发工具、应用架构、数据库系统、中间件、操作系统以及硬件环境,这些系统通过不同的网络环境、不同的方式与广东省公安厅、深圳市公安局、深圳市交通运输委员会、深圳市人居环境委员会等单位的系统进行数据交换,因此准确的评估软件规模,对后期估算软件的工作量、成本和进度非常重要。

4绿色出行系统规模分析

绿色出行系统的规模评估分为两个项目立项阶段和采购两个阶段。其中立项阶段,完成项目建议书的编制,对项目进行粗略估算。采购前,按照深化的技术方案进行较为细致的估算。限于篇幅,本文仅对管理子系统中星级管理模块进行分析评估。

星级管理是为对停驶时间达到30天及以上的车主,按照停驶天数发放1~3星级或更高星级荣誉。获得星级荣誉的,车主可获得相应的激励。星级管理包括星级定义管理、星级升级管理和星级信息查询。

4.1 立项阶段评估

本例中,ILF文件包括:星级(ID、等级、期限、起始日期、结束日期、停用标志),星级评定(序号、日期、车牌、车类、星级、评定人),星级升级审核(车牌、车类、申请理由、申请文件、录入人、录入时间、录入人IP地址、备注信息、审核人、审核时间、审核结果、审核IP地址);EIF包括:车主信息(车主姓名、车牌号、车牌类型、车架号、电话、地址等),停驶登记信息(序号、车主、登记日子、停驶起始日期,停驶天数),绿诺情况(车牌号、车牌类型、日期、违诺地点、违诺时间、违诺图片、来源)等。

功能

类型 不同重用

度文件数 功能点数

ILF 低__1__

中_____

高__2__ ×1×35=35

×2/3×35=

×1/3×35=23

ILF计数合计:58

EIF 低_____

中_____

高__3__ ×1×35=

×2/3×35=

×1/3×35=35

EIF计数合计:53

UFP(ILF计数+ EIF计数):93

规模变更调整因子:1.5

S(调整后的规模总计):140

调整后的功能点数:S=UFP*CF,其中:

S:调整后的软件规模,单位为功能点;

CF:规模变更调整因子,依据行业数据,预算阶段通常取值为1.5。

4.2招投标阶段评估

招投标阶需对系统做尽可能准确的评估,为项目成本和进度评估奠定可靠的基础,我们在分别识别并计算了数据功能(Data Function)和事务功能(Transaction Function)的复杂度之后,利用下表计算出未经调整功能点数:

功能类型 个数 功能点数

ILF 低__1__

中_____

高__2__ ×7= 7

×10=

×15=30

EIF 低_____

中_____

高__3__ ×5 =

×7=

×10=30

EI 低_____

中__2__

高__2__ ×3=

×4=8

×6=12

EO 低_____

中__2__

高_____ ×4=

×5= 10

×7=

EQ 低__1__

中_____

高_____ ×4= 4

×5=

×7=

UFP(ILF计数+ EIF计数):101

规模变更调整因子:1.13

AFP(调整后的功能点数):114

其中EI包括星级录入、星级申请录入、审核录入,查询输入等;EO包括星级定义、申请、审核等;EQ:履约情况。

FPA调整因子基于14个系统特征来的影响程度来确定,我们定义影响程度为以下的6个等级:

0:毫无影响

1:偶然影响

2:偏下影响

3:一般影响

4:重大影响

5:强烈影响

调整后的功能点数:AFP =UFP* VAF,其中:

AFP:调整后的软件规模,单位为功能点;

UFP(Unadjusted Function Point):未调整的功能点数,单位为功能点;

功能点调整系数(Value Adjustment Factor, VAF)=(TDI×0.01)+0.65。

其中TDI指以上14个特征因子影响程度分值的和。根据上式可以知道,VAF的值在0.65~1.35范围内。

3结论

本文在绿色出行系统项目立项阶段和采购阶段分别对软件规模进行了评估,在此基础上,评估的评估了工作量和工期及进度,为项目管理打下良好的基础,系统如期上线。然而由于对方法的掌握还不够深入,历史数据的缺失,如规模调整系数,仅参考一些文献资料完成,因而还需要进一步研究算法模型,并在项目实践中积累经验。

参考文献

[1]曹济等著.软件项目功能点度量方法与应用.北京:清华大学出版社,2012.

[2]李帜,林立新,曹亚波.软件工程项目管理功能点分析方法与实践[M].北京:清华大学出版社,2005.

[3]中国软件行业协会系统与软件过程改进分会.软件研发成本度量规范:应用指南-预算场,2012.

[4][美]ifpug, Function Point Counting Practices Manual Release 4.2.1,2005.

[5]刘泽星,李建华,费耀平.软件规模评估方法的研究与应用.计算机工程,2002.

[6]夏晓翔.软件项目估算管理方法研究[D];南京理工大学,2006.

上一篇:S700K 提速道岔故障之多机牵引道岔其中某一牵... 下一篇:隋映辉:产学研“断链”之忧