1.1问题的引出
软件配置管理工作者差不多都有这样的经验:在认识新朋友时,当别人问起自己所从事的职业,自然会回答道:“我从事软件配置管理工作。”接着,十有八九,会被问到下一个问题:“什么是软件配置管理?”总被问到相同的问题,倒还称不上是苦恼,真正的苦恼在于回答这个问题,因为软件配置管理真是不太容易说得清……解释了半天,结果往往是:“你这份工作好玄妙啊。隔行如隔山啊,我是搞不懂了。”
是的,软件配置管理确实不太好解释。软件开发过程中的其他工作,似乎都比它容易理解。开发人员在编写源代码;测试人员在测试、挑毛病;需求分析师配合用户确定需求,并且用准确的语言表达出来……虽然这样说未必严谨,但是至少能够得到一个大致的印象。然而,软件配置管理呢?软件配置管理是什么?
“一套应用技术上和管理上的指导和监督的方法,用来识别和记录配置项的功能特征和物理特征;控制这些特征的变更;记录和报告变更的处理和执行的状态;以及验证其是否符合特定的需求。”。
如果你看得一头雾水,别担心,这不是你能力上的问题。大部分人和你的感受相同。这个定义,以及类似的权威定义,都高度抽象。用一两句话确实很难把握好软件配置管理这个概念,需要更多的描述才能把它说清楚。事实上,这一整本书,就是在认识和理解软件配置管理。而在这一章中,我们将用一些我们相对熟悉的概念来打比方、做对比,来讲解软件配置管理这个概念。通过这样一种方式,让大家对软件配置管理有一个虽然初步但比较正确的认识。
1.2有那么一类管理
管理是个很宽泛的话题。大到管理企业、组织生产、治理河川、治国平天下,小到制定周末出游计划、整理通讯录、清理垃圾文件。在这里我们可不是要讨论这么多的事情。我们来重点看看下面这几个:
●库房管理
库房管理员小张关心仓库里存放了哪些东西,分门别类放在哪儿,每样有多少个,何时存进来的,谁存进来的,何时提走,谁提走的(提走时要有出库单才行)。
●财务会计
小王负责会计出纳工作,她要把公司的各项费用和各项收入分类记录在各种财务表格中,并进行统计。除了记录之外,她要确保合乎规定的票据才能在她这里报销
……