ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

ISO/IEC/IEEE 24748-3应用指南:软件生命周期过程落地与裁剪实践

ISO/IEC/IEEE 24748-3应用指南:软件生命周期过程落地与裁剪实践 简介ISO/IEC/IEEE 24748-3:2020是国际标准化组织发布的系统与软件工程生命周期管理标准重点为ISO/IEC/IEEE 12207软件生命周期过程提供应用指南适合从事软件研发、系统工程、项目管理、质量保证等工作的专业人士阅读。这份资源是完整的英文电子版文档共75页压缩包内仅有1个PDF文件整体大小约2.13MB便于快速下载与离线学习。内容不仅涵盖范围、规范性引用文件、术语与缩略语、软件系统及组织项目概念等基础部分还重点介绍了过程实施指南、最佳实践、检查清单、风险管理策略并进一步给出质量与风险管理、组织与人员职责分配等实施建议帮助读者将标准要求落实到实际项目中从而提升软件交付质量、降低开发风险。资源发布至今已有174人学习适合需要深入理解国际标准、优化团队开发流程的中高级专业人员作为手边参考。1. 拿到的不只是标准而是一份 12207 的「官方使用说明书」做过软件过程改进的人都有体会直接读 ISO/IEC/IEEE 12207:2017 原文会被 30 个过程、上百条活动和任务砸晕。条款写得再严谨落到「我们团队下周该怎么干」这个问题上往往还是无从下手。ISO/IEC/IEEE 24748-3:2020 就是来填这个空白的——它是 JTC 1/SC 7 官方发布的 12207 应用指南75 页讲清楚每一组过程在什么场景下用、输入输出是什么、和其他过程怎么衔接、该参考哪些配套标准。换句话说12207 告诉你「必须做什么」24748-3 告诉你「怎么把它做出来」。这份文档适合三类人被 CMMI 或体系认证逼着搭流程的质量工程师要在项目启动阶段设计生命周期模型的软件架构师或项目经理以及做标准合规性审计的咨询顾问。读完之后你至少能回答两个问题我的项目该选哪种生命周期模型以及哪些过程可以裁剪掉而不会在审计时翻车。2. 概念层先立住软件系统、组织与项目的关系决定过程怎么排2.1 软件系统概念先分清三类系统再去套过程24748-3 第 4 章用了整节篇幅讲软件系统的概念这个铺垫很多人会跳过但恰恰是后面所有过程裁剪的基础。标准把软件相关系统区分成三类纯软件产品、软件密集型系统和包含软件的系统。纯软件产品好理解比如一个 App 或数据库引擎软件密集型系统指软件在系统功能中占主导地位的系统比如自动驾驶域控制器包含软件的系统则更宽泛比如一座工厂的自动化产线软件只是其中一部分。这个区分的意义在于不同类别的系统技术过程组的侧重点完全不同。纯软件项目可以弱化甚至裁剪 Business or Mission Analysis 过程中关于硬件约束的分析但软件密集型系统必须把 System/Software requirements definition 和 Architecture Definition 之间的迭代做扎实。我见过不少团队拿到 12207 就直接把所有过程铺开结果文档体系比项目本身还重本质就是没做这一层的判断。2.2 组织概念与项目概念过程和项目不是一回事第 4.3 和 4.4 节讲 organizational concepts 和 project concepts这里的核心论点是过程是组织资产项目是过程的使用场景。组织层面关心的是能力建设——人员技能、工具链、标准流程、知识库项目层面关心的是在约束条件下交付结果。24748-3 明确点出Organizational project-enabling processes 这组过程的价值恰恰在于连接这两层。实操上这意味着两件事。第一过程定义不能只写在项目计划里应该沉淀到组织的过程资产库项目从资产库选择并裁剪第二项目复盘时发现的过程缺陷要回流到组织层面去修订过程定义形成闭环。很多团队的 PRPost Review只改项目文档、不改组织级过程文件就是没理解这层关系。24748-3 反复强调过程的一致性consistency和可复用性靠的就是组织和项目两个层面的循环。2.3 六组过程与五个阶段的映射关系第 5.2 和 5.3 节给出了全标准最核心的一张表六组过程Agreement、Organizational project-enabling、Technical Management、Technical、Software Implementation、Software Support和五个生命周期阶段Concept、Development、Production、Utilization、Retirement之间的对应关系。这里有一个常见的理解偏差需要纠正过程组不是按时间顺序排的。Agreement processes 发生在合同层面贯穿项目全程Technical Management processes 与 Technical processes 并行推进一个管计划和控制一个管技术实现。比如 Project Planning process 在 Concept 阶段就要启动但它的输出会持续修订到 Development 结束而 Operation process 虽然主要在 Utilization 阶段活跃但它的运行概念在 Concept 阶段就要定义。用时间轴去理解过程组是新手最容易犯的错正确姿势是按职责域划分。2.4 生命周期模型的选择从瀑布到敏捷的位置判断标准 5.2.3 节列举了顺序sequential、迭代iterative、增量incremental和敏捷agile四种生命周期模型并明确说这些模型可以组合。比如典型的混合模式需求阶段用顺序模型做基线开发阶段切到迭代 增量。选型的判断依据不是「团队熟不熟」而是需求稳定性、技术风险、交付节奏三个维度。我一般会让团队做一个简单的三问判断需求三个月内会不会大改核心技术是否已验证过客户能否接受分批交付如果三个答案都是否顺序模型是安全的如果第一问存疑、第二问答否、第三问能接受直接上迭代 增量。24748-3 并没有替你做选择但它给出了选完之后必须做的事在 Project Planning 里明确所选模型的阶段划分、评审点和过程裁剪规则。没有这一步选型就只是 PPT 上的一个词。3. 技术管理过程落地八个过程变成项目里的实际动作3.1 Project Planning 与 Assessment and Control从估算到纠偏的闭环Project Planning process 在 6.3.1 节的要求远比一般项目计划书要深需要定义工作分解结构、估算工作量与成本、规划资源供给、建立进度表、识别关键依赖还要明确测量项。24748-3 特别强调一点——planning 的输出不是一份计划文档而是一套可追溯的计划体系包括过程计划、配置管理计划、风险管理计划、质量保证计划等。这些子计划必须与主计划一致否则审计时会被开不符合项。Project assessment and control process 给出了控制活动的最小集测量项目状态、分析偏差、决定纠正措施、并追踪措施闭环。实操中我建议把控制粒度定在周每周评估进度偏差和风险状态偏差超过 10% 就触发纠正措施评审。控制阈值要写进计划里不能靠感觉。标准 6.3.2 节列出的评估输入包括进度、成本、技术成熟度、过程合规性四类对应到实际就是周报、燃尽图如果是敏捷、技术评审记录和过程审计结果。3.2 Decision Management 与 Risk Management决策记录和风险登记册是两件套Decision Management process 常被忽略但它是架构选型、供应商选择、重大需求变更时的依据来源。标准要求建立一个决策记录decision log记录问题陈述、备选方案、评估标准、分析结果和最终决定。这不仅是审计证据更是项目后期回头追溯技术债来源的线索。Risk Management process 的要求分三步识别、分析、处置。24748-3 引用 ISO/IEC/IEEE 16085 作为详细风险过程的参考标准。处置策略有规避、转移、缓解、接受四类标准要求对每个已识别风险明确 owner、触发条件和处置时限。我见过很多项目的风险登记册只在启动时填一次之后无人更新这在审计时几乎必挂。正确做法是把它纳入项目例会评审项状态每周刷新。3.3 Configuration Management 与 Information Management基线就是后悔药Configuration Management process 在 6.3.5 节的定义包含配置标识、变更控制、配置状态记录和配置审核四项活动。对软件项目而言落地形态就是分支策略、基线管理和变更评审。基线一旦建立所有变更必须走 Change Request 流程。24748-3 明确要求记录变更的执行状态和验证结果这就是可追溯性的来源。Information Management process 管的是项目信息的产生、存储、保护和分发。实际项目里最常见的问题是信息散落在个人电脑和聊天记录里。标准给出的建议是定义信息模型、存储介质和访问权限。落到操作层面我建议把项目信息库按文档、代码、配置、记录四类组织并明确各类信息的唯一存放位置。避免同一份文档在共享盘和 Wiki 上各有一份且互相冲突。3.4 Measurement 与 Quality Assurance用数据说话还是用条款说话Measurement process 要求建立测量目标、选择度量项、收集和分析数据。标准第 6.3.7 节列出了典型度量项规模代码行或功能点、工作量、进度偏差、缺陷密度、过程合规率。这里有一条血泪经验度量项宁少勿多。一次推五六个度量项团队会疲于填报数据质量必然失真。我一般建议第一轮只做三个——进度偏差、缺陷密度、需求变更率等数据链条稳定后再扩展。Quality Assurance process 和 Measurement process 容易混淆。QA 的关注点是过程合规性不是产品质量指标。标准 6.3.8 节明确 QA 活动包括过程评审、产品评审和不符合项跟踪。注意QA 不是测试。测试属于 Technical 过程组的 Verification 和 ValidationQA 是独立的检查职能。很多小型团队把这两个角色合并可以理解但至少要在流程文档里说清楚谁来检查过程是否符合规定谁来验证产品是否满足需求。4. 技术过程映射到实际开发14 个过程怎么排进研发流程4.1 两条需求链从业务使命到软件需求Technical processes 从 Business or Mission Analysis 到 Design Definition 是一条完整的需求转化链。Business or Mission Analysis process 回答「为什么要做这个系统」Stakeholder Needs and Requirements Definition process 回答「谁在用、用来做什么」System/Software requirements definition process 回答「系统要满足什么技术条件」。实操中容易断的地方在需求可追溯性。24748-3 要求每个系统级需求能追溯到利益相关方需求每个软件需求能追溯到系统级需求。工具层面可以用需求管理工具做链接小团队用 Excel 维护追溯矩阵也能应付关键是别断链。我见过不少项目为了赶进度把需求追溯矩阵当成事后补的文档结果补的时候发现需求和设计已经对不上了返工成本远超当时直接维护的成本。4.2 Architecture Definition 与 Design Definition逻辑架构和物理架构的分工Architecture Definition process 在 6.4.4 节的要求涵盖架构视图、架构决策和架构评估。标准点明架构活动要产生候选架构并基于评估准则选择这个评估过程要与 Decision Management 联动。Design Definition process 则是在架构确定后做设计细化包括接口设计、数据设计、组件设计。两者边界可以用一句话记架构管结构、管边界、管交互设计管内部、管实现、管细节。很多项目把架构和设计混在一个阶段做短期看着快后期改动一多架构漂移的问题就暴露了。24748-3 的另一个提醒是架构需要多种视图表达包括逻辑视图、物理视图、接口视图和部署视图。UML 图、SysML 图、C4 模型都是可选方式标准不规定表示法但要求架构信息的完整性。4.3 Implementation、Integration、VerificationCI/CD 在标准里的位置Implementation process 对应编码活动Integration process 对应组装Verification process 对应确认实现符合需求。这三者的关系在标准里有清晰的顺序逻辑先实现单元再集成成更大的构建最后验证每个层级的实现满足对应需求。特别要留意的是 Verification 和 Testing 的关系——24748-3 明确验证可以包含评审、走查、静态分析、测试等多种方法测试只是其中一种手段。CI/CD 在这里的落位很自然持续集成对应 Integration process 的持续执行自动化测试对应 Verification 的自动化策略。标准 6.4.8 和 6.4.9 节要求的验证计划应该明确验证层级单元、集成、系统、验证方法评审、分析、测试和验证环境。这里建议团队把验证矩阵做出来——需求编号对应验证方法、验证级别、验证结果这个矩阵既是开发效率工具也是审计时的救命文档。4.4 Transition、Operation、Maintenance、Disposal后半程不该被忽略Transition process 管的是系统从开发环境到运行环境的转移标准要求包含培训、数据迁移、现场部署和上线验收。Operation process 管运行支持Maintenance process 管缺陷修复和功能增强Disposal process 管退役和数据处置。中小型软件团队最容易忽略的是 Maintenance process 的变更接口——维护阶段的变更实际上要重新走一遍「需求变更评估 → 设计影响分析 → 实现 → 验证 → 发布」的流程。24748-3 明确维护活动包括问题分析、变更实施、变更验证和迁移与配置管理过程的变更控制紧密衔接。在项目规划时就把维护阶段的资源和工作量估算做出来而不是等项目上线了再临时抓人补窟窿这是经验之谈。5. 避坑应用 24748-3 最常见的五个翻车现场5.1 坑一把指南当成裁剪的万能借口现象项目组觉得过程太繁琐拿着 24748-3 的裁剪条款把一半过程砍掉结果审计时发现关键活动缺失。原因24748-3 的裁剪Tailoring有明确规则——裁剪的对象是任务而非目标裁剪决策必须记录理由而且裁剪结果需要经过评审。很多团队裁掉了 Configuration Management 的过程审计活动理由是「代码在 Git 里管着」但配置管理的状态记录和发布基线根本没有建立。解决每次裁剪必须输出裁剪记录写明裁剪项、理由、影响分析和评审结论。裁掉一个活动的前提是另一个过程已经覆盖了它的目标。没有覆盖说明的裁剪一律打回。5.2 坑二把过程组当成时间线现象项目计划里写「第一阶段做 Agreement第二阶段做 Technical Management第三阶段做 Technical」把过程当阶段安排。原因六组过程是职责域划分不是时间顺序。Agreement processes 在合同期启动后持续到验收Technical Management processes 与 Technical processes 全程并行。解决在项目计划中用两维结构——横轴是生命周期阶段纵轴是过程组每个单元格标注该过程在该阶段的进出条件和产出物。用这个矩阵替代简单的甘特图表达过程安排。5.3 坑三忽视「紧密相关过程」的衔接说明现象需求变更只走需求管理流程设计文档不更新验证方案不改最后开发和测试各干各的。原因24748-3 对每个过程都列出了「closely related processes」比如 Stakeholder Needs and Requirements Definition 与 System/Software requirements definition 之间是分配关系Architecture Definition 的变化会影响 Design Definition 和 Implementation。这个过程间的关系描述容易被逐章阅读的读者错过。解决读标准时把每个过程的「closely related」章节单独摘出来做成一张关系表作为项目过程联动检查的清单。每类变更发起时对照这张表确认下游过程是否需要联动。5.4 坑四Verification 和 Validation 混为一谈现象测试报告写「功能已通过验证」但实际上只做了验证是否按规格实现没有做确认是否满足用户真实需要。原因Verification 回答「做得对不对」Validation 回答「做的是不是对的」。中文世界里这两个词经常被翻成近义词但标准里的活动和产出完全不同。解决在项目模板里把两者分开定义。验证用需求追溯矩阵核对实现确认用用户场景做验收测试或试用。两者的结论分开记录避免混淆。5.5 坑五配置管理只做代码不做文档现象代码有 Git 管理但需求文档、设计文档、测试计划散落在共享盘版本混乱审计时需要倒推每个文档的变更历史。原因Configuration Management 的配置项范围应该覆盖所有需要受控的项目工件不限于源代码。解决在项目启动时列出配置项清单包括文档、代码、工具配置、数据文件四类确定每个配置项的存储位置和基线策略。文档类配置项同样要纳入变更控制虽然变更频率可以低一些。6. 剪裁Tailoring是最后一步把 50 页标准变成你团队的 5 页清单6.1 Appendix A 的剪裁逻辑标准附录 A 提供了裁剪指南这是 75 页里实操价值最高的一部分。裁剪的前提是对标准的完整理解裁剪的输出是一份项目特定的过程定义文档。附录 A 强调裁剪不是从零开始而是从标准的完整活动集出发逐项判断保留、调整或删除。比较实际的裁剪维度针对不同项目类型小规模项目少于 10 人、周期短可以合并部分管理过程的产出物比如把 Project Planning 和 Risk Management 的评审合并到同一个会议高风险项目则相反要增加评审点和更细的验证层级。裁剪记录至少要包含裁剪依据为什么裁、影响分析裁了对什么有影响、替代措施有没有更轻量的方式达成目标。6.2 一套可参考的裁剪步骤第一步把 12207 的过程列表和 24748-3 的过程指南做成一张完整清单包含过程、目的、活动、产出物四列。第二步逐项标注适用性直接适用、简化适用、不适用、由其他过程替代。第三步对「简化适用」和「由其他过程替代」的项目补充说明理由。第四步组织评审会至少由项目经理、技术负责人、质量工程师三方会签。第五步把裁剪结果写进项目计划或质量手册形成受控文件。团队可以把裁剪结果做成一张 A3 纸的表格过程名称裁剪方式裁剪理由替代/简化措施评审结论Supply Process简化内部项目无对外供应只保留交付验收环节通过Knowledge Management简化组织已有知识库系统仅要求项目经验入库通过Disposal Process不适用无退役数据要求无通过Decision Management简化团队规模小用决策记录表替代正式评审通过这张表项目启动时花半天做换来的是后续过程执行和审计时的清爽。6.3 从标准到习惯我现在做项目还有一个强制习惯每个里程碑结束时对照裁剪表审视一遍实际执行情况凡是裁剪了却仍然在做的要么恢复裁剪记录要么删除多余动作凡是保留却没人做的必须在下个里程碑把执行人落到位。这个过程叫过程一致性检验在 24748-3 的术语体系里属于 Quality Assurance 的范畴但做起来只需要两个小时的会议。从那以后我经手的每个项目都强制走一遍这个过程结果就是审计不再是个悬念而是已知答案的确认。标准是死的怎么把它变成一个团队真正用得顺手的框架才是读这份指南最大的收获。希望帮到你。本文还有配套的精品资源点击获取
返回列表