IT公司软件配置管理课件.ppt





《IT公司软件配置管理课件.ppt》由会员分享,可在线阅读,更多相关《IT公司软件配置管理课件.ppt(98页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、CompanyLOGO软件配置管理软件配置管理尹继刚尹继刚2007-4-5软件配置管理软件配置管理什么是软件配置管理什么是软件配置管理 软件配置管理软件配置管理(Software Configuration Management,SCM)是指通过执行版本控制、变更)是指通过执行版本控制、变更控制等规程,以及使用合适的配置管理软件,来保控制等规程,以及使用合适的配置管理软件,来保证所有配置项的完整性和可跟踪性。证所有配置项的完整性和可跟踪性。配置管理是对配置管理是对工作成果的一种有效保护。工作成果的一种有效保护。v软件配置管理软件配置管理(SCM)(SCM)是贯穿于整个软件过程中的是贯穿于整个软
2、件过程中的保护保护性活动性活动。vSCMSCM目的是保证软件项目生成的产品在软件生命周期目的是保证软件项目生成的产品在软件生命周期中的中的完整性和一致性完整性和一致性.v因为变化可能发生在任意时间,因为变化可能发生在任意时间,SCM SCM 活动被设计来活动被设计来:(1)(1)标识变化标识变化;(2)(2)控制变化控制变化;(3)(3)保证变化被适当地实现保证变化被适当地实现;(4)(4)向其他可能有兴趣的人员报告变化。向其他可能有兴趣的人员报告变化。v软件配置管理使改进变化可以更容易地被适应,并软件配置管理使改进变化可以更容易地被适应,并减少当变化必须发生时所需花费的工作量减少当变化必须发
3、生时所需花费的工作量。v明确地区分明确地区分软件维护软件维护和和软件配置管理软件配置管理是很重要的。是很重要的。v维护维护是发生在软件已经被交付给客户,并投入运行是发生在软件已经被交付给客户,并投入运行后的一系列软件工程活动,而后的一系列软件工程活动,而软件配置管理软件配置管理则是当则是当软件项目开始时就开始,并且仅当软件退出运行后软件项目开始时就开始,并且仅当软件退出运行后才终止的一组跟踪和控制活动。才终止的一组跟踪和控制活动。配置管理与配置管理与任何一位项目成员任何一位项目成员都有关系,因都有关系,因为每个人都会产生工作成果。为每个人都会产生工作成果。配置管理是否有成效取决于三个要素:配置
4、管理是否有成效取决于三个要素:人、人、规范、工具规范、工具 l l随着计算机软件的发展,软件开发已由最初随着计算机软件的发展,软件开发已由最初随着计算机软件的发展,软件开发已由最初随着计算机软件的发展,软件开发已由最初的的的的“程序设计阶段程序设计阶段程序设计阶段程序设计阶段”经历了经历了经历了经历了“软件系统阶段软件系统阶段软件系统阶段软件系统阶段”进而演变为后来的进而演变为后来的进而演变为后来的进而演变为后来的“软件工程阶段软件工程阶段软件工程阶段软件工程阶段”,软,软,软,软件的复杂性日益增大。此时,如果仍然把软件的复杂性日益增大。此时,如果仍然把软件的复杂性日益增大。此时,如果仍然把软
5、件的复杂性日益增大。此时,如果仍然把软件看成一个单一的个体,就无法解决所面临件看成一个单一的个体,就无法解决所面临件看成一个单一的个体,就无法解决所面临件看成一个单一的个体,就无法解决所面临的问题,于是配置的概念逐渐引入软件领域,的问题,于是配置的概念逐渐引入软件领域,的问题,于是配置的概念逐渐引入软件领域,的问题,于是配置的概念逐渐引入软件领域,人们越来越重视软件配置的管理工作。人们越来越重视软件配置的管理工作。人们越来越重视软件配置的管理工作。人们越来越重视软件配置的管理工作。l l不懂软件项目的配置管理,就不懂软件开发不懂软件项目的配置管理,就不懂软件开发不懂软件项目的配置管理,就不懂软
6、件开发不懂软件项目的配置管理,就不懂软件开发管理管理管理管理l l不对软件项目进行配置管理,就没有进行软不对软件项目进行配置管理,就没有进行软不对软件项目进行配置管理,就没有进行软不对软件项目进行配置管理,就没有进行软件项目开发管理件项目开发管理件项目开发管理件项目开发管理软件配置管理是软件配置管理是CMM2CMM2中中6 6个关键过程域的第个关键过程域的第6 6个关键域个关键域。CMM2CMM2认为,认为,SCM SCM 的目的是为了建的目的是为了建立和维护软件开发过程中各种制品的完整性立和维护软件开发过程中各种制品的完整性和一致性,包括以下内容:和一致性,包括以下内容:对软件产品配置的标志
7、和识别对软件产品配置的标志和识别系统地控制对处于配置管理下的各种软系统地控制对处于配置管理下的各种软件制品的修改和更新件制品的修改和更新维护软件开发过程中的各种制品的一致维护软件开发过程中的各种制品的一致性和可跟踪性性和可跟踪性CMM2的配置管理概念的配置管理概念 SCM 的目标的目标v目标目标1:软件配置管理活动被定义和计划软件配置管理活动被定义和计划v目标目标2:软件开发过程中的制品被识别、控制软件开发过程中的制品被识别、控制和管理和管理v目标目标3:对于处于配置管理下的软件制品的修对于处于配置管理下的软件制品的修改被控制改被控制v目标目标4:与软件制品相关的项目组和成员应该与软件制品相关
8、的项目组和成员应该被通知制品的目前状态和被修改的信息被通知制品的目前状态和被修改的信息 SCM SCM 的目标的目标从对配置目的的定义可以看出,从对配置目的的定义可以看出,从对配置目的的定义可以看出,从对配置目的的定义可以看出,CMM2CMM2CMM2CMM2的配置管的配置管的配置管的配置管理理理理应包括这样一些活动:标识给定时间点的软应包括这样一些活动:标识给定时间点的软应包括这样一些活动:标识给定时间点的软应包括这样一些活动:标识给定时间点的软件配置(即所选择的工作产品及其描述),系件配置(即所选择的工作产品及其描述),系件配置(即所选择的工作产品及其描述),系件配置(即所选择的工作产品及
9、其描述),系统地控制这些配置的更改,并在软件生命周期统地控制这些配置的更改,并在软件生命周期统地控制这些配置的更改,并在软件生命周期统地控制这些配置的更改,并在软件生命周期中保持这些配置的完整性和可跟踪性。中保持这些配置的完整性和可跟踪性。中保持这些配置的完整性和可跟踪性。中保持这些配置的完整性和可跟踪性。CMM2 CMM2 CMM2 CMM2认为,受控于配置管理的工作产品,包认为,受控于配置管理的工作产品,包认为,受控于配置管理的工作产品,包认为,受控于配置管理的工作产品,包括交付给用户的软件产品(如:代码等),以括交付给用户的软件产品(如:代码等),以括交付给用户的软件产品(如:代码等),
10、以括交付给用户的软件产品(如:代码等),以及生成软件产品所需要的有关项(如:项目管及生成软件产品所需要的有关项(如:项目管及生成软件产品所需要的有关项(如:项目管及生成软件产品所需要的有关项(如:项目管理文件)。理文件)。理文件)。理文件)。CMM2CMM2CMM2CMM2的配置管理活动最主要的内容是的配置管理活动最主要的内容是的配置管理活动最主要的内容是的配置管理活动最主要的内容是:建立:建立:建立:建立软件基线库,该库存储开发的软件基线。通过软件基线库,该库存储开发的软件基线。通过软件基线库,该库存储开发的软件基线。通过软件基线库,该库存储开发的软件基线。通过软件配置管理的更改控制和配置审
11、核功能,系软件配置管理的更改控制和配置审核功能,系软件配置管理的更改控制和配置审核功能,系软件配置管理的更改控制和配置审核功能,系统地控制基线变更和由软件基线库生成的软件统地控制基线变更和由软件基线库生成的软件统地控制基线变更和由软件基线库生成的软件统地控制基线变更和由软件基线库生成的软件产品版本。产品版本。产品版本。产品版本。要达到要达到 CMM CMM 规定的规定的 SCMSCM要求所需具备的能力要求所需具备的能力:1.1.具有对软件基线产品有具有对软件基线产品有管理管理权限的权限的组织组织已经已经建立,例如:软件配置管理委员会;建立,例如:软件配置管理委员会;2.2.协调和实现协调和实现
12、软件软件配置管理配置管理的组织已经建立;的组织已经建立;3.3.为进行软件配置管理所需要的各项为进行软件配置管理所需要的各项资源资源已经已经分配;分配;4.4.软件软件配置管理配置管理组织里的成员已经接受了软件组织里的成员已经接受了软件配置目标、流程、方法方面的配置目标、流程、方法方面的培训培训;5.5.软件软件项目组项目组或是其他的相关的部门经过或是其他的相关的部门经过培训培训,可以执行他们的软件配置管理活动;可以执行他们的软件配置管理活动;CMM CMM 中对中对SCM SCM 规定的活动规定的活动1.1.根据文档化的流程,根据文档化的流程,项目软件配置管理计划项目软件配置管理计划已准备完
13、毕;已准备完毕;2.2.文档化的文档化的已获批准已获批准的软件配置管理计划可用的软件配置管理计划可用作以后软件配置管理活动的基础;作以后软件配置管理活动的基础;3.3.软件配置管理库软件配置管理库已经创建,并可用作进入基已经创建,并可用作进入基线的软件制品的存贮库;线的软件制品的存贮库;4.4.处于软件配置管理下的软件制品处于软件配置管理下的软件制品被标志和识被标志和识别别;5.5.对于配置项的对于配置项的变更请求和问题报告变更请求和问题报告被初始化、被初始化、计划、评审、批准并根据文化化的流程对其计划、评审、批准并根据文化化的流程对其进行跟踪;进行跟踪;6.对于对于进入基线的制品的修改进入基
14、线的制品的修改必须遵循文档化的必须遵循文档化的流程;流程;7.发布发布的产品必须从软件配置库中取出,并且产的产品必须从软件配置库中取出,并且产品发布的流程须依照文档化的流程和规定;品发布的流程须依照文档化的流程和规定;8.根据文档化的流程和规定,根据文档化的流程和规定,软件配置项的状态软件配置项的状态被记录和跟踪;被记录和跟踪;9.记录软件配置管理活动和软件基线内容的记录软件配置管理活动和软件基线内容的报告报告被建立,并通知受到被建立,并通知受到影响影响的项目组和个人;的项目组和个人;10.根据文档化的流程进行软件制品根据文档化的流程进行软件制品基线的评审基线的评审;CMM CMM 中对中对S
15、CM SCM 规定的活动规定的活动组织规定和相关责任组织规定和相关责任v项目级配置管理项目级配置管理项目配置经理项目配置经理(Project Configuration Manager)与软件配置管理计划与软件配置管理计划变更控制委员会变更控制委员会(Change Control Board)v组织级配置管理组织级配置管理组织配置管理库组织配置管理库(Organizational Configuration Management Cell)1.负责项目完成后的软件配置管理活动负责项目完成后的软件配置管理活动2.管理组织级的文档管理组织级的文档IEEEIEEE标准标准729-1983729-19
16、83就配置管理的内容进行了规范的定义:就配置管理的内容进行了规范的定义:(1 1)标识:标识:识别产品的结构、产品的构件及其类型,为其分配唯一的识别产品的结构、产品的构件及其类型,为其分配唯一的标识符,并以某种形式提供对它们的存取。标识符,并以某种形式提供对它们的存取。(2 2)控制:控制:通过建立产品基线,控制软件产品的发布和在整个软件生通过建立产品基线,控制软件产品的发布和在整个软件生命周期中对软件产品的修改。例如,它将解决哪些修改会在该产品的命周期中对软件产品的修改。例如,它将解决哪些修改会在该产品的最新版本中实现的问题。最新版本中实现的问题。(3 3)状态统计:状态统计:记录并报告构件
17、和修改请求的状态,并收集关于产品记录并报告构件和修改请求的状态,并收集关于产品构件的重要统计信息。例如,它将解决修改这个错误会影响多少个文构件的重要统计信息。例如,它将解决修改这个错误会影响多少个文件的问题。件的问题。(4 4)审计和审查:审计和审查:确认产品的完整性并维护构件间的一致性,即确保确认产品的完整性并维护构件间的一致性,即确保产品是一个严格定义的构件集合。例如,它将解决目前发布的产品所产品是一个严格定义的构件集合。例如,它将解决目前发布的产品所用的文件的版本是否正确的问题。用的文件的版本是否正确的问题。(5 5)生产:生产:对产品的生产进行优化管理。它将解决最新发布的产品应对产品的
18、生产进行优化管理。它将解决最新发布的产品应由哪些版本的文件和工具来生成的问题。由哪些版本的文件和工具来生成的问题。(6 6)过程管理:过程管理:确保软件组织的规程、方针和软件周期得以正确贯彻确保软件组织的规程、方针和软件周期得以正确贯彻执行。它将解决要交付给用户的产品是否经过测试和质量检查的问题。执行。它将解决要交付给用户的产品是否经过测试和质量检查的问题。(7 7)小组协作:小组协作:控制开发统一产品的多个开发人员之间的协作。例如,控制开发统一产品的多个开发人员之间的协作。例如,它将解决是否所有本地程序员所做的修改都已被加入到新版本的产品它将解决是否所有本地程序员所做的修改都已被加入到新版本
19、的产品中的问题。中的问题。IEEEIEEE的配置管理定义的配置管理定义 CMM2CMM2的定义比较抽象,的定义比较抽象,IEEEIEEE的定义比较具体。结合的定义比较具体。结合各体系的定义和要求,我们下面具体来讨论配置管各体系的定义和要求,我们下面具体来讨论配置管理的概念。理的概念。配置管理功能概述配置管理功能概述 配配置置标标识识或或者者又又称称为为配配置置需需求求,包包括括标标识识软软件件系系统统的的结结构构,标标识识独独立立部部件件,并并使使它它们们是是可可访访问问的的。配配置置标标识识的的目目的的,是是在在整整个个生生命命周周期期中中标标识识系系统统各各部部件件并并提提供供对对软软件件
20、过过程程及及其其软软件件产产品品的的跟跟踪踪能能力力。它它回回答答:什么是受控的?什么是受控的?配配置置变变更更控控制制包包括括在在软软件件生生命命周周期期中中控控制制软软件件产产品品的的发发布布和和变变更更,目目的的是是建建立立确确保保软软件件产产品品质质量量的的机机制制。它它回回答答:受受控控产产品品怎怎样样变变更更?谁谁控制变更?何时接受,恢复,验证变更?控制变更?何时接受,恢复,验证变更?配配置置状状态态统统计计包包括括记记录录和和报报告告变变更更过过程程,目目标标是是不不间间断断记记录录所所有有基基线线项项的的状状态态和和历历史史,并并进进行行维维护护,它它解解决决以以下下问问题题:
21、系系统统已已经经做做了了什什么么变变更更?此此问问题题将将会会对对多多少少个个文文件件产产生生影影响响?配配置置变变更更控控制制是是针针对对软软件件产产品品,状状态态统统计计针针对对软软件件过过程程。因因此此,二二者者的的统统一一就就是是对对软软件件开开发发(产品、过程)的变更控制。(产品、过程)的变更控制。配配置置审审核核将将验验证证软软件件产产品品的的构构造造是是否否符符合合需需求求、标标准准、或或合合同同的的要要求求,目目的的是是根根据据SCM的的过过程程和和程程序序,验验证证所所有有的的软软件件产产品品已已经经产产生生并并有有正正确确标标识识和和描描述述,所所有有的的变变更更需需求求都
22、都已已解解决决。它它回回答答:系系统统和和需需求求是是否否吻合?是否所有变更都是在版本控制下?吻合?是否所有变更都是在版本控制下?SCMSCM的四大功能领域的四大功能领域SCMSCM从从应应用用层层次次上上可可以以从从低低到到高高分分为为三三级级:版版本本控控制制、以以开开发者为中心、过程驱动。发者为中心、过程驱动。版版本本控控制制主主要要应应用用于于个个人人独独立立开开发发或或小小组组开开发发,它它可可以以控控制制任任何何文文件件的的版版本本、实实现现分分支支和和归归并并功功能能、进进行行文文本本比比较较、标标记记注注释释和和版版本本报报告告信信息息,主主要要工工具具有有MSMS的的Visu
23、al Visual SourceSafeSourceSafe及及Intersolv PVCSIntersolv PVCS。以以开开发发者者为为中中心心主主要要应应用用于于部部门门级级开开发发,它它可可用用于于软软件件维维护护、不不断断增增加加的的开开发发任任务务、并并行行开开发发、QAQA及及测测试试,它它面面向向大大型型团团队队、利利于于交交流流、能能最最大大限限度度地地利利用用人人力力资资源源,主主要要工具为工具为Rational ClearCaseRational ClearCase及及MKS Source IntegrityMKS Source Integrity。过过程程驱驱动动主主
24、要要使使用用于于企企业业级级开开发发,着着重重解解决决新新的的工工具具引引入入、ITIT审审核核、管管理理报报告告、复复杂杂的的生生命命周周期期、应应用用工工具具包包、集集成成解解决决方方案案、资资料料库库等等问问题题,实实现现真真正正规规范范的的团团队队开开发发,主主要工具为要工具为Platinum Technology CCC/HarvestPlatinum Technology CCC/Harvest。SCMSCM的三个应用层次的三个应用层次 SCM SCM 中的专业术语中的专业术语v 配置配置(Configuration)与与配置项配置项(Configuration Item)v 在在
25、软件开发过程中生成各种制品的总和叫做这个软件开发过程中生成各种制品的总和叫做这个项目的软件配置项目的软件配置 Roger S.Pressman,1997计算机程序,包括源代码和可执行程序计算机程序,包括源代码和可执行程序与计算机程序相对应的各种文档与计算机程序相对应的各种文档计算机数据,包括计算机程序中包含的数据和计算机数据,包括计算机程序中包含的数据和系统初始化数据系统初始化数据v基线基线项目开发过程的制品经过正式评审并被相关人员项目开发过程的制品经过正式评审并被相关人员一致同意,可以作为以后项目开发的基础一致同意,可以作为以后项目开发的基础。对已。对已经确定为基线的制品的修改必须要通过正式
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IT 公司 软件 配置管理 课件

限制150内