3C学堂公众号
3800字|8分钟阅读
图01-国电南瑞集团公司 现场照片

国电南瑞科技股份有限公司成立于2001年2月28日,由南瑞集团作为主发起人,2003年9月首次向社会公众发行A股股票并于10月16日在上海证券交易所上市,股票简称“国电南瑞”,证券代码“600406”。
国电南瑞是以能源电力智能化为核心的能源互联网整体解决方案提供商,是我国能源电力及工业 控制领域卓越的 IT 企业和电力智能化领军企业。公司以先进的控制技术和信息技术为基础,以“大数据、云计算、物联网、移动互联、人工智能、区块链”等技术为核心,为电网、发电、轨道交通、水利水务、市政公用、工矿等行业和客户提供软硬件产品、整体解决方案及应用服务。历经多年自主创新和产业发展,公司已发展成为总资产规模 660 亿元,年营业收入 385 亿元、市值规模超千亿元的板块龙头上市公司,拥有电网自动化及工业控制、继电保护及柔性输电、电力自动化信息通信、发电及水利环保四大业务板块,下设 1 个研究院、4 个事业部,15 家分公司、26 家子公司。
2023年11月13日,3C学堂首席顾问讲师、上海锐熙信息技术有限公司总经理,湖北师范大学计算机学院兼职教授、安永中国签约数字化专家,李远佳老师。为国电南瑞集团提供软件开发估算培训,本次面授分享主要内容如下:
图02-国电南瑞集团软件开发估算培训 现场照片
第一部分 理解软件开发估算的本质
(一)案例引入
某省移动公司,2014年左右,年度信息化建设规模大约有9千万左右,后来引入第三方研究院协助进行开发估算,同时优化信息化建设投资,年度信息化建设规模下降到4.5千万左右,下降近一半,其中第三方独立软件估算发挥不小的作用。
由此引发全体同学对软件开发估算目的的思考,软件开发估算追求的目的是什么?是了无限制接近科学性与合理性,是为实现项目费用控制管理。
(二)估算过程
估算成本是对完成项目工作所需资源成本进行近似估算的过程。主要作用是确定项所需的资金。应根据需要在整个项目期间定期开展,而不仅是项目开始报价阶段。
在启动阶段可得出项目的粗略量级估算(Rough Order of Magnitude,ROM),其区间为 −25% 到 +75%;之后,随着信息越来越详细,确定性估算的区间可缩小至 −5% 到 +10%。
图03-估算精确度等级图表
(三)预算过程
预算是汇总所有单个活动或工作包的估算成本,建立一个经批准的成本基准的过程。
主要作用是确定可据以监督和控制项目绩效的成本基准,仅开展一次或仅在项目的预定义点开展。
项目预算包括经批准用于执行项目的全部资金,而成本基准是经过批准且按时间段分配的项目预算,包括应急储备,但不包括管理储备。
图04-项目预算的组成图
由此,不同阶段的估算要知道它的准确度,预算要留用各应急储备与管理储备,明确软件开发估算的目的,扮演好估算角色:计量员、或预算员、或管理员、或砍价员(第三方)的。
第2单元 常见估算工具技术
关于估算的工具技术非常多,主要包含有:
(一)专家判断与德尔菲技术Delphi
专家判断:任何具有专业知识、或专业技能的任何小组或个人,都可以提供专家知识,专家渠道来源:组织内部的其他部门、顾问、相关方,包括客户或发起人、专业与技术协会、行业协会、主题专家Subject matter experts、项目管理办公室PMO等。
德尔菲技术Delphi:又称专家会议预测法,是主观预测方法。专家之间不能进行讨论(不见面)、项目风险专家匿名参与其中。组织者使用调查问卷就重要的项目风险征询意见,然后对专家的答卷进行归纳,并把结果反馈给专家做进一步评论;这个过程反复几轮后,就可能达成一致意见;有助于减轻数据的偏倚,防止任何个人对结果产生不恰当的影响;用于收集需求、识别风险过程。
(二)类比估算法
类比估算是一种使用相似活动或项目的历史数据,来估算当前活动或项目的持续时间或成本的技术;在项目详细信息不足时(比如项目的早期阶段),就经常使用类比估算来估算项目持续时间;这是一种粗略的估算方法。
是一种专家判断法,是一种自上而下的估算方法;相对于其他估算技术,类比估算通常成本较低、耗时较少,但准确性也较低,优点是比较快。
(三)参数估算法
一种基于历史数据和项目参数,使用某种算法来计算成本或持续时间的估算技术。
利用历史数据之间的统计关系和其他变量(如建筑施工中的平方英尺),来估算诸如成本、预算和持续时间等活动参数。把需要实施的工作量乘以完成单位工作量所需的工时,即可计算出持续时间。
参数估算的准确性取决于参数模型的成熟度和基础数据的可靠性。
(四)三点估算法
考虑估算中的不确定性和风险,可以提高持续时间估算的准确性。使用三点估算有助于界定活动持续时间的近似区间:
最可能时间 (tM)。基于最可能获得的资源、最可能取得的资源生产率对资源可用时间的现实预计、资源对其他参与者的可能依赖关系及可能发生的各种干扰等,所估算的活动持续时间。最乐观时间 (tO)。基于活动的最好情况所估算的活动持续时间。最悲观时间 (tP)。基于活动的最差情况所估算的持续时间。基于持续时间在三种估算值区间内的假定分布情况,使用公式来计算期望持续时间tE 。
基于三角分布和贝塔分布的两个常用公式如下:
三角分布:tE = (tO + tM + tP) / 3
贝塔分布(源自传统的 PERT 技术) t E = (t O + 4t M + t P ) / 6
(五)自下而上估算/自顶向下估算
自下而上估算:是一种估算项目持续时间或成本的方法,通过从下到上逐层汇总 WBS 组成部分的估算而得到项目估算。如果无法以合理的可信度对活动持续时间进行估算,则应将活动中的工作进一步细化,然后估算具体的持续时间,接着再汇总这些资源需求估算,得到每个活动的持续时间。
自顶向下估算:主要依据工作分解结构、产品的功能以及实现该功能的子功能组成形式逐层分配成本。
(六)数据分析(储备分析)
储备分析用于确定项目所需的应急储备量和管理储备。
应急储备是包含在进度基准中,用来应对已经接受的已识别风险。应急储备与“已知 — 未知”风险相关。随着项目信息越来越明确,可以动用、减少或取消应急储备。
管理储备为管理控制的目的而特别留出的项目预算,用来应对项目范围中不可预见的工作。应对“未知-未知”风险,它不包括在进度基准中,但属于项目总持续时间的一部分。依据合同条款,使用管理储备可能需要变更进度基准。
(七)赢利定价法
软件的成本通过估计用户愿意在该项目上的投资来计算,成本的预算依靠客户的预算而不是软件的功能。
(八)敏捷估算法
敏捷估算,集体估算与相对估算,可以进行一些设计,任务的规模要适当,通常情况任务的大小不要超过16个小时。估算扑克的使用方法。
(九)CoCoMo模型
COCOMO模型是由巴里·勃姆(Barry Boehm)提出的一种软件成本估算方法。
COCOMO,英文全称为Constructive Cost Model,中文为结构性成本模型。这种模型使用一种基本的回归分析公式,使用从项目历史和现状中的某些特征作为参数来进行计算。
COCOMO模型可以分为三个层次:基本COCOMO,中级COCOMO,详细COCOMO。
(十)功能点估算法
软件开发最常用的估算技术,第3单元将详细进行介绍。
图05-国电南瑞集团软件开发估算培训 现场照片
第3单元 功能估算法简介
(一)功能点估算法简介
软件的自身规模表现为代码量和功能点数,软件规模估算简介-影响因素:功能点:取决于用户(业务)的需求,是用户(业务)需求的逻辑规模(logical size)反映。代码量:是用户(业务)需求逻辑规模(logical size)的物理规模(physical size)反映。两者均源自用户(业务)需求,受制于开发平台工具技术。
功能点估算法,从客户价值功能角度出发估算,功能点(FP),站在甲方立场、侧重“做什么”。基于软件的功能数和一组独立的项目因子;基于需求,在项目早期即可得到的信息。
(二)功能点估算法的的估算依据
SIZE系统= SIZE需求
= SIZE功能需求+ SIZE非功能需求
= (SIZE逻辑需求+ SIZE数据需求)+ SIZE非功能需求
= [(SIZE输入+ SIZE输出+ SIZE查询)+(SIZE内部数据+ SIZE外部数据)]+SIZE非功能需求
功能点估算法(FP)是以数据处理能力为核心的间接度量方法,是从用户角度度量软件开发的一种标准方法。功能点度量的主要贡献在于,它赋予了软件行业解决严肃的经济学问题的能力。
(三)功能点估算法的目的和用途
功能点定义:功能点(Function Points)是度量软件规模的一个标准度量单元。一个软件的大小可以通过交付给用户的功能点数来度量,就如一间房子的大小通过提供给用户的建筑面积或使用面积来度量一样。功能点就是软件开发行业中的平方米。
分析目的:(Function Point Analysis)是从用户角度度量软件开发的一种标准方法。功能点分析基于用户的逻辑功能需求,而不考虑应用的物理实现。度量用户要求和能够接收到的功能。
用户视角定义:用户视角表示使用用户的语言对用户业务需求进行的一种正规描述。是一个业务功能的描述;是被用户认可的可以用来计算功能点可以在物理形式上变化的。例如:事务处理目录、建议书、需求文档、外部规格说明、详细规格说明、用户手册。
(四)功能点估算法的五因素与举例
把用户的业务功能需求分为数据功能需求和处理数据的事务功能需求。包括有五个要素中,前两种属于文件,后三种属于事务处理,它们涵盖了终端用户和信息系统对象之间存在的所有可能的交互内容。
数据功能(Data Function):指提供给用户的以满足应用内部和外部数据需求的功能性。分为内部逻辑文件(ILF),和外部接口文件(EIF)。
内部逻辑文件ILF (Internal Logical File),在信息系统内部,为了完成相关功能使用的逻辑文件,包括顺序文件、数据库表等。
外部接口文件EIF (External Interface File),该系统和外部其他信息系统为了交换数据而使用的接口文件。
事务功能(Transaction Function):指提供给用户的以满足应用数据处理需求的功能性分为外部输入(EI)、外部输出(EO)、外部查询(EQ)。
外部输入处理 EI (External Input),是获得数据的过程,对终端用户的输入进行相关的处理。
外部输出处理 EO (External Output),是反馈数据的过程,完成对票据、报表等的输出。
外部查询处理 EQ(External Inquiry),针对终端用户的查询请求,输出相应的检索结果。
功能点的五类要素应用举例:录入订单、修改订单、删除订单是EI,查询订单是EQ,统计订单是EO,汇率查询转换系统为EIF,订单和客户是ILF。
(五)功能点计数方法—数据功能与事务处理功能
图06-功能点计数方法-数据功能(Data Function)图表
图07-功能点计数方法-事务处理功能图表
(六)计算ILF、EIF功能点数案例
图08-计数ILF、EIF功能点图表
计数EI、EQ和EO功能点数
图09-计数EI功能点数图表
图10-计数EQ和EO功能点数
(七)功能点估算法的计算公式与结果
计算调整系数
– VAF=(TDI0.01)+0.65
– TDI(TOTAL DEGREE OF INFLUENCE)
– 0.65<VAF<1.35
计算功能点
– FPC=UFPVAF
调整因子 = 19 0.01 + 0.65 = 0.84
最终调整后的功能点数量为:(19 + 25 + 9 + 5) 0.84 = 48.72个
第4单元 功能点估算法应用
企业利用功能点法估算法,结合实际应用创新,建立了功能点估算五点法、两点法、直接法。由于篇幅关系,不在此一一介绍说明。
课程小结
(1)不同阶段的估算要知道它的准确度,预算要留用各应急储备与管理储备,明确软件开发估算的目的,扮演好估算角色:计量员、或预算员、或管理员、或砍价员(第三方)的。
(2)要认清各种估算工具技术的特点,优势,劣势,在软件开发估算过程中组合使用。
(3)功能点计算法要与企业实际应用结合起来,否则因为复杂性无法有效落地。
您有任何数智化全生命周期管理培训、咨询等问题,可以联系我们的李远佳顾问讲师
136 7188 6441(同微信)