版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、结束软件项目管理软件项目管理清华大学清华大学 出版社(出版社( 2012)第第9章章 配置管理配置管理渤海大学渤海大学 信息科学与技术学院信息科学与技术学院任永昌任永昌 20122012年年7 7月月结束7采用软件配置管理系统能够解决很多现实问采用软件配置管理系统能够解决很多现实问题:题:u 对于程序员,对于程序员,可以安全地保护每天的劳动成果,可以安全地保护每天的劳动成果,同时对有关配置结构有比较清晰的概念,也可以获同时对有关配置结构有比较清晰的概念,也可以获取到欲得到的配置信息;取到欲得到的配置信息;u 对于项目经理,对于项目经理,能够方便地协调项目进展过程能够方便地协调项目进展过程中各成
2、员之间的开发,提高整个开发团队的协同工中各成员之间的开发,提高整个开发团队的协同工作能力;作能力;u 对于公司领导,对于公司领导,可以了解整个组织的当前状态,可以了解整个组织的当前状态,对组织的全局实施控制,以保证产品及时交付给用对组织的全局实施控制,以保证产品及时交付给用户,并且对用户问题做出适当的反应。户,并且对用户问题做出适当的反应。结束79.1 配置管理概述配置管理概述软件配置管理:软件配置管理:是通过技术或行政手段,对软是通过技术或行政手段,对软件产品及其开发过程和生命周期进行控制、规范的件产品及其开发过程和生命周期进行控制、规范的一系列措施,目的是记录软件产品的演化过程,最一系列措
3、施,目的是记录软件产品的演化过程,最大限度地减少错误和混乱,保证软件项目工作产品大限度地减少错误和混乱,保证软件项目工作产品在整个生命周期内的完整性。在整个生命周期内的完整性。结束79.1 配置管理概述配置管理概述9.1.1 配置管理需求分析配置管理需求分析问题在实际问题在实际开发中表现为:开发中表现为:项目组成员沟通困项目组成员沟通困难、软件重用率低难、软件重用率低下、开发人员各自下、开发人员各自为政、代码冗余度为政、代码冗余度高、文档不健全。高、文档不健全。造成的后果造成的后果是:是:数据丢失、开数据丢失、开发周期漫长、产品发周期漫长、产品可靠性差、软件维可靠性差、软件维护困难、用户抱怨护
4、困难、用户抱怨使用不便、项目风使用不便、项目风险增加。险增加。结束79.1 配置管理概述配置管理概述9.1.2 配置管理的作用配置管理的作用(1)缩短开发周期。)缩短开发周期。(2)减少施工费用。)减少施工费用。(3)代码对象库的建立。)代码对象库的建立。(4)建立业务及经验库。)建立业务及经验库。(5)量化工作量考核。)量化工作量考核。(6)规范测试。)规范测试。(7)加强协调与沟通。)加强协调与沟通。结束79.2 配置管理的相关概念配置管理的相关概念9.2.1 软件配置项软件配置项软件配置:软件配置:是指一个软件产品,在软件生命周期各是指一个软件产品,在软件生命周期各个阶段,产生的各种形式
5、和各种版本的文档、程序及其个阶段,产生的各种形式和各种版本的文档、程序及其数据的集合。数据的集合。软件配置项:软件配置项:就是该集合中的一个元素,可以是与就是该集合中的一个元素,可以是与合同、计划、开发过程、软件产品等有关的文档、数据、合同、计划、开发过程、软件产品等有关的文档、数据、源程序、目标代码、可执行代码,也可以是软件开发工源程序、目标代码、可执行代码,也可以是软件开发工具、管理工具、第三方代码等。具、管理工具、第三方代码等。软件配置项是软件配置管理的对象。软件配置项是软件配置管理的对象。结束79.2 配置管理的相关概念配置管理的相关概念9.2.1 软件配置项软件配置项1. 软件配置项
6、的状态软件配置项的状态沿图中沿图中实线箭头实线箭头所指方向的状态变化是允许的,所指方向的状态变化是允许的,虚线箭虚线箭头头表示为了验证或检测某些功能或性能而重新执行相应的测试,表示为了验证或检测某些功能或性能而重新执行相应的测试,一般不沿虚线变化。一般不沿虚线变化。结束79.2 配置管理的相关概念配置管理的相关概念9.2.1 软件配置项软件配置项2. 2. 软件配置项的版本软件配置项的版本配置项和配置项的版本类似于面向对象的类和实例。配置项和配置项的版本类似于面向对象的类和实例。配置配置项可以看成是类,版本看成是类的实例。项可以看成是类,版本看成是类的实例。配置项的不同版本是从最原始的配置项逐
7、渐演变而来的配置项的不同版本是从最原始的配置项逐渐演变而来的,尽管每个都不相同,但具有相关性。一般不沿虚线变化。尽管每个都不相同,但具有相关性。一般不沿虚线变化。结束79.2 配置管理的相关概念配置管理的相关概念9.2.1 软件配置项软件配置项3. 3. 软件配置项的分类软件配置项的分类结束79.2 配置管理的相关概念配置管理的相关概念9.2.2 基线基线1 .1 . 基 线 的基 线 的定义定义已 经 正 式 通已 经 正 式 通过复审和批准的过复审和批准的某规约或产品,某规约或产品,它因此可作为进它因此可作为进一步开发的基础,一步开发的基础,并且只能通过正并且只能通过正式的变化控制过式的变
8、化控制过程改变程改变。基线提供了软件生命周期中各个开发阶段基线提供了软件生命周期中各个开发阶段的一个特定点,的一个特定点,作用是把开发阶段工作的划分作用是把开发阶段工作的划分更加明确化,使本来连续的工作在这些点上断更加明确化,使本来连续的工作在这些点上断开,便于检查与肯定阶段成果。开,便于检查与肯定阶段成果。结束79.2 配置管理的相关概念配置管理的相关概念9.2.2 基线基线2.2.建立基线的原因建立基线的原因(1)重现性。)重现性。 (2)可追踪性。)可追踪性。 (3)报告。)报告。3.3.建立基线的优点建立基线的优点u基线为开发部件提供了一个定点和快照;基线为开发部件提供了一个定点和快照
9、;u新项目可以从基线提供的定点处建立;新项目可以从基线提供的定点处建立;u作为在隔离的私有工作区中进行更新的基础;作为在隔离的私有工作区中进行更新的基础;u为团队提供一种取消变更的方法;为团队提供一种取消变更的方法;u重新建立基于某个特定发布版本的配置;重新建立基于某个特定发布版本的配置;u确保各开发人员的工作保持同步。确保各开发人员的工作保持同步。结束79.2 配置管理的相关概念配置管理的相关概念9.2.3 版本版本版本是某一配置项已标识了的实例。一个系统版本就是一个系统实版本是某一配置项已标识了的实例。一个系统版本就是一个系统实例。例。版本演变的两种方式:版本演变的两种方式: 串行演变:串
10、行演变:所形成的每一个新版本都是由当前最新版本演变而来的。所形成的每一个新版本都是由当前最新版本演变而来的。 并行演变:并行演变:采用一对多的方式进行。采用一对多的方式进行。两种版本演变形式通常结合在一起,形成更为普通带分支的版本图,两种版本演变形式通常结合在一起,形成更为普通带分支的版本图,也称为版本树。也称为版本树。结束79.2 配置管理的相关概念配置管理的相关概念9.2.4 配置数据库配置数据库用于记录与配置有关的所有信息,帮助评估因系统变用于记录与配置有关的所有信息,帮助评估因系统变更带来的影响,并提供有关配置管理过程的管理信息。除更带来的影响,并提供有关配置管理过程的管理信息。除了定
11、义配置数据库的模式以外,还要定义记录和检索项目了定义配置数据库的模式以外,还要定义记录和检索项目信息的规程,这是配置管理规划过程的一部分。信息的规程,这是配置管理规划过程的一部分。理想情况下,配置数据库与版本管理系统集成到一起,理想情况下,配置数据库与版本管理系统集成到一起,版本管理系统负责存储和管理正式项目文档。版本管理系统负责存储和管理正式项目文档。配置数据库存储配置项的有关信息并在版本管理系统配置数据库存储配置项的有关信息并在版本管理系统或文件存储中索引它们的名字。或文件存储中索引它们的名字。结束79.3 配置管理的组织配置管理的组织u软件配置控制委员会。软件配置控制委员会。拥有最高的权
12、力,有权最终处理拥有最高的权力,有权最终处理SCM问题;问题;u项目经理。项目经理。协调软件配置控制委员会和配置管理其它组织之间的工协调软件配置控制委员会和配置管理其它组织之间的工作,批准配置管理的各项活动、控制配置管理的进程;作,批准配置管理的各项活动、控制配置管理的进程;u配置管理组。配置管理组。全面负责执行软件配置管理活动;全面负责执行软件配置管理活动;u系统管理员。系统管理员。负责建立和维护软件配置管理活动的软件和硬件支持负责建立和维护软件配置管理活动的软件和硬件支持环境,维护系统安全。环境,维护系统安全。结束79.4 配置管理计划配置管理计划配 置 管配 置 管理计划的主理计划的主要
13、内容包括:要内容包括:要执行的配要执行的配置管理活动置管理活动、所需的组织所需的组织及其各自的及其各自的职责、职责、配置配置管理活动的管理活动的里程碑里程碑等。等。结束79.5 配置管理的主要活动配置管理的主要活动软件配置管理流程中的活动可归划到五个主要活动:软件配置管理流程中的活动可归划到五个主要活动:u 配置标识配置标识在系统演化过程中表示中间的软件产品;在系统演化过程中表示中间的软件产品;u 版本控制版本控制记录每个配置项的发展历史,并控制基线的生成;记录每个配置项的发展历史,并控制基线的生成;u 变更管理变更管理在整个生命周期中控制中间软件产品的变化;在整个生命周期中控制中间软件产品的
14、变化;u 状态报告状态报告记录和报告软件的变化过程;记录和报告软件的变化过程;u 配置审核配置审核用于保证软件产品是依照需求、标准和合同开发出来的。用于保证软件产品是依照需求、标准和合同开发出来的。结束79.5 配置管理的主要活动配置管理的主要活动9.5.1 配置标识配置标识配置标识是软件生命周期中产生的所有文档的总称。配置标识是软件生命周期中产生的所有文档的总称。软件配置项包括名字、描述、资源列表和实际存在体四个部分。软件配置项包括名字、描述、资源列表和实际存在体四个部分。配置标识管理是一个配置项的选择、命名和描述的过程。配置标识管理是一个配置项的选择、命名和描述的过程。1. 1.配置标识的
15、活动配置标识的活动(1)选择配置项。)选择配置项。(2)制订配置项标识方案。)制订配置项标识方案。(3)制订存取方案。)制订存取方案。2.2.配置标识的配置标识的对象对象u各种功能规格说明和技术规格说明;各种功能规格说明和技术规格说明;u所有受到功能和技术规格影响的开所有受到功能和技术规格影响的开发工具;发工具;u所有与其它软件项目和硬件的接口;所有与其它软件项目和硬件的接口;u所有与软件项目相关的文档和计算所有与软件项目相关的文档和计算机文件。机文件。结束79.5 配置管理的主要活动配置管理的主要活动9.5.1 配置标识配置标识3.3.配置标识实例配置标识实例表示方法为:表示方法为:“项目名
16、称项目名称-所属阶段所属阶段-产品名称产品名称-版版本号本号”。其中版本号的约定如下:以其中版本号的约定如下:以“V”开头,版本号开头,版本号可分三小节,可分三小节,主版本号、次版本号和内部版本号主版本号、次版本号和内部版本号,每,每小节以小节以“.”间隔。间隔。例如:例如:“教务管理系统教务管理系统-软件设计软件设计-详细设计说明详细设计说明书书-V2.2.1”。结束79.5 配置管理的主要活动配置管理的主要活动9.5.2 版本控制版本控制负责为配置库中的所有元素自动分配版本标识,并保负责为配置库中的所有元素自动分配版本标识,并保证版本命名的惟一性。目的是便于对版本变化加以区分、证版本命名的
17、惟一性。目的是便于对版本变化加以区分、检索和跟踪,以表明各个版本之间的关系。检索和跟踪,以表明各个版本之间的关系。1. 1.检入检出控制检入检出控制同步控制的实质是版本的检入检出控制。同步控制的实质是版本的检入检出控制。u 检入检入就是把软件配置项从用户的工作环境存入到软件配置就是把软件配置项从用户的工作环境存入到软件配置库的过程;库的过程;u 检出检出就是把软件配置项从软件配置库中取出的过程。检入就是把软件配置项从软件配置库中取出的过程。检入是检出的逆过程。是检出的逆过程。同步控制可用来确保由不同的人并发执行的修改不会产生混同步控制可用来确保由不同的人并发执行的修改不会产生混乱。乱。结束79
18、.5 配置管理的主要活动配置管理的主要活动9.5.2 版本控制版本控制2.2.分支与合并分支与合并分支与合并的结果分支与合并的结果就是形成具有图结构的就是形成具有图结构的版本历史,即版本图。版本历史,即版本图。分支的目的:分支的目的:u 代表独立的开发路径;代表独立的开发路径;u 代表组件的不同变体;代表组件的不同变体;u 代表实验性的开发;代表实验性的开发;u 适应两个开发人员并适应两个开发人员并发地修改同一组件的情况。发地修改同一组件的情况。合并的内容:合并的内容:u 两个文件版本内容的实际合并;两个文件版本内容的实际合并;u 在版本图上作为版本历史的一部分进行反映。在版本图上作为版本历史
19、的一部分进行反映。3.3.历史记录历史记录有助于对软件配置项进行审核,有助于追踪问有助于对软件配置项进行审核,有助于追踪问题的来源。题的来源。结束79.5 配置管理的主要活动配置管理的主要活动9.5.3 变更控制变更控制在整个软件生命周期中控制软件的变化,建立一套对软件配置项在整个软件生命周期中控制软件的变化,建立一套对软件配置项的修改进行有意识的控制机制,的修改进行有意识的控制机制,防止在软件开发过程中因盲目修改防止在软件开发过程中因盲目修改造成的混乱,造成的混乱,主要是进行基线管理以及对基线更改控制过程的处理。主要是进行基线管理以及对基线更改控制过程的处理。1. 1.变更的波及变更的波及面
20、面由于变更的内容、由于变更的内容、变更的幅度都会直变更的幅度都会直接影响到整个项目,接影响到整个项目,所以时时刻刻需要所以时时刻刻需要考虑到变更的波及考虑到变更的波及面。面。结束79.5 配置管理的主要活动配置管理的主要活动9.5.3 变更控制变更控制2.2.变更的变更的种类种类(1)功能变更。)功能变更。(2)错误修补变更。)错误修补变更。3.3.变更的控制变更的控制过程过程 变更请求变更请求 变更评估变更评估 变更批准或拒绝变更批准或拒绝 变更实现变更实现结束79.5 配置管理的主要活动配置管理的主要活动9.5.3 变更控制变更控制3.3.变更的控制过程变更的控制过程-(1 1)变更请求)
21、变更请求变更请求人确定变更是否需要进行,填写变更请求表,审核确定准变更请求人确定变更是否需要进行,填写变更请求表,审核确定准确无误后,提交给项目经理。确无误后,提交给项目经理。3.3.变更的控制过程变更的控制过程-(2 2)变更评估)变更评估验证变更申请表的完整性、正确性和清晰性,对变更申请表进行初验证变更申请表的完整性、正确性和清晰性,对变更申请表进行初步分析,根据成本步分析,根据成本/ /效益和涉及到的技术等因素,判断变更实施的必要性效益和涉及到的技术等因素,判断变更实施的必要性并估计并估计变更方案。变更方案。结束79.5 配置管理的主要活动配置管理的主要活动9.5.3 变更控制变更控制3
22、.3.变更的控制过程变更的控制过程-(3 3)变更批准或)变更批准或拒绝拒绝n批准变更;批准变更;n拒绝变更;拒绝变更;n部分变更;部分变更;n延迟变更或待定。延迟变更或待定。3.3.变更的控制过程变更的控制过程-(4 4)变更实现)变更实现结束79.5 配置管理的主要活动配置管理的主要活动9.5.4 状态报告状态报告1. 1.状态报告状态报告根据配置项操作数据库中的记录,向管理者报告软件开发活动根据配置项操作数据库中的记录,向管理者报告软件开发活动的进展情况的进展情况任务:任务:记录、报告整个生命周期中软件的状态,用以跟踪对已记录、报告整个生命周期中软件的状态,用以跟踪对已建立基线的需求、源
23、代码、数据以及相关文档的更改、文件的形式建立基线的需求、源代码、数据以及相关文档的更改、文件的形式等,表明每一软件版本的内容,以及形成该版本的所有更改,提供等,表明每一软件版本的内容,以及形成该版本的所有更改,提供相关人员了解,以加强配置管理工作。相关人员了解,以加强配置管理工作。结束79.5 配置管理的主要活动配置管理的主要活动9.5.4 状态报告状态报告2.2.状态统计状态统计是配置状态报告的是配置状态报告的组成部分之一,用于在组成部分之一,用于在产品开发过程中,基于产品开发过程中,基于已发现并修复了的缺陷已发现并修复了的缺陷类型、数量、频率和严类型、数量、频率和严重性等方面来说明产品重性
24、等方面来说明产品的状态。的状态。3.3.状态报告的主要内状态报告的主要内容容u 基准线和发布标识符;基准线和发布标识符;u 为构建系统或使用软件的最为构建系统或使用软件的最新版本;新版本;u 对系统进行的变更次数;对系统进行的变更次数;u 基准线和发布版本的数量;基准线和发布版本的数量;u 配置项的使用和变动情况;配置项的使用和变动情况;u 对基准线和发布版本的比较对基准线和发布版本的比较结果。结果。结束79.5 配置管理的主要活动配置管理的主要活动9.5.5 配置审核配置审核1. 1.审核时机审核时机u实施新的配置管理数据库(实施新的配置管理数据库(CMDBCMDB)后;)后;u对软件基础架
25、构实施重大变更前后;对软件基础架构实施重大变更前后;u在一项软件发布和安装被导入实际环境之前;在一项软件发布和安装被导入实际环境之前;u灾难恢复后或事故恢复正常后;灾难恢复后或事故恢复正常后;u发现未经授权的发现未经授权的CICI后;后;u任何其它必须的时候。任何其它必须的时候。2.2.审核内容审核内容n 配置活动审核配置活动审核n 基线审核基线审核根据需求规格说明或软件合同检验软件产品配置,验证每个根据需求规格说明或软件合同检验软件产品配置,验证每个软件配置项的软件配置项的正确性、一致性、完整性、有效性、可追踪性正确性、一致性、完整性、有效性、可追踪性,以判定系统是否满足需求。以判定系统是否
26、满足需求。结束79.6 配置管理工具配置管理工具配置管理工具是配置管理的自动化平配置管理工具是配置管理的自动化平台,是配置管理具体实施的基础。一套功台,是配置管理具体实施的基础。一套功能强大、实施容易、管理方便的配置管理能强大、实施容易、管理方便的配置管理工具,可以提高配置管理的实施效果。工具,可以提高配置管理的实施效果。目前配置管理工具大致分目前配置管理工具大致分3 3类:类:(1 1)版本控制工具。)版本控制工具。(2 2)项目级配置管理工具。)项目级配置管理工具。(3 3)企业级配置管理工具。)企业级配置管理工具。结束79.6 配置管理工具配置管理工具9.6.1 配置管理工具的选择标准配
27、置管理工具的选择标准(1 1)提供基线化管理,对于基线有明显的标识。)提供基线化管理,对于基线有明显的标识。(2 2)操作简单、流程便利。)操作简单、流程便利。(3 3)提供完善的过程管理。)提供完善的过程管理。(4 4)提供灵活多样的配置状态报告。)提供灵活多样的配置状态报告。结束79.6 配置管理工具配置管理工具9.6.2 主要配置管理工具简介主要配置管理工具简介1. CVS:CVS(Concurrent Version System)是一个基于)是一个基于TCP/IP协议的版本控制系统,是用于多用户并行开发的版本协议的版本控制系统,是用于多用户并行开发的版本控制工具,也是控制工具,也是Open Source界最重要的开发工具之一。界最重要的开发工具之一。2. VSS:VSS能够维护一个文件的多个版本,包括从不同能够维护一个文件的多个版本,包括从不同版本之间修改的记录,解决了软件开发面临的版本管理问题,版本之间修改的记录,解决了软件开发面临的版本管理问题,可以有效地帮助项目开发负责人对项目程序进行管理。可以有效地帮助项目开发负责人对项目程序进行管理。3. PVCS:PVCS(Project Version Control System)是美)是美国国Merant公司的产品,可通过对软件开发过程中产生的变更公司的产品,可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 慢性肾病高钾血症管理
- 《GB-T 8569-2009固体化学肥料包装》专题研究报告
- 《GBT 30924.1-2016 塑料 乙烯 - 乙酸乙烯酯(EVAC)模塑和挤出材料 第 1 部分:命名系统和分类基础》专题研究报告
- 汽车消费贷款抵押担保合同
- 中式卤味制作技师(初级)考试试卷及答案
- 主持人岗位招聘考试试卷及答案
- 2025年壬基酚聚氧乙烯醚合作协议书
- 经常口腔溃疡的饮食防治
- 胆囊炎的饮食指导
- 员工离职管理培训课件
- 2025中原农业保险股份有限公司招聘67人备考考试试题及答案解析
- 2025年度河北省机关事业单位技术工人晋升高级工考试练习题附正确答案
- 交通运输布局及其对区域发展的影响课时教案
- 2025年中医院护理核心制度理论知识考核试题及答案
- GB/T 17981-2025空气调节系统经济运行
- 比亚迪储能项目介绍
- 2025年9月广东深圳市福田区事业单位选聘博士11人备考题库附答案
- 糖尿病足溃疡VSD治疗创面氧自由基清除方案
- 《公司治理》期末考试复习题库(含答案)
- 学堂在线 大数据与城市规划 期末考试答案
- 中国历史地理智慧树知到期末考试答案章节答案2024年北京大学
评论
0/150
提交评论