《系统与软件工程功能规模测量IFPUG方法》(GB/T42449-2023)标准解读

作者:2401_86538250日期:10/1/2025

《系统与软件工程功能规模测量IFPUG方法》(GB/T42449-2023)等同采用ISO/IEC20926:2009《软件与系统工程软件测量IFPUG功能规模测量方法2009》,同时结合国内实际情况进行了最小限度的编辑性改动,如将标准名称调整为《系统与软件工程功能规模测量IFPUG方法》,并新增附录NA(资料性)本文件应用案例,使其更契合国内系统与软件工程领域的应用场景。该标准隶属于ICS35.080和CSSL77范畴,由全国信息技术标准化技术委员会(SAC/TC28)提出并归口,于2023年3月17日发布,2023年10月1日正式实施,为国内系统与软件工程领域的功能规模测量提供了权威、统一的标准依据。本文将围绕该标准内容展开解读,并结合“ILF与EIF取值冲突分析”“复杂度与复用度概念对比分析”两类实际问题深入探讨。同时,也可结合我们以往的分析文章进行阅读:

软件造价之Nesma方法的取值冲突分析

软件造价评估时如何考虑重用程度(复用度)?

软件造价之复用度的取值主要考虑哪些因素

《系统与软件工程功能规模测量NESMA方法》(GBT42588-2023)标准解读

一、核心目标与价值

**支持多维度分析与估算:**助力组织开展质量和生产率分析,精准估算软件开发、增强及维护过程中所需的成本与资源,为项目规划和资源调配提供科学数据支撑。

**提供标准化对比因子:**为不同软件产品、项目之间的对比提供统一的规模度量标准,使软件的评估和比较更具客观性与公正性。

**辅助应用程序包评估:**通过对应用程序包内所有功能进行功能分级,确定采购应用程序包的规模;同时,帮助用户依据自身特定需求确定应用程序包带来的益处,为软件采购决策提供有力参考。

二、关键术语与定义

标准中明确了众多核心术语,是理解和应用该标准的基础,以下为部分关键术语解读:

图片

三、测量过程详解

(一)测量流程总览

功能点计数过程遵循严谨的逻辑顺序,主要包括收集可用文档、确定计数范围和边界并识别功能用户需求、测量数据功能、测量事务功能、计算功能规模、记录功能点计数、报告功能点计数结果七大核心活动,各活动环环相扣,共同构成完整的功能规模测量体系。

图片

(二)各环节关键操作

1.收集可用文档

需收集能描述软件交付功能或被测量软件项目所影响功能的文档,如需求文档、数据/对象模型、类图、数据流程图、用例、过程描述、报告框架、屏幕布局、用户手册等。若文档存在空白,需与主题专家沟通获取补充信息,确保后续测量工作有充分的数据支撑。

2.确定计数范围、边界及功能用户需求

**识别计数目的:**明确功能点计数的具体原因,如确定特定软件版本规模、估算项目成本等,计数目的直接决定计数范围。

**识别计数类型:**根据项目性质,分为开发项目功能点计数、应用程序功能点计数、增强项目功能点计数三类。

**确定计数范围与边界:**基于计数目的和类型,界定功能点计数所涵盖的功能范围,并从用户视角确定应用程序边界,而非技术视角。

**识别功能用户需求:**从用户需求中区分出功能需求,排除非功能需求(如质量约束、组织约束、环境约束、实现约束等)。

3.测量数据功能

**识别逻辑数据并分组:**在计数范围内找出所有逻辑相关且用户可识别的数据或控制信息,排除无应用程序维护的实体、代码数据、无用户所需属性的实体等,将有实体依赖关系的相关实体整合。

**分类数据功能:**若数据功能被应用程序使用且维护,归类为内部逻辑文件(ILF);若仅被引用且由其他应用程序识别为内部逻辑文件(ILF),归类为外部接口文件(EIF)。

**统计DET与RET:**统计数据元素类型(DET),计数范围内,执行基本过程时独特、用户可识别且不重复的维护/检索属性计1个,多应用共享仅计当前应用使用的,关联属性各计1个,依属性使用方式确定归为1个或多个;统计记录元素类型(RET),每个数据功能默认计1个,内有含多DET的特定附加逻辑子组(如非关键属性关联实体等)各额外计1个,无数据模型可查重复数据组,单个重复属性、同时发生的多组DET不计为RET。

**确定功能复杂度与规模:**依据RET和DET数量,参考标准中的数据功能复杂度矩阵确定复杂度,再结合数据功能类型(ILF/EIF)和复杂度,通过数据功能规模矩阵确定功能规模。

图片

图片

这里我将关联同为功能规模测量核心方法的NESMA方法作补充说明:NESMA源于IFPUG,2003年升级为ISO/IEC国际标准(现行ISO/IEC24570:2018),我国2016年发布等效采用ISO/IEC24570:2005的电子行业标准,2023年亦发布NESMA方法国标,其与IFPUG方法类似,将功能点分为事务功能类(EI、EO、EQ)与数据功能类(ILF、EIF/ELF)。

需注意的是,两类方法在功能点取值上存在差异:NESMA方法中,行标、国标及国际标准ILF默认取值为7,EIF默认取值为5,而北京地标《信息化项目软件开发费用测算规范》(DB11/T1010—2019)及之后的《中国软件行业基准数据》(CSBMK®)与大部分省市如湖南、广西、辽宁、安徽、海南、厦门等地费用标准采用ILF默认取10,EIF默认取7(对应IFPUG方法中功能复杂度为‘中’的情况),这会导致规模计算结果不同。这种冲突或因标准制定背景、经验规则、更新滞后性等方面的差异,而这也为理解GB/T42449-2023中IFPUG方法的取值逻辑与应用边界,提供了行业层面的参考视角。如下图在“软件造价喵”中截取的软件行业基准数据分析的两大软件造价基准机构的功能点取值情况,更多的省市功能点取值情况可以前往官网免费获取:

图片

4.测量事务功能

**识别基本过程:**将用户功能需求分解为对用户有意义、构成完整事务、自包含且使应用程序业务处于一致状态的最小活动单元(基本过程)。

**分类事务功能:**根据基本过程的主要目的和处理逻辑,分为外部输入(EI)、外部输出(EO)、外部查询(EQ)。

其中,外部输入(EI):含接受应用程序边界外数据/控制信息的处理逻辑,主要目的为维护一个或多个内部逻辑文件(ILF),或改变应用程序行为;外部输出(EO):主要目的是向用户呈现信息,且包含至少一项额外处理逻辑(如执行数学计算、更新ILF、生成衍生数据、改变应用程序行为);外部查询(EQ):主要目的是向用户呈现信息,仅引用数据功能检索数据/控制信息,不满足EO的额外处理逻辑条件。

图片

图片

**统计FTR与DET:**计数事务功能的FTR时,每个事务功能访问(读取或写入)的每个唯一数据功能(ILF或EIF)计为1个FTR;计数DET时,审查事务功能处理中通过(进入或退出)应用程序边界的操作,每个唯一、用户可识别且非重复的属性计为1个DET,单个事务功能的多响应消息、多启动操作各仅计1个DET,报告标题、系统生成时间戳等非用户输入/输出属性不计为DET。

**确定功能复杂度与规模:**依据FTR和DET数量,参考相应的事务功能复杂度矩阵确定复杂度,再结合事务功能类型和复杂度,通过事务功能规模矩阵确定功能规模。

图片

图片

在软件项目功能点测算与成本评估中,有两个重要影响因素复杂度与复用度。

**复杂度:**指功能点的复杂程度,在IFPUG功能点计数法中,通过数据元素类型(DET)、记录元素类型(RET)和文件类型引用(FTR)等参数来评估。例如,对于内部逻辑文件(ILF)和外部接口文件(EIF),根据其DET和RET的数量确定复杂度等级;对于事务功能(EI、EO、EQ),则根据DET和FTR的数量来确定复杂度等级,不同的复杂度等级对应不同的计数权重,进而影响功能点的计算。

**复用度:**又称重用程度、重用系数等,是国内软件造价评估中的特色调整系数,用于衡量代码、组件或功能的重复使用程度,核心作用是影响开发工作量评估——该因子未包含在国外功能点估算标准中,由我国各地区结合实际需求新增。具体来看,在两大基准机构方面存在差异,北京软件造价评估技术联盟于2024年最新CSBMK数据里,将其命名为“功能点计数项吻合度调整因子”,划分成高(1/3)、中(2/3)、低(1)三个档次,默认取值为“低”,且仅在开发工作量评估时使用,中国软件行业协会软件造价分会则未采用该调整因子;在全国15个使用该因子的地区(四川、海南、湖南、安徽、陕西、贵州、山东、广东、广西、西藏、辽宁、北京、重庆、江西、内蒙古)间,也存在细节差异,命名上北京称“复用度调整因子”,四川称“重用程度”,广东称“复用度调整系数”;取值分级上多数地区分高(1/3)、中(2/3)、低(1)三档,湖南还额外增设“超高”档,取值1/6,适用于移动终端与PC端重复功能的调整;默认值方面四川、海南、湖南默认取“中(2/3)”,安徽默认取“低(1)”,其余地区未规定默认值时,可在0-1区间灵活确定取值。如下图所示的复用度相关数据,更多可前往“软件造价喵”官方免费获取:

图片

图片

5.计算功能规模

**开发型项目:**采用公式DFP=ADD+CFP计算,其中DFP为开发型项目功能点计数;ADD为开发型项目交付用户的功能规模;CFP为转换功能的规模。

开发型项目完成后或者在应用程序生存周期内任何时间测量的应用程序功能规模应使用如下公式计算:

AFP=ADD

其中AFP为应用程序功能点数;ADD为开发型项目交付用户的功能规模(不包含转变功能的规模),或者在任意时间对应用程序计数时都存在的功能规模。

**增强项目:**采用公式EFP=ADD+CHGA+CFP+DEL计算,EFP为增强项目功能点计数;ADD为增强项目新增的功能规模;CHGA为增强项目实施后变更的功能规模;CFP为转变功能的规模;DEL为增强项目删除的功能规模。

增强项目完成后的应用程序功能规模采用如下公式计算:

AFPA=(AFPB+ADD+CHGA)-(CHGB+DEL)

其中AFPA为增强项目完成后的应用程序功能点数;AFPB为增强项目完成前的应用程序功能点数;ADD为增强项目新增的功能规模;CHGA为增强项目实施后或者将要实施后变更的功能规模;CHGB为增强项目实施前或者曾经实施前变更的功能规模;DEL为增强项目删除的功能规模。

6.记录与报告

**记录内容:**包括计数目的和类型、范围和系统边界、日期、所有数据功能和事务功能的详细信息(类型、复杂度、功能点数量)、计数结果、假设和问题解决方案等,还可根据需求记录原始文件、参与者信息、DET与FTR数量、交叉引用等内容。

**报告要求:**遵循标准格式报告结果,完整遵循标准时格式为“SFP(IFPUG-GB/T)”;其中S为功能点计数的结果;FP为IFPUG功能规模测量方法的大小单位;GB/T为国家标准(GB/T42449—2023);本地定制时格式为“SFP(IFPUG-GB/T)”(c为表明不完全遵循标准的字符),使报告具有一致性和可读性。

四、附录

(一)附录A

该附录汇总了标准中所有的功能复杂度和功能规模表,具体已在前面对应内容处依次展示。

(二)附录NA

附录NA是本文件应用案例,以银行柜员终端系统增加支持开立“借贷一体卡”功能为例,详细展示了如何按照标准的测量过程开展功能规模测量工作,从收集文档、确定计数范围和边界、分析数据功能与事务功能,到计算功能规模,每一步都结合实际业务场景进行说明。此处由于文章内容的限制,仅讲解了大概内容,详细信息可参照原文件获取。

总结

综上,《系统与软件工程功能规模测量IFPUG方法》(GB/T42449-2023)作为等同采用国际标准并结合国内实际优化的规范,以清晰的核心目标、明确的术语定义、严谨的测量流程及实用的附录案例,为系统与软件工程领域的功能规模测量提供了标准化、可操作的方法论,不仅能支撑项目成本估算、质量分析与软件采购决策,也为行业内不同项目、产品的规模对比与管理规范化奠定了基础,对提升软件项目管理效率与行业发展规范性具有重要实践意义,相关组织可结合实际需求遵循标准开展功能规模测量工作,充分发挥其在软件全生命周期管理中的价值。


《系统与软件工程功能规模测量IFPUG方法》(GB/T42449-2023)标准解读》 是转载文章,点击查看原文


相关推荐


ChatGPT模型降级事件深度解析:中国卖家的挑战与机遇,应对策略全指南
qmy7569/30/2025

本文深入剖析了ChatGPT模型降级事件对中国卖家的影响,提出了加强自主研发、多元化AI服务布局、深化用户沟通等应对策略,助力中国卖家在这场科技变革中抓住机遇。


头歌Educoder答案 Lucene - 全文检索入门
是犹橐籥2025/10/2

第1关:使用lucene创建索引 任务描述 本关任务:使用lucene完成索引库的创建。 相关知识 如果你还没有接触过Lucene,那么强烈建议你查看背景知识了解Lucene的基础知识和开发环境的配置,如果你已经学习过Lucene那么你可以根据下列知识尝试完成本关任务。 package step1; import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; import


[创业之路-643]:互联网与移动互联网行业与通信行业的关系
文火冰糖的硅基工坊2025/10/2

互联网、移动互联网与通信行业三者之间存在着深度嵌套、相互依存、协同发展的关系。它们不是并列的平行产业,而是构成现代信息社会基础设施的“网络之网”。下面从定义、关系结构、产业链角色和技术演进角度系统解析三者之间的关系。 一、基本定义 行业定义通信行业(Telecommunications)提供信息传输通道的基础服务行业,包括语音、数据、视频等信号的物理传输和网络连接能力。核心是“通路”——让信息从A传到B。互联网(Internet)基于TCP/IP协议族构建的全球性计算机网络系统,通过通信网


Android Studio | 设置国内代理(SDK 设置国内代理(阿里云镜像))
指针不南2025/10/2

Android Studio 相关下载设置国内代理(阿里云镜像)(Android Git 仓库 国内代理/阿里云镜像) 简介 Android 上的 Git 存储库。 下载地址 阿里云镜像:https://mirrors.aliyun.com/android.googlesource.com/ 相关链接 官方主页 使用方法 打开设置(settings)。进入“外观与行为”(Appearance & Behavior)。选择“系统设置”(System Settings)。点击“HTT


首屏加载优化总结
excel2025/10/4

一、什么是首屏加载 首屏时间(First Contentful Paint,FCP) :浏览器从输入网址到 首屏内容渲染完成 的时间。 不需要整个网页都渲染完,但首屏区域必须显示内容。 重要性:是衡量用户体验最关键的性能指标之一。 计算方式 监听 DOMContentLoaded document.addEventListener('DOMContentLoaded', () => { console.log('first contentful painting'); });


数据仓库和商务智能考试考点及关系梳理
轩哥Up2025/10/5

一、核心考点分类及具体内容 (一)基础定义与核心区别(高频基础考点) 核心定义 概念 核心含义 关键目标 数据仓库(Data Warehouse, DW) 面向主题、集成、稳定、时变的结构化数据存储系统,通过整合多个数据源(OLTP系统、文件、API等)的历史数据,为企业决策提供统一的数据基础 1. 数据整合:消除数据孤岛,形成企业级统一数据视图; 2. 历史存储:保留长期历史数


Oracle云基础设施强势崛起:AI驱动的新一代云计算竞争格局
qife1222025/10/6

Beyond Stargate: Oracle OCI提升云基础设施吸引力 Oracle与前沿AI模型制造商达成了震撼市场的交易,但专家表示,该公司也加强了对云计算三巨头在企业IaaS领域的挑战。 无论企业AI最终是福音还是泡沫,IT买家现在都需要考虑Oracle云基础设施这个新的主要参与者。Oracle本月频频登上头条,包括9月9日发布的强劲云收入预测,这主要得益于来自前沿模型公司的投资,例如OpenAI和软银的Stargate合资企业,该企业于6月与Oracle签署了4.5吉瓦数据中心协议。


Flutter 应用生命周期:使用 AppLifecycleListener 阻止应用崩溃
JarvanMo2025/10/8

当我刚开始进行 Flutter 开发时,应用生命周期(App Life Cycle)感觉就像一个神秘的黑盒子。为什么我点击 Home 键时我的计时器会停止?为什么我恢复应用时相机有时会崩溃?朋友们,答案就在于应用生命周期。 欢迎关注我的微信公众号:OpenFlutter,感谢。 作为一名 Flutter 开发者,掌握应用生命周期不仅仅是一个好主意——它是构建专业应用的必不可少的条件。它能让你防止应用崩溃、节省用户的电量,并保护他们宝贵的数据。 本指南将详细解析这些关键状态,并使用 AppLif


基于Hadoop的车辆二氧化碳排放量分析与可视化系统|基于Spark的车辆排放量实时监控与预测系统|基于数据挖掘的汽车排放源识别与减排策略系统
计算机源码社2025/10/9

💕💕作者:计算机源码社 💕💕个人简介:本人八年开发经验,擅长Java、Python、PHP、.NET、Node.js、Spark、hadoop、Android、微信小程序、爬虫、大数据、机器学习等,大家有这一块的问题可以一起交流! 💕💕学习资料、程序开发、技术解答、文档报告 💕💕如需要源码,可以扫取文章下方二维码联系咨询 💕💕Java项目 💕💕微信小程序项目 💕💕Android项目 💕💕Python项目 💕💕PHP项目 💕💕ASP.NET项目 💕�


从0到1微调DeepSeek大模型,LoRA+4位量化让24GB显卡也能玩转
陈敬雷-充电了么-CEO兼CTO2025/10/10

注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书《GPT多模态大模型与AI Agent智能体》(跟我一起学人工智能)【陈敬雷编著】【清华大学出版社】 清华《GPT多模态大模型与AI Agent智能体》书籍配套视频课程【陈敬雷】 文章目录 GPT多模态大模型与AI Agent智能体系列二百一十六从0到1微调DeepSeek大模型,LoRA+4位量化让24GB显卡也能玩转一、为什么要微调DeepSeek?从“通才”到“专家”的蜕变二、微调核心原理:从损失函数到数据策略

首页编辑器站点地图

Copyright © 2025 聚合阅读

License: CC BY-SA 4.0