《GBT 18491.5-2010信息技术 软件测量 功能规模测量 第5部分:功能规模测量的功能域确定》专题研究报告深度解读_第1页
《GBT 18491.5-2010信息技术 软件测量 功能规模测量 第5部分:功能规模测量的功能域确定》专题研究报告深度解读_第2页
《GBT 18491.5-2010信息技术 软件测量 功能规模测量 第5部分:功能规模测量的功能域确定》专题研究报告深度解读_第3页
《GBT 18491.5-2010信息技术 软件测量 功能规模测量 第5部分:功能规模测量的功能域确定》专题研究报告深度解读_第4页
《GBT 18491.5-2010信息技术 软件测量 功能规模测量 第5部分:功能规模测量的功能域确定》专题研究报告深度解读_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《GB/T18491.5–2010信息技术

软件测量

功能规模测量

第5部分:功能规模测量的功能域确定》专题研究报告深度解读目录从标准条文到战略地图:专家深度剖析功能域确定如何成为软件度量的基石与价值引擎跨越理论与实践的鸿沟:一套可操作的功能域确定实施流程与关键决策点全景图当敏捷遇上度量:前瞻性探索动态功能域在迭代开发与持续交付环境中的演进路径从合规到卓越:深度剖析功能域确定如何赋能组织级度量基线构建与过程性能提升争议与共识:围绕功能域识别中典型疑难场景的深度辨析与权威操作指南拨开概念迷雾:深度解构功能域、边界与用户目标的三角关系及其测量学意义规避成本黑洞与范围蠕变:功能域确定在项目估算与范围管理中的高级应用策略物联网、微服务与中台架构下的新挑战:专家视角解读分布式系统功能域划定的前沿难题工具赋能与人脑智慧:探究自动化辅助工具在功能域确定中的效能边界与最佳实践预见未来:功能规模测量生态中功能域确定标准的演进趋势与行业影响深远预标准条文到战略地图:专家深度剖析功能域确定如何成为软件度量的基石与价值引擎功能域确定为软件经济性评估提供最根本的量化起点功能域是功能规模测量的首要步骤,它界定了“测量什么”的范围。本标准的核心价值在于将模糊的软件需求转化为清晰、无歧义、可复现的测量对象。没有明确且一致的功能域界定,后续的所有规模计数、生产率与成本分析都将失去可比性和可信度,如同在流动的沙丘上建造城堡。因此,功能域确定是构建整个软件度量体系坚实、统一基石的先决条件。映射商业目标与技术实现,驱动价值交付的对齐与可视化1确定功能域的过程,实质上是将利益相关者的业务目标、用户需求与待构建的软件功能模块进行系统性映射和梳理。它迫使项目各方在早期就“解决方案的范围”达成精确共识,将战略意图转化为可测量的功能集合。这一过程本身即具有极高的管理价值,能有效预防范围蔓延,确保开发资源集中于交付核心商业价值,实现从模糊需求到清晰交付物的战略解码。2奠定国际基准比对基础,融入全球化软件工程生态的关键一步1GB/T18491.5–2010等同采用国际标准ISO/IEC14143–5,这意味着依据本标准确定的功能域,其产出物遵循国际通用的定义和规则。这使得中国软件组织的功能规模测量数据能够与国际行业基准(如ISBSG数据库)进行有效比对。功能域确定的标准化是组织测量能力成熟度的标志,也是其软件资产价值获得国际认可、参与全球竞争与合作的技术护照。2专家视角:功能域确定绝非技术孤岛,而是贯穿项目生命周期的治理活动深度剖析标准内涵,功能域确定并非项目初期一次性完成的活动,而应视为一项需要持续治理的动态过程。随着需求演进、架构变更或增量发布,功能域可能需要重新审视和调整。本标准提供的原则和方法,为这种动态管理提供了稳定框架。专家强调,应将功能域文档作为活的治理资产,而非静态的基线文件,从而支撑预测、追踪和审计的全生命周期管理。拨开概念迷雾:深度解构功能域、边界与用户目标的三角关系及其测量学意义功能域的精确定义:不止于功能集合,更是价值的承载体1本标准将功能域定义为“被度量软件的功能性用户需求的集合”。解读此定义需把握三个核心:其一,“集合”强调其整体性与结构性;其二,“功能性用户需求”锚定了度量的对象是用户视角所感知的功能,而非技术实现细节;其三,“被度量软件”限定了上下文。功能域本质上是为用户创造价值的功能性能力的完整封装,是软件作为“产品”进行经济性衡量的基本单位。2软件边界的战略划定:区分内外,明确测量责任的起止线1软件边界是功能域与外部实体(用户、其他软件、硬件设备等)之间的概念性子线。划定边界是功能域确定中最具决策性的环节,它直接决定了哪些功能被计入规模,哪些属于外部或环境。边界的划定需基于项目目的和视角(如开发方、使用方)。清晰的边界是确保测量一致性、避免重复计算或遗漏的防火墙,也是界定项目责任与合同范围的法律与技术依据。2用户目标的穿透性识别:从表面操作洞察底层业务意图用户目标是用户为达成特定业务目的而与软件进行的交互背后的根本意图。识别用户目标是准确识别基本过程(IFPUG方法中的EI、EO、EQ等)的前提。例如,“输入订单”是操作,“创建销售记录以实现交易”才是目标。本标准强调从用户目标出发,能有效过滤非功能性需求和技术性任务,确保功能点计数纯粹反映为用户交付的功能性价值,增强度量的客观性和稳定性。三角关系的动态平衡:在复杂系统中应用标准的艺术与科学01功能域、边界和用户目标构成一个稳固的三角模型。功能域由边界定义其范围,其内部由服务于用户目标的基本过程填充。在微服务、云原生等复杂架构下,三者关系动态性增强。一个宏大的用户目标可能跨越多个微服务(多个功能域)。此时,需依据测量目的(如评估整体方案或单个服务),灵活运用标准原则,确定是进行整体域测量还是拆分测量,这体现了标准应用的“艺术性”。02跨越理论与实践的鸿沟:一套可操作的功能域确定实施流程与关键决策点全景图启动与准备阶段:明确测量目的与组建跨职能团队是成功基石在开始功能域确定前,必须清晰定义测量的具体目的(如项目估算、合同计价、生产率评估),因为目的不同可能导致边界划定的差异。同时,组建一个包含业务分析师、系统架构师和度量专家在内的跨职能团队至关重要。业务人员确保用户视角的准确性,架构师理解系统组成,度量专家保证过程符合标准。此阶段需文档化测量目的、假设和团队职责。识别与文档化软件边界:运用多种工件进行协同分析与确认软件边界的识别不能凭空进行,应系统性地分析现有文档,包括但不限于:项目章程、需求规格说明书(SRS)、用例图、上下文图、系统架构图。团队需共同审视这些工件,识别与软件交互的所有外部实体(主要用户、外部应用程序、硬件设备等),并明确交互点。最终,应以可视化图表(如带边界的上下文图)形式文档化边界,并征得关键利益相关者的确认。12划定功能域:基于架构与用户视角进行层次化分解的策略1对于单体应用,功能域通常就是整个软件。对于复杂系统,需进行分解。本标准建议可基于软件架构(如子系统、模块)或用户业务领域进行划分。关键在于,划分出的子功能域应具有相对独立的功能性和可管理性。例如,一个ERP系统可划分为财务、人力资源、供应链等功能域。每个子域需明确其子边界,并确保所有子域的并集覆盖整个软件边界内的功能。2识别与归类功能性用户需求:从用户目标到基本过程的映射规程1在确定的功能域内,团队需逐项识别功能性用户需求,并追溯其背后的用户目标。然后,根据IFPUG或相关FSM方法规则,将满足用户目标的一系列数据与事务操作,归类为基本过程(如外部输入、外部输出、外部查询等)。此过程需严格区分功能性需求与非功能性需求(如性能、安全),后者不计入功能规模。使用需求跟踪矩阵有助于确保需求的完整映射。2评审与基线化:建立可审计、可复现的测量基准1完成初步识别后,必须进行正式评审。评审会由跨职能团队和利益相关者参与,检查边界划定是否合理、功能域分解是否恰当、需求识别是否完整准确、归类是否符合规则。评审发现的任何歧义或争议都应记录并解决。最终,将达成共识的功能域描述、边界图、需求清单与归类结果进行基线化,形成正式的《功能域确定文档》,作为后续规模计数的唯一合法输入。2规避成本黑洞与范围蠕变:功能域确定在项目估算与范围管理中的高级应用策略基于功能域的工作分解结构创建,实现估算的颗粒度优化在项目估算中,功能域确定文档是创建工作分解结构(WBS)的顶级框架。每个已确定的功能域或子域,可以作为一个独立的工作包或控制账户,其下再基于识别的功能需求进行任务分解。这种基于功能规模的WBS,确保了工作分解与价值交付物(功能)的直接对齐,使得成本估算和资源分配能够以更精细、更准确的颗粒度进行,显著提升估算的可靠性与预算的控制力。利用功能域基线进行变更影响量化分析,有效管控范围蔓延1当出现新的需求变更请求时,功能域基线是评估影响的黄金标准。首先,分析变更是否导致软件边界的移动(新增外部实体)。其次,判断新需求属于哪个现有功能域或需要创建新域。然后,评估该变更将新增、修改或删除哪些功能性用户需求。这一过程能将模糊的“范围变更”转化为可量化的“功能点变化量”,从而客观评估其对工作量、成本和进度的影响,为变更决策提供数据支持。2在合同与采购管理中,功能域作为可交付成果的客观定义工具在软件外包或采购合同中,传统基于“人月”或模糊功能描述的计价方式易引发纠纷。将经双方确认的功能域确定文档作为合同附件,定义了清晰、无歧义的可交付功能范围。合同价款的支付里程碑可以与特定功能域的完成和验收挂钩。这不仅保护了采购方的利益,确保获得约定的功能,也为供应商提供了明确的交付目标,构建了公平、透明的商业合作基础。12建立功能规模与历史数据的关联,驱动组织级估算模型持续优化1组织通过在多项目中规范应用功能域确定,能够积累高质量的历史数据:每个项目的功能域构成、各域的功能规模、实际工作量与成本。通过分析这些数据,可以建立更精准的估算模型,例如不同功能域类型(如复杂算法域、简单CRUD域)的生产率差异。这种数据驱动的洞察,使得未来对新项目功能域进行规模估算后,能基于历史经验更科学地预测整体成本与资源,实现估算能力的持续成熟。2当敏捷遇上度量:前瞻性探索动态功能域在迭代开发与持续交付环境中的演进路径重新定义“最小可度量单元”:从史诗、特性到用户故事的功能域映射在敏捷环境中,传统的“软件”边界可能变得模糊,产品持续演进。功能域的概念需要适应,可将其映射为不同层级的“价值流”。整个产品可以视为一个宏观功能域,而一个史诗(Epic)或一个大型特性(Feature)可以定义为一个子功能域。在每个冲刺(Sprint)中,完成的用户故事集合实现了该子域的部分功能。这种映射确保了即使在迭代中,度量的对象仍是连贯的用户功能价值块。迭代边界内的微型功能域确定:支持冲刺级规模追踪与速率计算01在每个冲刺规划时,针对计划实现的用户故事,可以进行一次微型的、聚焦的功能域确定活动。明确这些故事所涉及的功能子域范围,识别其用户目标,并按照标准进行功能点计数(可采用简化或快速功能点方法)。将冲刺交付的功能规模与团队投入工作量结合,可以计算出更精细的“功能点速率”,这比单纯的故事点速率更具跨团队和跨组织的可比性,助力容量规划。02处理演进式架构与重构:功能域边界的动态调整与规模重定基线策略敏捷项目常伴随架构演进和代码重构。当架构重大调整(如单体拆分为微服务)时,原有功能域的划分可能不再适用。此时,需要依据新的系统结构,重新进行功能域确定,将原有功能重新分配到新的服务边界内。这个过程可能伴随功能规模的重计。管理上,应将此次重定基线与一次“产品版本发布”关联,明确区分新旧基线,以保持度量历史数据的连续性和可解释性。12在DevOps流水线中集成自动化规模测量:实现功能域健康度的持续监控前瞻性地看,在成熟的DevOps实践中,功能域确定的原则可以与代码分析、需求管理工具链集成。通过标记需求或代码模块所属的功能域,结合自动化功能点分析工具,在持续集成/持续部署(CI/CD)流水线中,能够自动监测每次构建所涉及功能域的变化情况。这提供了除代码行、构建状态外的另一个价值维度指标——“功能交付流”,实现对产品功能增长和健康度的实时可视化。物联网、微服务与中台架构下的新挑战:专家视角解读分布式系统功能域划定的前沿难题物理世界与数字世界的融合:物联网系统中传感器、设备作为特殊“外部实体”1在物联网系统中,软件边界之外的外部实体不仅包括人类用户和其他软件,还包括大量的传感器、执行器等物理设备。这些设备与软件交互,提供数据(输入)或接收指令(输出)。在确定功能域时,需将这些设备视为独特的外部实体。其关键挑战在于:设备提供的原始数据流,是否直接视为外部输入?专家建议,需分析数据流是否代表一个明确的用户业务事件,通常需要边缘计算或平台层进行事件封装后再计数。2微服务架构下的功能域碎片化:聚合根服务与领域驱动设计的指导价值微服务架构将单体应用拆分为数十甚至上百个独立部署的服务,每个服务管理自己的数据和业务能力。这导致传统的“软件”边界内爆,功能被极度碎片化。确定功能域时,有两种策略:一是将每个微服务视为一个独立的功能域(适用于评估单个服务);二是从最终用户视角,将完成一个完整业务用例所涉及的所有协同服务视为一个“逻辑功能域”。领域驱动设计中的限界上下文,为后一种策略提供了天然的理论映射。中台能力的功能域表征:区分可复用能力与前台业务组合的测量逻辑1中台(业务中台、数据中台)的本质是提供可复用的公共业务能力或数据能力。在测量中台建设本身时,其功能域是其封装的所有可复用API或服务。在测量使用中台的前台业务应用时,中台提供的服务应被视为“外部应用”。此时,前台应用通过调用中台API实现的功能,其功能点计数规则需审慎处理:通常,前台应用负责的界面交互逻辑计入,而中台实现的复杂业务逻辑不计入前台规模,以避免重复计算。2跨系统业务流程的端到端规模测量:在服务网格与API经济中的实践探索1在现代分布式系统中,一个用户目标可能由一个跨越多个独立系统(包括内部微服务和外部SaaS)的流程来完成。从用户体验和价值交付角度,需要测量这个“端到端流程”的功能规模。这要求定义一个更高级别的、虚拟的“业务流程功能域”,其边界包含所有参与该流程的系统组件。这种方法对于评估数字化转型项目的整体业务价值至关重要,但需要严格的约定来划分各子系统在总规模中的贡献,以防重叠。2从合规到卓越:深度剖析功能域确定如何赋能组织级度量基线构建与过程性能提升奠定组织级度量资产库的基石:确保历史项目数据的一致性与可比性组织要建立有意义的度量基线(如生产率基线、缺陷密度基线),前提是所有入库项目的功能规模数据是在统一、标准化的基础上测量的。功能域确定过程的标准化是确保这一前提的第一关。通过强制所有项目遵循GB/T18491.5–2010进行边界划定和功能域识别,能够消除因个人理解差异导致的范围界定不一致,从而汇聚形成高质量、可对比的组织级历史数据库,这是进行任何统计分析的基础。支撑过程性能的客观评价:剥离技术复杂度,聚焦功能交付效率1软件开发过程的生产率(如每人月功能点数)是衡量过程性能的核心指标。若功能规模测量因功能域界定模糊而不准,则生产率计算将失真。规范的功能域确定,确保了分子(功能规模)的准确性。这使得组织能够客观比较不同项目团队、不同技术栈下的交付效率,识别高绩效团队的最佳实践,也能更准确地评估过程改进(如引入新工具、新方法)对交付能力产生的真实影响,驱动过程优化决策。2赋能量化项目管理与组织级稳态预测:基于功能域分布的项目分类与建模当组织积累了足够多的项目数据后,可以超越单一的生产率数字,进行更深入的分析。例如,分析不同类型功能域(如报表密集型、事务处理型、算法密集型)的规模与工作量关系。未来面对新项目时,通过分析其功能域构成比例,可以匹配历史中相似类型的项目数据进行更精准的预测。这种基于功能域特征的分类建模,将组织的估算能力从“宏观平均”提升到“微观适配”的更高水平。驱动软件资产的价值化管理:将功能规模与财务指标关联规范的功能域确定,使得软件的功能价值可以被稳定地量化。组织可以将此与财务数据结合,计算每个功能点的开发成本、维护成本,甚至市场价值。这对于软件产品的定价、投资回报率分析、以及将软件作为资产进行财务管理具有重要意义。它使软件从难以估价的“成本中心”转变为价值可衡量的“资产中心”,为高层管理者提供了透明、可信的决策依据,推动IT投资管理与业务战略的深度融合。工具赋能与人脑智慧:探究自动化辅助工具在功能域确定中的效能边界与最佳实践需求管理工具中的功能域元数据标注:为自动化分析提供结构化源头完全自动化地识别功能域在当前技术下仍不现实,但工具可以极大辅助。起点是在需求管理工具中,为每条用户需求或用户故事添加“所属功能域”的元数据标签。这要求业务分析师在录入需求时即进行初步归类。结构化存储的需求数据为后续的自动化或半自动化分析提供了基础。最佳实践是设计组织标准的功能域分类树,并在工具中作为下拉选项,确保标注的一致性。12静态代码分析与逆向工程工具:从实现反推功能域的可行性与局限01对于已存在系统,可以通过静态代码分析工具扫描源代码,结合架构发现技术,识别出模块、类、方法之间的调用关系,进而聚类出潜在的功能组件。然而,这种方法存在根本局限:它识别的是技术实现结构,而非用户视角的功能域。代码结构可能无法反映业务逻辑的划分。因此,这类工具的输出只能作为专家进行功能域确定的参考线索,必须结合需求文档和领域知识进行人工验证和修正。02模型驱动开发与领域特定语言:在设计与开发源头嵌入功能域信息01更为前沿的实践是采用模型驱动开发或领域特定语言。在这些方法中,系统的设计模型(如UML模型、基于DSL的领域模型)直接表达了业务领域的概念和关系。如果在建模阶段,就按照功能域的思想对模型进行组织和标记,那么从这些高抽象层次的模型中可以更准确地推导出功能域划分。这要求将功能域确定活动前移到设计阶段,并将相关规则融入建模规范和工具支持中。02人机协同的最佳模式:工具处理信息,人类负责判断与决策当前阶段最有效的模式是人机协同。工具负责处理海量、重复性的信息收集、关联和可视化工作,例如:从需求库中提取所有标记为某功能域的需求列表;生成系统组件交互图以辅助边界识别;维护功能域与需求、代码模块的追溯矩阵。而人类专家(业务分析师、架构师)则负责核心的判断与决策:最终边界的划定、模糊需求的归类、复杂架构下的域划分策略。工具是智慧的放大器,而非替代品。争议与共识:围绕功能域识别中典型疑难场景的深度辨析与权威操作指南批处理与异步任务:用户是谁?功能域边界如何界定?批处理作业或后台异步任务没有直接的人类用户交互。其“用户”是另一个系统、一个时间触发器或一个业务流程。在确定功能域时,应将发起该批处理的系统或业务流程视为外部实体。批处理程序本身是一个独立的功能域或子系统。其功能性需求体现在:接收何种输入(如文件、消息)、进行何种处理、产生何种输出(如数据库更新、生成文件)。其规模根据这些处理逻辑的复杂性进行计数。配置功能与通用框架:是软件的一部分还是外部实体?复杂的软件系统通常提供强大的配置功能(如工作流引擎、表单设计器)或内置的通用框架。在测量使用该框架构建的具体应用时,框架本身通常被视为软件边界内的一部分,其提供的配置界面(如设计画布、属性面板)是为“管理员用户”服务的功能,应计入规模。然而,由配置活动动态生成的具体业务表单或流程,其功能规模应单独评估,因为它们代表了最终用户使用的、可变的业务功能。报表与数据分析功能:原始数据、衍生指标与用户目标的纠缠报表系统是功能点计数的难点之一。关键在于区分:提供原始数据查询的功能属于外部查询;而基于原始数据进行计算、聚合、分析并呈现衍生业务指标的功能,属于外部输出。对于复杂的即席查询或OLAP分析,如果软件提供了用户自主定义分析维度和指标的能力,则该定义界面是独立的功能,而每次执行的分析结果是该功能的应用,不重复计数。功能域的划分上,可以将报表与分析模块作为独立子域。与商业现成产品的集成:适配开发的功能规模如何公允测量?当项目涉及与COTS产品深度集成,并需要进行大量适配性开发时,功能域的划定需谨慎。COTS产品本身应被视为一个“外部应用”。项目团队开发的定制化接口、中间件、扩展插件或配置脚本,构成了一个独立的功能域。其规模测量的是这些定制开发部分为用户提

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论