SCM 流程

2025年3月17日 | 阅读 3 分钟

它使用工具来确保必要的变更已充分地应用到适当的组件中。SCM 流程定义了许多任务

  • 识别软件配置中的对象
  • 版本控制
  • 变更控制
  • 配置审计
  • 状态报告
SCM Process

识别

基本对象: 软件工程师在分析、设计、编码或测试期间创建的文本单元。

聚合对象: 基本对象和其他聚合对象的集合。设计规范是一个聚合对象。

每个对象都有一组不同的特征,可以唯一地识别它:名称、描述、资源列表和“实现”。

可以使用模块互连语言 (MIL) 描述配置对象之间的相互关系。

版本控制

版本控制结合了程序和工具来处理在软件过程中生成的配置对象的不同版本。

Clemm 在 SCM 的上下文中定义了版本控制:配置管理允许用户通过选择适当的版本来指定软件系统的替代配置。这通过将属性与每个软件版本相关联来支持,然后允许通过描述所需属性集来指定 [和构建] 配置。

变更控制

James Bach 在 SCM 的上下文中描述了变更控制:变更控制至关重要。但是使其必不可少的因素也使其令人讨厌。

我们担心变更,因为代码中的一个小的混乱可能会导致产品中的大故障。但是它也可以修复一个重要的故障或启用令人难以置信的新功能。

我们担心变更,因为一个流氓开发人员可能会搞砸整个项目,但出色的想法也起源于这些流氓的想法,并且

繁琐的变更控制流程可能会有效地阻止他们进行创造性工作。

提交变更请求并进行计算,以评估技术价值、潜在的副作用、对其他配置对象和系统功能的总体影响以及变更的预计成本。

评估结果以变更报告的形式呈现,变更控制机构 (CCA) 使用该报告 - 个人或团体对变更的状态和优先级做出最终决定。

“签入”和“签出”过程实现了变更控制的两个必要元素 -访问控制同步控制

访问控制管理哪些软件工程师有权访问和修改特定的配置对象。

同步控制有助于确保两个人执行的并行更改不会相互覆盖。

配置审计

SCM 审核以验证软件产品是否满足基线要求,并确保构建的内容和交付的内容一致。

SCM 审核还确保在所有 CI 之间保持可追溯性,并且所有工作请求都与一个或多个 CI 修改相关联。

SCM 审核是“看门狗”,可确保项目范围的完整性得以保留。

状态报告

配置状态报告(有时也称为状态核算)通过管理指南、用户指南、常见问题解答、发行说明、安装指南、配置指南等向开发人员、测试人员、最终用户、客户和利益相关者提供准确的状态和当前配置数据。


下一个主题软件质量保证