什么是配置管理?


12

在我参与的所有项目中,都得到了外部顾问的帮助,有人问我们是否在使用哪种类型的配置管理。在这些情况下,顾问都无法定义配置管理。那是什么


4
老实说,只是Google吧,前两个结果是相关的Wikipedia条目,它们解释了所有相关内容。
杰里米


2
我已经阅读了该维基百科页面,说实话,我认为它是由亨利所指的同一位“顾问”撰写的
Dean Harding 2010年

是的,流行语。带回我企业时代的回忆。
杰森·贝克

@Dean Harding就是这样!
亨利

Answers:


4

什么软件配置管理(SCM)可以归结为回答以下问题:

  • 用来制作最终产品的源文件是什么?
  • 与上次生产最终产品相比,发生了什么变化?
  • 我们为什么要更改它?

反过来,这可能会发展成为一个非常庞大且丑陋的“过程”。流程问题是为什么大多数开发人员对SCM的关注都引起了关注,因为这意味着跟踪源文件,缺陷和需求。然后将它们捆绑在一起,以便您可以审核更改(从管理的角度来看,这是一个理想的世界,因为它提供了良好的经理工具,可以更好地了解他在哪里需要什么资源。)

这与ITIL配置管理不同,后者实际上是软件资产跟踪,什么软件在哪里运行(哪个服务器/工作站)以及该软件的设置是什么。

换句话说,您的顾问更可能想知道您的公司/开发小组如何回答我的答案顶部的三个问题。


1
最近一次出现这个问题时,我说过我们使用svn,Trac和Hudson。从顾问脸上的表情很明显,他还没有听说过这些。因此,我向他展示了我们的需求注册表如何引入Trac,Trac如何与svn集成,Hudson如何自动构建和部署所有内容以及将配置管理列为项目风险的那个人。
亨利

12

配置管理包含与编写代码没有直接关系的“其他所有内容”。因此,这是您管理发行版的方式,您如何管理和分类错误报告和功能建议,如何执行构建等。它通常还包括源代码的管理方式(例如,您使用的版本控制,分支策略,[可能]如何管理多个并发“发行版”等)。


2

随着时间的流逝,配置管理意味着很多事情。我认为对管理员或操作而言,比直接对开发人员更重要。当您的操作人员试图保持服务器正常运行时,您会担心设置机器,管理其配置并使其保持运行状态。如果您仅登录计算机并开始安装软件,并在计算机上更改配置文件,则无需管理该配置。如果那台机器死了怎么办?如果有人继续在那台计算机上更改配置文件,而一切都开始崩溃,会发生什么?如果您需要启动另一台配置与正在运行的计算机完全相同的计算机怎么办?你能做到吗?

没有配置管理策略,您将无法做到。这就是为什么它很重要。这都是关于可重复性。开发人员对待可重复性的方法与操作人员不同,因此我们关心重复不同的事情。

有一些很棒的开源工具可以帮助您做到这一点:Chef,Capistrano,Cook甚至SVN。为何开发人员只应使用SVN?检入配置文件,用于配置计算机的脚本并跟踪其版本。组织的这些部分对于保持其正常运行至关重要。您不想丢失那些。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.