📜  软件工程 |系统配置管理

📅  最后修改于: 2022-05-13 01:56:59.696000             🧑  作者: Mango

软件工程 |系统配置管理

每当构建软件时,总会有改进的余地,而这些改进带来了画面的变化。可能需要更改以修改或更新任何现有解决方案或为问题创建新解决方案。需求每天都在变化,因此我们需要根据当前的需求和需求不断升级我们的系统以满足所需的输出。变更应在对现有系统进行之前进行分析,在实施之前进行记录,报告之前和之后的详细信息,并以提高质量和减少错误的方式进行控制。这就是需要系统配置管理的地方。

系统配置管理 (SCM)是一种练习安排,通过识别变更项目、建立这些事物之间的联系、制作/表征用于监督各种变体的工具、控制在当前框架中执行的变更、检查和揭示来控制变更/报告所做的更改。鉴于如果没有合法地检查更改,那么它们最终可能会破坏运行良好的程序,因此必须控制更改。因此,SCM 是所有项目管理活动的基础部分。

SCM 中涉及的流程 –
配置管理为顺利控制工作产品提供了一个规范的环境。它涉及以下活动:

  1. 识别和建立——在给定的时间点从构成基线的产品中识别配置项(基线是一组相互一致的配置项,已经过正式审查和同意,并作为进一步开发的基础)。建立项目之间的关系,创建机制来管理变更管理系统的多级控制和程序。

  2. 版本控制——创建现有产品的版本/规范,以在 SCM 系统的帮助下构建新产品。版本说明如下:

    假设经过一些更改,配置对象的版本从 1.0 更改为 1.1。较小的更正和更改导致版本 1.1.1 和 1.1.2,随后是对象 1.2 的主要更新。对象 1.0 的开发一直持续到 1.3 和 1.4,但最终,对象的一个值得注意的变化导致了新的进化路径,即 2.0 版本。目前支持这两个版本。

  3. 变更控制——控制对配置项 (CI) 的变更。变更控制流程如下图所示:

    提交并评估变更请求 (CR) 以评估技术价值、潜在副作用、对其他配置对象和系统功能的总体影响以及变更的预计成本。评估结果以变更报告的形式呈现,供变更控制委员会 (CCB) 使用,CCB 是对变更的状态和优先级做出最终决定的个人或团体。为每个批准的变更生成工程变更请求 (ECR)。

    如果更改因正当理由被拒绝,CCB 也会通知开发商。 ECR 描述了要进行的更改、必须遵守的约束以及审查和审计的标准。将要更改的对象从项目数据库中“签出”,进行更改,然后再次测试该对象。然后将该对象“签入”到数据库中,并使用适当的版本控制机制来创建软件的下一个版本。

  4. 配置审计——软件配置审计是对过程和产品的正式技术审查的补充。它侧重于已修改的配置对象的技术正确性。审核确认 SCM 系统中项目的完整性、正确性和一致性,并跟踪从审核到关闭的行动项目。

  5. 报告——通过管理员指南、用户指南、常见问题解答、发行说明、备忘录、安装指南、配置指南等向开发人员、测试人员、最终用户、客户和利益相关者提供准确的状态和当前配置数据。

    单片机工具 –
    市场上有用于 SCM 的不同工具,例如:CFEngine、Bcfg2 服务器、Vagrant、SmartFrog、CLEAR CASETOOL (CC)、SaltStack、CLEAR QUEST TOOL、Puppet、SVN-Subversion、Perforce、TortoiseSVN、IBM Rational 团队音乐会、IBM 配置管理版本management、Razor、Ansible 等。列表中还有很多。

    建议在选择任何配置管理工具之前,先对特性有一个正确的了解,选择最适合您项目需求的工具,并在选择使用之前清楚每个工具的优缺点。