打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
关于配置管理中物理审计概念的探讨

1. 配置管理概念的由来


配置管理(Configuration Management)最早是从美国国防部在50年代对硬件的技术管理规范发展而来。目前配置管理的概念几乎应用在所有工业(包括IT)领域。配置管理流程最早出现在60年代末定义在一系列的称作“480系列”的美军标准中(例如MIL-STD-480, 481),随后在10年前被MIL-HDBK-61系列标准取代。目前配置管理的概念被许多模型所采用,比如CMMI,COBIT, ITIL等,同时最初的配置管理的概念在不同的模型中又有不同的定义/再定义。


配置管理的目的是保持工作产品的Integrity。按照CMMI模型的解释,integrity意味着准确性、一致性和完整性(accuracy, consistency, and completeness)。最初的实施配置管理的目的,就是系统地处理变更以维护系统的integrity(CM is the practice of handling changes systematically so that a system maintains its integrity over time, 摘自wiki: Configuration Management)。


配置管理的过程有5方面的内容:
· CM计划和管理 (CM plan and management)
· 配置项(configuration item)
· 配置控制(configuration control)
· 配置状态台帐(configuration status accounting)
· 配置的验证和审计(configuration verification and audit)


2. 配置审计的概念


最早的配置审计的概念,是在美军标准“480系列”中提出的。美军的管理和中国有很大不同,最大的区别就是美军没有军工企业,全靠采购。美军“480系列”中的配置管理方法,实际上就是管理产品采购的方法。一旦军方把被采购产品的性能规格作为基线确定下来,这些要求就成了合同条款,军方就有必要在接受产品的时候确保产品的所有配置项的性能是否符合规格。同样,因为在产品开发过程中会产生各种文档,军方在接受产品时也有必要确保这些文档的正确性,并和产品的设计是一致的。军方在采购时一般是采用控制产品的性能或设计(performance and design)的方法来保证采购的产品的质量,于是乎制定了严格的功能配置审计Functional Configuration Audit (FCA)和物理配置审计Physical Configuration Audit (PCA) 方法来确保采购的产品的各个配置项在性能上满足规格并且相关文档和产品的设计也是一致的。如果FCA不能有效地实施的话,可能会造成后续的产品安装、使用、维护等方面的问题。这就是配置审计概念的由来。


这里需要强调的是,因为军方采购的是最终产品(在CM中以配置项的形式体现),而且最早的时候都是硬件产品,这里的FCA和PCA都是指的是对交付的产品的配置项的审计,不涉及开发阶段。而且,因为“480系列”和后来的MIL-HDBK-61系列都对FCA和PCA方法制定了严格的流程和模板,以至于FCA和PCA变成了专有名词。在开发生命周期期间,如果有和FCA和PCA类似的活动,一般也不叫FCA或PCA,而是叫“类-FCA活动”或“类-PCA活动”(FCA-like activities or PCA-like activities,摘自SWEBOK)。


随着软件业的发展,配置审计的概念逐渐加入到软件开发周期当中,不只是对最终产品的配置项的审计。但是,FCA和PCA这两个专有名词还是被保留了下来,专指对交付产品的配置项的审计。例如,在IEEE的SWEBOK 2004版中,FCA和PCA被称为正式配置审计,而在开发周期当中的那些类-FCA或类PCA的活动,被称为非正式的配置审计,也叫“软件基线中间审计”(In-process Audits of a software baseline,SWEBOK)。


在CMMI模型中,SEI虽然没有明确定义该怎样实施基线的配置审计,但是却以例子的形式给出了3种审计类型,例如,配置审计的类型包括FCA, PCA和配置管理审计(Configuration Management Audit)。很明显,CMMI模型关于配置审计的概念和SWEBOK配置审计的定义是一致的。


3. 配置审计中容易混淆的地方


Q: 我实施了”类-FCA审计活动“是不是就等于实施了FCA?
A: 在美国军方标准MIL-HDBK-61系列中,详细定义了实施FCA和PCA的步骤,并制定了模板。所以一般讲FCA,是指正式的FCA。如果你只是参考了FCA的概念,但在实施配置审计过程中并没有按照标准流程严格执行FCA活动,则最好不要讲你实施了FCA,否则会引起混淆。但是在我接触的大部分人中,除非是专门搞CM的,一般都把FCA当作一个概念来用,并不专指正式的FCA方法。


Q: 我实施了”类-PCA审计活动“是不是就等于实施了PCA?
A: 道理同上。


Q: 实施配置审计的时机?
A: 因为配置审计主要是对配置基线的审计,所以对软件开发来说,建立基线和进行基线变更的时候需要对基线进行配置审计,以确保基线的integrity,即准确性、一致性和完整性。


Q: 配置审计必须实施那些活动?
A: 除了MIL-HDBK-61标准对FCA和PCA制定了详细的活动指南(Activity Guide)之外,SWEBOK和CMMI都只是给出了配置审计的原则和概念。在CMMI模型了,SEI给出了一些实践作为参考,我建议参照这些实践的要求来制定公司自己的配置审计活动:
o 评审基线的准确性、一致性、和完整性。
o 确保配置管理记录和配置项能够对应起来。
o 评审配置项的结构和配置项的准确性、一致性、和完整性。
o 基于需求文档和已批准的变更,确认配置项的完整性、正确性、和一致性。
o 确认与配置管理标准和流程的符合度。


4. 结论
FCA和PCA由于历史的原因,变成了专有名词,专指按照规定的方法,对交付的产品的配置项进行审计。在软件开发周期中间的配置审计,按照CMMI的说法,称为基线的配置管理审计。基线的配置管理审计,目的是保持基线的准确性、一致性和完整性。所以,在基线建立和变更的时候,需要进行配置管理审计。


5. 参考资料:
a. MILITARY HANDBOOK, Configuration Management Guidance, MIL-HDBK-61B, 2002
b. IEEE Software Engineering Body of Knowledge (SWEBOK), 2004
c. CMMI model, version 1.3
d. Wiki: Configuration Management and Software Configuration Management


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
magento 学习 - 配置开发环境
Intel 主动管理技术 (Intel AMT)
软件工程、软件过程术语缩写表
什么是CMM/CMMI?
R&S CCIE集训营培训课程介绍_CCIE 参考书籍
eclipse从数据库逆向生成Hibernate实体类
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服