1. 标准概况与适用范围
ISO/IEC 14143-1:2007(加拿大采纳为 CAN/CSA-ISO/IEC 14143-1-07)是信息技术领域关于软件功能规模测量(Functional Size Measurement, FSM)的基础性标准。该标准由 ISO/IEC JTC1/SC7(软件与系统工程分技术委员会)制定,首次发布为 1998 年,2007 年进行了第二次修订。标准核心目标是为 FSM 提供统一的概念框架与术语体系,使不同功能规模测量方法之间具备可比性和一致性。
适用范围包括:
- 定义功能规模及测量所需的核心概念(如用户需求、功能域、功能规模单位);
- 规定 FSM 的通用要求(如测量过程、验证规则);
- 适用于所有应用软件(包括企业系统、嵌入式系统、实时系统等),不限制特定测量方法;
- 为 ISO/IEC 14143 系列其他部分(第 2~6 部分)及具体 FSM 方法标准(如 COSMIC、IFPUG)提供理论基石。
关键技术要点: 功能规模测量聚焦于用户功能的“量”,而非实现方式(如代码行、开发工时)。这使得 FSM 可跨越技术和平台,广泛应用于软件项目估算、生产率分析及外包管理。
2. 主要技术内容与要求
2.1 核心概念定义
标准明确规定以下关键术语:
- 功能规模(Functional Size): 从用户功能需求角度度量的软件规模,由功能域(Functional Domain)中的功能单元数量决定;
- 用户需求(User Requirements): 描述用户对软件行为与数据的期望,不含技术实现细节;
- 功能域(Functional Domain): 一组边界清晰、功能内聚的用户需求集合(如订单处理、库存查询);
- 基本功能单元(Elementary Functional Component): 最小的可计数功能组件(如输入、输出、文件引用等)。
2.2 测量过程要求
标准定义了 FSM 方法必须遵循的通用过程框架:
- 确定测量目的与范围: 明确为什么要测量(如估算工作量)及软件边界;
- 识别功能域: 将所有用户需求划分为若干功能域;
- 计数基本功能单元: 按照所选方法的规则,度量每个功能域中的功能点;
- 汇聚并调整计算: 汇总功能点数量,必要时使用价值调整因子(VAF,现已不推荐)或严格遵循未调整功能点计数;
- 验证与报告: 确保计数可审计、可重复,并以标准格式记录结果。
重要注意事项: ISO/IEC 14143-1:2007 强调功能规模测量应完全不依赖实现技术。常见错误包括:将开发平台、语言或框架作为功能点计数的输入,这会导致规模失真,影响估算准确性。
2.3 国际通用的功能规模测量方法概览
下表列出了基于 ISO/IEC 14143-1 框架的主要 FSM 方法及其参照标准:
| 方法名称 | 对应的 ISO/IEC 标准 | 核心计数单元 | 典型适用领域 |
| COSMIC (ISO/IEC 19761) | ISO/IEC 19761:2011 | 数据移动(入口、出口、读、写) | 实时系统、嵌入式系统、业务软件 |
| IFPUG (ISO/IEC 20926) | ISO/IEC 20926:2009 | 外部输入、外部输出、外部查询、内部逻辑文件、外部接口文件 | 企业级管理信息系统 |
| NESMA (ISO/IEC 24570) | ISO/IEC 24570:2005 | 与 IFPUG 类似,但支持快速计数 | 维护项目、敏捷估算 |
| Mark II (ISO/IEC 20968) | ISO/IEC 20968:2002 | 逻辑事务(输入、处理、输出) | 商务系统、事务密集型应用 |
标准实施的益处: 依据 ISO/IEC 14143-1 框架选择或开发 FSM 方法,可确保测量结果的一致性、可比性和可审计性,有利于组织层面建立统一的软件规模数据库,提升项目估算的可靠性。
3. 实施与应用要点
3.1 引入组织的关键步骤
企业若希望基于 ISO/IEC 14143-1 开展功能规模测量,建议遵循以下路径:
- 选择适配的 FSM 方法: 根据软件类型(业务系统、嵌入式等)和技术栈,从 COSMIC、IFPUG、NESMA 等标准中选择最吻合的一种;
- 培训与认证: 确保计数人员接受过官方培训并通过认证考试(如 CFPS、CVS);
- 构建计数规则与模板: 基于标准制定组织内部的计数指南,确保不同团队的一致;
- 建立数据收集与校验流程: 将功能点计数纳入项目里程碑,并定期进行同行评审;
- 迭代改进: 使用历史数据校准生产率模型,持续提升估算精度。
安全关键要求: 对于嵌入式或安全相关系统,功能规模测量须同时满足功能安全标准(如 IEC 61508)对软件规模的管理要求。此时建议优先选用 COSMIC 方法,因其数据移动模型更契合实时控制系统的需求。
3.2 常见误区与对策
- 混淆功能规模与代码行: 功能规模是用户视角的“量”,代码行是技术视角“量”。两者不能直接换算,但可通过历史统计建立回归关系。使用 FSM 时应坚持纯净的功能要求计数。
- 忽视计数一致性: 不同项目组可能对“登录界面”计数不同(一个外部输入还是多个)。必须通过规则细化与仲裁机制确保内部统一。
- 过早细化: 在需求模糊时追求精确功能点,应先用预估功能点(如 NESMA 指示性计数)快速估算,随着需求明确逐步细化。
4. 与其他标准的关系
ISO/IEC 14143-1 是整个功能规模测量标准族的基础文件:
- ISO/IEC 14143-2: 符合性评价,规定方法如何声明与 14143-1 保持一致;
- ISO/IEC 14143-3: 验证框架,指导 FSM 验证过程;
- ISO/IEC 14143-4: 参考模型,定义功能规模测量的参考结构;
- ISO/IEC 14143-5: 功能域分析与测量,支持不同功能域分析;
- ISO/IEC 14143-6: 指南,为组织实施 FSM 提供附加要求。
此外,FSM 结果还作为重要输入,服务于:
- ISO/IEC 25000 系列(“SQuaRE”): 软件质量模型中,功能规模常用于计算生产率、质量成本等度量;
- ISO/IEC 15939: 测量过程框架,与 FSM 过程互补;
- ISO 8000: 数据质量标准,影响功能点计数所使用的需求文档与功能数据质量。
问: ISO/IEC 14143-1:2007 与 IEC 14143-1-07 是什么关系?
答: 国际标准正式编号为 ISO/IEC 14143-1:2007。部分国家采纳时可能会增加前缀(如加拿大标准 CAN/CSA-ISO/IEC 14143-1-07),实际技术内容完全等同,因此本文中二者可视为同一标准。
问: 功能规模测量(FSM)一定能提高估算准确性吗?
答: FSM 提供的是规模度量,估算准确性还依赖于组织的历史生产率数据库与估算模型。标准化的 FSM 可以为估算提供一致的输入,但单独使用无法保证准确,需要与其他管理过程(如 COCOMO、贝叶斯推断)结合。
问: 答: 不能。14143-1 仅定义概念框架与要求,实际计数需要选用基于该标准的具体方法(如 COSMIC、IFPUG)。这就好比汽车设计标准与具体车型的关系。
© 2026 本文基于 ISO/IEC 14143-1:2007 撰写,仅供参考。标准最新版本请访问 ISO 官方渠道。
📥 标准文件下载
🔒
请等待 10 秒,广告加载完成后将自动显示下载链接