配置管理初级怎么定义
⑴ 什么是配置管理
配置管理(Configuration Management,CM)是通过技术或行政手段对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。配置管理的目标是记录软件产品的演化过程,确保软件开发者在软件生命周期中各个阶段都能得到精确的产品配置。
配置管理过程是对处于不断演化、完善过程中的软件产品的管理过程。其最终目标是实现软件产品的完整性、一致性、可控性,使产品极大程度地与用户需求相吻合。它通过控制、记录、追踪对软件的修改和每个修改生成的软件组成部件来实现对软件产品的管理功能。
⑵ 配置管理的起源、发展历程和主要作用是什么
1 “配置”的意思:配置,是一个很洋化的词汇,在汉语的本土词汇中,没有很好的对应概念。所以,要解释“配置是什么”,比较费劲。在英文字典中,configuration的解释是“A configuration is an arrangement of a group of things”(配置是指一组事物的组合排列)。
这个定义有三层含义
(1)如果说到“某个事物(例如产品)的配置”,那么这个事物必定是由具有相互关系的若干其他事物(例如零部件)构成的集合,只有集合性的事物才有配置一说,单个的、不可拆分的事物是不存在配置的;
(2)配置,并非指这个集合事物的本身(“产品”与“产品配置”是两码事);
(3)配置是指参与构成集合事物的那些众多“小”事物之间的组合状态、排列状态,或者是指集合事物的内部组成。
2 企业为什么要管产品配置
“产品是由哪些单元构成”与“产品是由这些单元如何构成”,设计部门设计成什么样就是什么样,把图纸保管好就行了。图纸当然是要存档的,但配置管理不是把图纸管好这么简单。如果,设计部门能够一帆风顺地将产品设计出来,工艺部门能够一帆风顺地做好工艺文件,然后将设计文件和工艺文件都保管好,并将副本交给生产部门去照着做就行了,那么再复杂的产品都不需要配置管理工作了。
3 配置管理的起源和发展简史是怎样的
前文简述过,配置管理起源于1960年代的美国国防工业。这一行业有一个特点:产品的研发是由政府出资的,而且政府拥有产品研发成果的所有权。随着武器装备的复杂程度越来越高,对配置的管理要求也越来越严格。很多情况下,企业好不容易才做出一个样机,通过测试证明是符合军方需求的。但做到这一点需要花费大量的成本和时间。军方意识到需要对需求进行管理,不仅要管理总体需求,而且还要管理需求的细化过程。就算花了很大代价做出了一个合格的样机,也很难保证后续的产品也都是合格的。原因就在于变更。由于武器系统太复杂,牵一发而动全身,任何一处变更都有可能引发产品在其他方面出现差错。为此,美国政府在1960年代开始组织力量研究这个问题,并提出了一系列关于配置管理的规则,有些规则还上升成为了标准。这些规则和标准,就逐渐从国防工业扩散到各行各业,被广为接受。
不仅是离散制造业,而且软件行业也非常重视配置管理。让需求始终保持清晰、简洁、有效的能力,以及适应变更的能力,对于软件企业也非常重要。虽然软件产品并非由实物零部件所构成,但从管理的角度来看,构成软件产品的模块、函数等单元和零部件是一样的。有趣的是,软件行业普遍比离散制造业更重视配置管理工作。我个人认为这可能是因为软件行业比较年轻,包袱少、过去的习惯思维的禁锢少吧。
1980~1990年代,配置管理的思想开始被引入到中国的国防工业,并且有一个专有名词:技术状态管理;但在民品工业中,人们习惯使用“配置管理”这种译法。
关于配置管理的思想和方法,最权威的机构是美国的Institute of Configuration Management(ICM,配置管理学会),他们将他们的研究成果称为“CMII”。按照CMII的观点,配置管理工作应该让企业具备两项重要的能力,即“让需求保持清晰、简洁、有效的能力”和“适应变更的能力”。按照CMII的观点,配置管理的目标是“实现最终产品相对需求的自始至终一致性,并将干预资源降低到零”(干预资源就是花费在改错型变更活动上的资源)。
现在,随着PLM软件在中国民品工业中的普及,国内从事制造业的企业中,接触过配置管理思想的人也开始多了起来。
⑶ CMMI中的的配置管理是什么
配置管理是CMMI模型中一个支撑过程域。
配置管理是指:应用技术和管理手段来识别和记录配置项的功能和物理特性,控制其变更,记录和报告变更的过程和实现状态,并检查与项目需求之间的符合度;通过配置管理可以有效的管理工作产品与工作产品之间的一致性,合理的控制和实施变更以维护对项目范围与边界条件的一致的理解。
一般CM过程描述了配置管理活动的内容、规范和方法,以建立和维护软件开发过程中各种产品的完整性和一致性。
CM使用到以下几个重要的术语:
配置项:处于配置管理之下的软件或/和硬件的集合体。这个集合体在配置管理过程中作为一个实体出现。
基线: 已经通过正式复审和批准的某规约或产品,它因此可以作为进一步开发的基础,并且只能通过正式变更控制过程来改变;基线有一组配置组成,这些配置构成了一个相对稳定的状态,不能再被任何人随意修改。
配置标识:识别产品的结构、产品的构件及其类型,为其分配唯一的标识符,并以某种形式提供对它们的存取。
控制:通过建立产品基线,控制软件产品的发布和在整个软件生命周期中对软件产品的修改。
状态统计:记录并报告构件和修改请求的状态,并收集关于产品构件的重要统计信息。
配置审计:通过第三方(例如:软件质量保证工程师)来确认产品的完整性并维护构件间的一致性,即确保产品是一个严格定义的构件集合;
配置管理员:根据本过程的规定,在本公司内部具体实施与操作本过程的人员/角色。根据实施的层级的不同,配置管理员可以区分为“产品配置管理员”和“项目配置管理员”两个角色,一般产品配置管理员是专职的,项目配置管理员有项目成员兼职。
⑷ 如何正确理解配置管理
……实际情况是,我们很难对上述这些问题给出准确的回答。究其原因,主要是由于我们配置管理工作没有做好产生的。 既然项目中有很多问题是由于配置管理没有做好导致,那么到底什么是配置管理呢?大家可能认为,任何人只要是参加过软件开发工作,就应该知道这个问题的答案,但实际上很少人能准确的描述“配置管理”这个术语的含义。随着大家对软件开发过程认识的加深,那些参加过软件开发的人已经认识到需要对开发过程中发生的事情进行控制。一旦这些事情能够得到控制,过程就能被度量和引导。出于对这种需求的认识,我们得到了配置管理的定义:软件配置管理就是如何控制软件项目的进展。在CMMI和IEEE关于配置管理的正式定义是:软件配置管理是软件工程中的一项规程,包括相关工具和应用技术(过程或方法),公司用它来管理软件资产变更。 但是上述两种定义较难于理解和记忆,笔者实际工作的经验总结发现,配置管理实际就是四个正确,即正确的人,在正确的时候,可以获取到正确文件的正确的版本。
⑸ 关于项目管理中配置管理的实现过程,配置项的知识请教以及相比版本管理的差异
你的理解更多是“产品集成”的概念,即怎么把几个产品模块或构件组合成一个产品,但这不是配置管理的概念。
配置管理:简称CM(Configuration Management的缩写),标识、控制和管理变更的一种管理活动。它控制配置项的修改和发行;记录和报告配置项的状态和变更;保证配置项的完整性、一致性和正确性;以及控制配置项的储存、装载和交付。
根据这个定义,配置管理的主要工作包括:
1)配置库的管理活动。配置库现在工具非常多,例如GIT、SVN、CVS、VSS等等。通常会根据开发所处的阶段,设立开发库、受控库与产品库。
2)标识配置项,即需要定义如何去标识配置项。配置管理中受控制的对象被称为配置项,是生命周期中创建的信息,包含程序、数据、文档,分基线配置项和非基线配置项两类。特别是你的产品最终是如何标识的,比如怎样定义V1.0.0的规则。
3)基线的管理。是一组经过正式审查并且达成一致的规范或工作产品,是下一阶段工作的基础。怎样确定、发布基线,怎样管理基本的变更。
4)配置项变更管理。可以根据不同的配置项、不同的开发周期,明确变更的管理规则。
5)配置项状态管理与配置审计 。
而产品集成是如何把一个产品逐步的从一个个模块或组件,最后组合成一个产品的过程。
1)首先产品的技术结构上要能够支持,如果模块不能相互独立和拆解,谈不上灵活的组合。
2)在开发实现上,需要有一个集成的策略,哪些先实现,哪些后实现,哪些可以先进行集成
3)需要建立 集成的环境,使开发好的模块可以在集成环境中进行调试
4)通常开发完成后,需要进行源代码的编译,并打包成一个测试包,然后装在集成环境中,进行调试,以确认各个模块之前是否可以兼容和运转,这时通常会进行测试工作。
5)如果你想进行ABC组合,或者AC组合,那么都需要进行相应的编译、打包(例如形成EXE)过程,然后在集成环境中进行联调和测试。