一、案例概况
	
	  (一)案例背景
	
	  内蒙古呼伦贝尔农垦集团有限公司(以下简称呼伦贝尔农垦)数据中心信息化一期建设已完成对机房、服务器、多媒体等设备采购,基本满足后续扩展需求。二期费用中技术服务费用主要包含遥感服务、数据存储、安全等托管服务,硬件设备主要包含农机智能数据采集终端、气象站、土壤采集器、畜牧养殖类设备等,软件开发主要包含八大系统平台的开发,主要分为:本底资源数字化管理平台、农机社会化服务平台等。硬件运输、安装、调试费用主要包含农机智能终端、土壤传感器、气象传感器的运输和安装调试。在软件开发、硬件实施、服务采购等方面结合实际应用和推进计划逐步实施,成熟一个,采用一个。
	 
	  由于二期信息化建设投资构成所涉及费用类型复杂,投资规模大。集团(甲方)决定实施方(乙方)按照投标文件及实施方案完成每个信息系统基础开发,经监理和甲乙双方共同确认无异议后,集团(甲方)聘请有资质的第三方造价评估咨询机构对系统进行造价评估,评估后的价格作为该信息系统最终结算价格。
	 
	  (二)面临的问题
	 
	  呼伦贝尔农垦二期信息化项目主要包括硬件采购(包括安装调试)、卫星遥感技术服务、数据服务与维护、软件系统开发等,其中软件系统除了在质量方面的高可用、高性能等有较高的要求之外,同时也更多融入了大数据等新型应用领域信息技术。
	 
	  软件项目主要问题:
	 
	  1.2022年底随着二期主体建设内容的完成,项目开始进入结算阶段,乙方根据软件行业常见的软件项目工作量、成本估算方法对二期建设项目进行了估算,并向甲方提交了估算报工结果。由于估算方法过度依赖评估人员主观意愿的方式,且缺乏客观数据依据,甲方对软件项目费用不认可。另外,传统专家经验进行评估的过程多为“拍脑袋”决策,难以追溯,对呼伦贝尔农垦面对后期审计和合规检查也会造成一定风险。
	 
	  2.二期建设项目中涉及的软件项目比重较大,由于软件项目本身的特殊性,而新型信息技术的融入(例如大数据技术等),使得影响软件项目开发工作量、成本的因素非常多,而国内传统的第三方工程造价咨询行业缺乏对此类项目进行成本评定的权威方法,无法提供有效的依据解决甲乙方的分歧。
	 
	  3.软件项目文档质量较差,由于呼伦贝尔农垦二期建设周期紧、任务量大,甲乙双方都没有重视文档的质量建设,包括但不限于软件需求规格说明书、概要设计、详细设计、用户手册等,项目建设完成后,相关文档没有及时更新,例如需求文档,需求粗细度不一、有些文档不能准确反映上线系统真实情况,文档虽重于形式,但关键的功能性描述不够清晰准确,为后期实施规模估算方法形成了较大阻碍。
	 
	  (三)案例目标
	
	  针对上述问题,2022年8月,呼伦贝尔农垦依据国家标准《软件工程 软件开发成本度量规范》(GB/T36964-2018),经过集团审批程序,将我司作为专业的第三方信息化项目造价评估机构引入,对软件项目开发的工作量、成本费用进行客观评估,以保证项目结算评估的科学、客观、公平、公正,并提升相关过程的合规性,为呼伦贝尔农垦二期信息化项目提供有效的结算依据。我司从2022年8月至2023年8月,为呼伦贝尔农垦二期信息化项目提供全程、专业的工作量、成本评估服务。 
	 
	二、实施过程
	 
	  (一)方法宣贯
	
	  为避免争议,我司组织甲乙双方相关人员进行了统一的培训,使其可以全面了解二期项目涉及费用的评估方法和评估过程。
	
	  该培训主要让甲乙双方了解信息化工程项目主要投资构成和计算方法(如图1所示),了解软件规模估算的基本原理与过程,并初步理解快速功能点方法的基本原理,主要计数项识别依据及功能规模计算过程;了解国际国内已有的软件度量相关方法和标准(如图2所示),同时,对软件度量方法的应用目的和效果有所掌握。
	 
	图1 信息化项目建设费投资构成示例
	 
	图2 定制化软件估算方法技术路线
	
	  (二)评估流程及关键活动
	
	  为了保证评估的严肃性,我司牵头拟定了软件造价第三方评估流程(如图3所示),确立了建设方、实施方及第三方评估机构的职责,明确各方责任,以确保评估过程清晰透明、评估结果的科学性和公正性。实施活动的关键要素包括如下:
	
	  评估资料收集。流程中规定我司在进行估算前,应从甲方取得项目特征和项目范围描述资料,并明确已取得的资料作为评估依据。评估资料以软件需求规格说明书为主,但提供的评估资料中可以包括数据对象模型、类图、数据流图、用例、过程描述、报表显示、界面显示、用户手册,以及其他软件开发文档等作为辅助评估资料。所提交的评估资料需要得到了甲乙双方的共同认可。
	
	  评估资料交接。流程中规定委托方提交评估资料的同时,填写评估资料交接单并进行签字确认,交接单中明确了交接资料份数、名称、页数等特征属性,评估资料的真实性、合法性、完整性由委托方负责。若因委托方提供资料的失实、缺失所导致评估结果失真而引起的责任,不属于第三方评估机构及评估人员的责任范围。对评估过程中所发生的评估资料变更情况,需要做变更记录登记,并由交接双方签字确认。
	
	  确定评估范围和边界。流程中规定我司进行评估前,应与甲方书面明确评估范围,评估范围定义了包含在功能点计数之内的功能用户需求集。边界是软件和其用户之间概念上的分界,边界的划定很重要,边界划定的不同会产生功能规模度量结果的不同。边界划定的关键在于基于用户角度确定,即相关系统之间的边界是基于用户所看到的独立功能,而不是基于技术视角考虑。评估过程中,对于描述不清楚的功能需求,甲乙双方有义务配合我司对项目范围及需求进行必要的沟通与澄清。
	
	  评估结果输出。流程中规定我司应依据相关标准及行业数据进行客观评估,在出具正式报告前应再次确认项目范围及主要项目特征,报告中包含但不限于项目背景及评估材料清单说明、评估目的说明、详细评估结果、评估依据及方法说明、功能点清单、评估机构及专家资质证明等,出具正式报告后,任何一方不得对报告容随意更改。
	 
	图3 软件成本第三方评估流程
	 
	  (三)评估人员
	
	  呼伦贝尔农垦软件项目业务领域性强,覆盖了农垦领域航母级企业现代产业体系、生产体系和经营体系的全面信息化管理的各个方面。二期建设的八大系统平台不仅包含林地、草地、耕地、设施以及用地性质等数据的采集和统一管理,实现矢量数据的数字化,也包含交易信息大厅、资源申购、保证金缴纳、竞拍、竞价等交易管理,同时实现了天空地遥感大数据管理平台在草地、农作物种植前对土壤进行墒情和养分监测,在作物生育期内进行地块级作物种植分布情况监测、估产、精准气象服务土壤墒情动态监测、作物长势动态监测与数据分析和展示等。为了保证评估的质量,我司选用了10万功能点评估经验以上的高级评估师,评估专家不仅持有“软件工程造价师”和“软件造价评估师”专业证书,而且具备丰富的IT产研从业经验,并在评估工作正式实施前,对呼伦贝尔农垦信息化相关业务知识进行了较为系统的研究和学习。
	 
	  (四)方法选择
	 
	  鉴于呼伦贝尔农垦二期项目评估的应用场景以及可获得项目资料的详细程度,软件项目主要引入快速功能点方法中的估算功能点方法进行规模估算,依据方程法进行工作量和成本估算。根据用户二期建设中各系统应用类型、质量要求、开发平台、团队情况等实际情况,确定变更因子和其他参数的选择。 
	 
	  (五)评估资料指导
	 
	  评估初期发现由甲方提供的该项目评估资料无法满足评估工作要求,需求文档质量问题较大,各系统及模块需求描述颗粒度粗细程度不一,有的需求是一句话需求、有的需求虽然写的篇幅很大,但多为车轱辘式的冗余描述,而对软件主要管理的业务数据及相关操作的功能性需求描述缺失。我司及时向甲方反馈,并协调解决。经与甲乙双方沟通获悉,二期项目建设进度要求高,且过程中需求变更较为频繁,开发过程多采用了重沟通、轻文档的方式,造成了二期软件项目的需求和件开发相关文档质量不高。甲方也认识到文档质量问题不仅会阻碍到工作量和成本的估算工作开展,而且对项目整体交付和系统后期的升级与维护工作也会产生不利影响,所以要求乙方在项目评估阶段,全面补充完善相关文档,并请我司给予乙方必要的文档编写指导。我司根据评估需要,提出了软件需求规格说明书基本书写的格式化要求,并对估算功能点方法所需功能性需求描述作出了基本要求,包括软件需求规模说明书和功能描述基本要求。
	 
	  1.软件需求规格说明书见图4。说明书对软件需求规格作了比较详细的归类,提出了明确要求。
	 
	图4 软件需求规格说明书
	
	  2.功能描述基本要求
	
	  从功能需求描述中能识别业务数据和引用数据的结构及关系的数据模型。通过需求描述,能够了解到对业务数据和引用数据是如何区分和维护的,是在计数边界内维护,还是边界外的应用功能维护。需求描述中能够说明系统功能的输入、处理、输出信息流的模型,能够说明应用功能和周围环境之间的信息流。
	 
	  (六)方法优化
	 
	  随着国内新型信息技术应用的快速发展,我们已经逐步从过去的IT时代迈进了崭新的数据技术和人工智能技术时代,与目前很多企业一样,呼伦贝尔农垦二期软件项目也高度融合了大数据应用等相关技术。与以往采用传统数据库(DB)技术的业务系统不同,采用大数据技术的应用系统更为复杂。从传统数据库技术到大数据技术的应用演进,使得软件系统从业务交易型场景(OLTP)转化到洞察分析型场景(OLAP),从遵循ACID理论转化到遵循CAP/BASE理论,数据建模由关系型模型转化为维度模型,处理数据量规模已然从TB级别上升到PB级别。如果继续采用传统数据库技术的业务系统功能点分析方法,将与实际研发投入相差较远,产生较大误差,难以客观反映出大数据系统建设的不同时期、不同团队的实际产出情况。因此,我司结合同业经验和呼伦贝尔农垦二期大数据应用系统实际情况,进行了规则定制,确保了同样可以通过功能点规模量化理论及方法,对大数据技术应用场景进行客观的评估。
	 
	  大数据技术主流应用包括离线数仓和实时计算等领域,主要实施过程有数据采集、数据存储、数据计算、数据分析、数据应用等,通常会涉及到诸多技术引擎和工具,例如:ZooKeeper、Kafka、Flume、Hdfs、Hbase、Hudi、MapReduce、Storm、Spark Streaming、flink、Hive、Pig、tableau、Superset等。大数据应用系统的功能点定制规则应坚持遵循功能点分析方法的基本原则,以为用户提供业务价值的需求作为核心,将信息和功能作为度量的重点关注对象,功能点计数结果应是用户可以感知的独立“功能域”,尽可能降低技术的影响,从而使得规模度量方法可一致、可重复。应确立明确的规模度量主线,避免复杂技术对度量工作的干扰以及与工具的边界混肴,造成相同工作内容的重复性评估误差。
	 
	  以离线数仓为例,定制规则将数仓主体ODS和DW整合划分为一个系统边界,并建立分层原则,主要以源数据通过ETL入数据仓库的数据操作层(ODS)形成事实数据、明细数据层(DWD) 维度建模、汇总数据层(DWS)汇总数据建模,应用数据层(ADS)数据建模和数据应用等内容作为功能点规模度量主线,每层定制相关的功能点计算规则。将业务系统的业务数据或业务规则数据的入仓过程按事务功能识别,维度建模不识别为独立的逻辑文件,数据仓库中加工有业务意义的汇总表识别为逻辑文件,在数据集市中主题表将识别为逻辑文件,汇总表、主题表、维度表的数据加工生成过程均以事务功能识别,报表或数据输出一般是以事务功能识别。例如:数据操作层也叫贴源层(ODS)的数据接入(也叫入仓),每个表的接入或入仓可计数一个EI;明细数据层(DWD)的每个模型可计一个模型数据加工EI;汇总数据层(DWS)的每个模型可计一个ILF;每个指标加工可计一个EI;集市每个模型可计一个ILF;应用接口、导出任务和报表展示可计数EO/EQ。这里要说明的是,因具体的定制规则需要根据应用系统实际特征和采用技术作细化处理,以上举例仅为定制规则的方法说明。同时,为使得估算模型能够更加准确的表达规模与工作量的关系,我司在充分参考中国软件行业基准数据的基础上,提取了一定范围的相似历史项目的工作量数据,对估算模型采用的生产率基准进行了测算和验证。
	 
	  虽然大数据应用系统和传统数据库应用系统在技术上存在较大差异,但我司结合行业实践及呼伦贝尔农垦的管理要求,在大数据系统定制规则上遵循了功能点分析方法的基本原则,取得了较好的应用效果。
	 
	三、实施成效
	 
	  通过我司向呼伦贝尔农垦提供的二期信息化建设项目的工作量、成本评估服务,呼伦贝尔农垦所取得的主要收益有如下五个方面:
	 
	  一是基于国标的评估方法依据充分,过程清晰,利于甲乙双方就评估结果差异进行有效的沟通,减少了结算场景下的争议,促进了双方对结果快速达成一致。同时,有效的规避了后续的审计风险。
	 
	  二是评估结果中平均审减率近10%,为甲方二期信息化建设项目整体节约资金数百万元。对涉及大数据技术的软件系统定制规则评估,以及涉及GIS的本地资源数字化平台的应用类型调整因子的选取,客观的反映出系统规模与工作量及成本的关系,评估方法得到了乙方的认可。
	 
	  三是通过对评估资料的完善,二期建设项目的文档质量问题得到有效解决,需求文档、软件设计开发类文档、用户手册等关键文档得到较为完整、准确的补充,不仅保障了评估工作的顺利完成,同时,提升了项目整体交付质量。
	 
	  四是评估结果中软件项目的规模估算结果将对二期项目的软件运维水平提升起到积极作用。软件项目完成开发后,将进入运维状态。而能够掌握交付运行的软件的规模大小是十分重要的。运行软件的规模将直接影响到运维的人力资源分配、时间分配和运维的预算。掌握了准确的软件规模大小并结合其他的因素的考虑,可以对运维工作做到更加精细化的管理。
	 
	  五是二期软件项目对呼伦贝尔农垦业务覆盖面大,本次评估所获得的规模、工作量及成本数据,将有利于日后类似项目再次开发时对成本的估算,从而提升呼伦贝尔农垦的预算能力。
	 
	四、客户评价
	 
	  引入《软件工程 软件开发成本度量规范》(GB/T36964-2018)及快速功能点方法进行软件项目工作量和成本评估,有效提高了项目费用使用的合规性,同时,迅威公司能够与乙方进行充分沟通,提升了乙方对于评估结果的认可度。
	 
	  整个服务期间,迅威公司评估专业,沟通配合流畅,重质守信,服务意识好,我们感到满意放心。