软件配置管理课程清华大学ppt课件.ppt
《软件配置管理课程清华大学ppt课件.ppt》由会员分享,可在线阅读,更多相关《软件配置管理课程清华大学ppt课件.ppt(141页珍藏版)》请在三一办公上搜索。
1、软件项目管理,覃征 教授,课程编号:44100223,大学本科教程,2023/5/13,清华大学软件学院软件项目管理课件研制组,2,软件项目管理,什么是项目?,如何获得项目?,如何管理项目?,怎样提交项目?,结项后应做什么?,需求前延,质量检验过程,项目需求的实际验证,课程体系,2023/5/13,清华大学软件学院软件项目管理课件研制组,3,如何管理项目?(how to manage a project?),2023/5/13,清华大学软件学院软件项目管理课件研制组,4,以项目为基础(核心)以分析为手段(方法)以过程为管理(控制)以资源为质量(风险)以需求为目标(里程碑),2023/5/13,
2、清华大学软件学院软件项目管理课件研制组,5,软件配置管理(Software Configuration Management),2023/5/13,清华大学软件学院软件项目管理课件研制组,6,软件项目管理的关键技术,需求管理,项目估算,进度管理,成本管理,配置管理,风险管理,质量管理,资源管理,2023/5/13,清华大学软件学院软件项目管理课件研制组,7,课程内容,软件配置管理的必要性 软件配置管理的概念软件配置管理的目标软件配置管理的相关角色软件配置管理的功能软件配置管理的工具,2023/5/13,清华大学软件学院软件项目管理课件研制组,8,一个问题例子,2023/5/13,清华大学软件学
3、院软件项目管理课件研制组,9,结果,2023/5/13,清华大学软件学院软件项目管理课件研制组,10,另一些可能的情况,2023/5/13,清华大学软件学院软件项目管理课件研制组,11,为什么需要配置管理?,从软件产业统计数据看,2023/5/13,清华大学软件学院软件项目管理课件研制组,12,为什么需要配置管理?,从软件开发的规模看,2023/5/13,清华大学软件学院软件项目管理课件研制组,13,软件开发中的一系列普遍问题,缺乏可视性,不受控的变更,缺少监控,缺乏可跟踪性,缺乏控制,2023/5/13,清华大学软件学院软件项目管理课件研制组,14,与国外的软件开发相比,2023/5/13,
4、清华大学软件学院软件项目管理课件研制组,15,缺乏规范的管理,管理,国外,国内,2023/5/13,清华大学软件学院软件项目管理课件研制组,16,配置管理给我们带来了什么,2023/5/13,清华大学软件学院软件项目管理课件研制组,17,课程内容,软件配置管理的必要性 软件配置管理的概念软件配置管理的目标软件配置管理的相关角色软件配置管理的功能软件配置管理的工具,2023/5/13,清华大学软件学院软件项目管理课件研制组,18,配置的概念源于硬件,问题:怎样组装和卸装一辆汽车?,List of PartsC1TireC2TireC3TireC4TireC5Engine,问题:制造和维护产品需要
5、做什么?,2023/5/13,清华大学软件学院软件项目管理课件研制组,19,软件配置管理的发展,配置管理最早在美国的国防工业中被提出。1962年,美国空军发表了有关配置管理的标准-AFSCM375-1.这是第一个配置管理的标准。随着计算机程序越来越复杂和难于管理,软件项目团队越来越大和分布更广,SCM的概念被大多数软件组织接受和实施。,2023/5/13,清华大学软件学院软件项目管理课件研制组,20,软件配置管理的概念,软件配置管理SCM,通过一套工程规范,在整个软件生命周期中跟踪、记录软件,保证全部变更都记录在案,并保证软件的当前状态是已知的和可重复的。,2023/5/13,清华大学软件学院
6、软件项目管理课件研制组,21,配置管理的基本概念,配置项(Configuration Item)配置项是处于配置管理之下的软件或硬件的集合体。这个集合体在配置管理过程中作为一个实体出现。例如:项目计划,软件配置管理计划,设计文档,源代码,测试数据,项目数据,用户手册,等等。基线(Baseline)已经通过正式复审和批准的某规约或产品,它因此可以作为进一步开发的基础,并且只能通过正式的变更控制过程来改变,2023/5/13,清华大学软件学院软件项目管理课件研制组,22,配置管理的基本概念(续),绿线为时间轴红线为基线化的文档或文件,基线,2023/5/13,清华大学软件学院软件项目管理课件研制组
7、,23,配置管理的基本概念(续),配置数据库(软件制品基线库)项目建立和访问软件制品库,这个制品库主要用来对保存配置项和一些与软件配置管理相关的记录。目前比较好的配置管理工具:Clearcase(Rational),Notes/Domino(Lotus),PVCS(Merant)and VSS(Microsoft).,2023/5/13,清华大学软件学院软件项目管理课件研制组,24,配置管理的基本概念(续),配置数据库的内容包括软件产品及其开发过程中的所有的制品,2023/5/13,清华大学软件学院软件项目管理课件研制组,25,配置管理的基本概念(续),对配置数据库的操作:Check-in&C
8、heck-out一旦变更请求得到批准,配置管理员从受控库中复制配置项进行修改,这一过程被称为提取我们称复审、批准及将一项实体置于控制环境下的过程为提交,2023/5/13,清华大学软件学院软件项目管理课件研制组,26,配置管理的基本概念(续),Check-in&Check-out,2023/5/13,清华大学软件学院软件项目管理课件研制组,27,课程内容,软件配置管理的必要性 软件配置管理的概念软件配置管理的目标软件配置管理的相关角色软件配置管理的活动软件配置管理的工具,2023/5/13,清华大学软件学院软件项目管理课件研制组,28,软件配置管理的目标,目标1:软件配置管理活动被定义和计划目
9、标2:软件开发过程中的制品被识别、控制和管理目标3:对于处于配置管理下的软件制品的修改被控制目标4:与软件制品相关的项目组和成员应该被通知制品的目前状态和被修改的信息,2023/5/13,清华大学软件学院软件项目管理课件研制组,29,软件配置管理的目标,2023/5/13,清华大学软件学院软件项目管理课件研制组,30,版本控制,版本控制是所有配置管理系统的核心功能。配置管理系统的其它功能大都建立在版本控制功能之上。版本控制的对象是软件开发过程中涉及的所有文件系统对象,包括文件、目录和链接。版本控制的目的在于对软件开发进程中文件或目录的发展过程提供有效的追踪手段,保证在需要时可回到旧的版本,避免
10、文件的丢失、修改的丢失和相互覆盖。版本控制是实现团队并行开发、提高开发效率的基础。,2023/5/13,清华大学软件学院软件项目管理课件研制组,31,版本控制,1,2,3,返回,2023/5/13,清华大学软件学院软件项目管理课件研制组,32,工作空间管理,所谓工作空间,就是为了完成特定的开发任务(如开发新功能、进行软件测试、或修复BUG,等等),从版本库中选择一组正确的文件/目录的正确版本拷贝到开发人员的开发环境。举例说明:为修复一个旧版本,如REL1中的BUG,开发人员首先需要在自己的开发环境中完全重现REL1 所对应的源文件和目录结构,也就是说,需要建立一个对应于REL1 的工作空间。,
11、2023/5/13,清华大学软件学院软件项目管理课件研制组,33,工作空间管理,存在两类工作空间,一类是开发人员的私有空间,在私有空间中,开发人员可以相对独立地编写和测试自己的代码。另一类工作空间是团队共享的集成空间,该空间用于集成所有开发人员的开发成果。工作空间管理包括工作空间的创建、维护与更新、删除等工作空间应具备以下特点:稳定、一致、透明,返回,2023/5/13,清华大学软件学院软件项目管理课件研制组,34,串行:,并行开发支持,并行:,以增量开发为例,2023/5/13,清华大学软件学院软件项目管理课件研制组,35,并行开发支持,为实现并行开发,配置管理系统需要提供灵活的分支机制和工
12、作空间管理。创建分支的过程实际上就是一个建立副本的过程,针对每个发布分别建立相应的分支,分支之间具备相对的独立性,这样不同的发布就可以在各自的分支上并行进行开发,在适当的时候,分支之间可以进行合并,从而实现将Release 1 中后期开发的功能合并到Release 2 中。,2023/5/13,清华大学软件学院软件项目管理课件研制组,36,并行开发中的冲突,2023/5/13,清华大学软件学院软件项目管理课件研制组,37,解决冲突办法,返回,1,2,2023/5/13,清华大学软件学院软件项目管理课件研制组,38,过程控制,配置管理系统应该能够支持灵活的配置管理策略和配置管理流程,并实现过程自
13、动化以提高配置管理效率例如,类似于商用关系型数据库中的触发器,配置管理系统应能够提供类似的机制,定义在执行特定的配置管理操作(如检出、检入)之前或之后自动执行特定的任务从而自动化实现预定义的配置管理策略。,2023/5/13,清华大学软件学院软件项目管理课件研制组,39,过程控制实例,在版本库备份阶段对版本库进行加锁以禁止在备份过程中的版本库的修改;设置额外的安全访问机制以加强配置管理系统的安全策略;Rational 提供了一个基于最佳实现经验的流程:统一变更管理UCM(Unified Change Management),UCM 的经验来自上百个客户的数千个项目,用户可以在短时间内(不需要额
14、外的定制,或仅仅通过简单的定制)共享到其他客户在软件配置管理上的经验,一方面可以充分发挥软件配置管理带来的好处,另外节省了大量时间及成本。,返回,2023/5/13,清华大学软件学院软件项目管理课件研制组,40,异地开发支持,经济全球化趋势、企业兼并以及软件规模和复杂性的增加等因素使地理分布的多个软件开发团队进行协作开发的开发模式日益普遍。配置管理系统应该能够有效支持地理上分布的团队之间的远程协作。由于广域网带宽的限制,单一的版本库模式被证明是低效和不实用的典型的异地开发模式在每个地点都有版本库的副本,日常开发针对本地版本库进行,版本库之间有复制和同步机制。,Internet,2023/5/1
15、3,清华大学软件学院软件项目管理课件研制组,41,异地开发支持实例,IBM Rational ClearCase MultiSite 是业界比较公认的适用于地理位置分散的项目团队的高性能软件配置管理解决方案。支持跨多个地点的分布式开发:异地开发团队应该能共享开发成果复制和同步配置数据:远程网络的带宽总是相对有限的,因此如何高效、可靠地在异地之间复制和同步配置数据是异地开发和远程协作的关键。提供配置数据的本地存取:出于效率上的考虑,开发人员的日常开发工作应该是基于本地存取的方式,并应该依赖与远程网络连接。,返回,2023/5/13,清华大学软件学院软件项目管理课件研制组,42,变更请求管理,变更
16、请求管理是软件配置管理的一个重要组成部分。变更请求管理记录、跟踪和报告针对软件系统的任何变更,其核心是一个适合软件开发组织的变更处理流程。,2023/5/13,清华大学软件学院软件项目管理课件研制组,43,变更请求管理,典型的变更处理流程涉及如何提交变更请求,如何对变更请求进行复审以便决定是否实施,由谁实施,如何实施,如何确定变更请求准确实施完成等方面。变更请求管理系统应具备强大的统计、查询和报告功能,及时准确报告软件的变更现状,开发团队的工作进展和负荷,软件的质量水平以及变更的发展趋势。典型的变更请求有:新的功能需求、对已有功能的优化和改进、针对发现的缺陷的修复等。,返回,2023/5/13
17、,清华大学软件学院软件项目管理课件研制组,44,课程内容,软件配置管理的必要性 软件配置管理的概念软件配置管理的目标软件配置管理的相关角色软件配置管理的功能软件配置管理的工具,2023/5/13,清华大学软件学院软件项目管理课件研制组,45,SCM的相关角色,主要角色配置经理 模块主管 配置管理员变更控制委员会CCB,2023/5/13,清华大学软件学院软件项目管理课件研制组,46,配置经理,配置经理职能制定SCM规程,形成文档并分发给有关人员建立系统基线,包括备份规定确保对基线的变更都经过授权人员的批准确保对基线的所有变更都进行充分细致的记录,以便可以重新生成或回退确保所有基线变更都经过回归
18、测试规定解决异常问题的关注焦点,2023/5/13,清华大学软件学院软件项目管理课件研制组,47,模块主管,模块主管职能把握模块的设计为参与模块及其接口工作的人员提供建议控制模块的所有更改评审模块的变更和定期进行回归测试,确保模块的完整性,2023/5/13,清华大学软件学院软件项目管理课件研制组,48,配置管理员,项目的SCM库系统的日常管理和维护受控库的访问管理受控库基线的备份和更新新版本的辅助验证协助自受控库的生成产品SCM活动记录规定的SCM测量SCM报告的生成和发布。编制SCM的有关文档,如版本说明文档参与配置审核,2023/5/13,清华大学软件学院软件项目管理课件研制组,49,变
19、更控制委员会,变更控制委员会职能软件变更控制委员会SCCB是大中型软件项目中协调变更的集中控制机制,是对每个变更进行评审,做出相关决策的实体。它批准建立软件配置项SCI的软件基线和标识,授权SCM组从软件基线库生成产品,对SCI变更要求的处理给出建设性意见。在实际操作中,软件开发经理常常兼任系统层CCB的主席。,2023/5/13,清华大学软件学院软件项目管理课件研制组,50,变更控制委员会(续),变更控制委员会(CCB)负责决定是否对配置项进行变更,对变更请求做出决策。有时,又被称为变更控制授权委员会(CCA)。包括下列人员:软件配置管理小组代表项目组代表质量保证小组代表公司管理层代表市场代
20、表客户代表,2023/5/13,清华大学软件学院软件项目管理课件研制组,51,课程内容,软件配置管理的必要性 软件配置管理的概念软件配置管理的目标软件配置管理的相关角色软件配置管理的功能软件配置管理的工具,2023/5/13,清华大学软件学院软件项目管理课件研制组,52,配置管理过程模型,SCM的功能在软件开发过程中的体现,2023/5/13,清华大学软件学院软件项目管理课件研制组,53,软件配置管理的功能,软件配置管理的功能主要有配置标识配置控制状态报告配置审核和复审,2023/5/13,清华大学软件学院软件项目管理课件研制组,54,软件配置管理的功能表,2023/5/13,清华大学软件学院
21、软件项目管理课件研制组,55,配置标识,配置标识是配置管理的一项内容。它包括为系统选择配置项并在技术文档中记录其物理和功能特性。,2023/5/13,清华大学软件学院软件项目管理课件研制组,56,定义项目生存周期中的基线,2023/5/13,清华大学软件学院软件项目管理课件研制组,57,项 目 基 线,2023/5/13,清华大学软件学院软件项目管理课件研制组,58,项目开发周期内回顾和基线化,2023/5/13,清华大学软件学院软件项目管理课件研制组,59,典型的项目基线,返回,2023/5/13,清华大学软件学院软件项目管理课件研制组,60,标识配置项,主要任务:识别和选择要纳入配置管理的
22、配置项和其他项;建立并维护软件层次;按命名方案赋予配置项标识符;标识配置项特性,建立和更新配置项清单。,2023/5/13,清华大学软件学院软件项目管理课件研制组,61,配置项和其它项,配置项包括交付给顾客的软件产品,及用以创建这些软件产品的其它项。通常标识配置项有:管理计划(SDP,SQAP,Test plan,SCMP,etc.)需求和设计文档;用户和维护文档及手册;测试文档,测试驱动,及数据;支持软件(包括编译器和操作系统);,2023/5/13,清华大学软件学院软件项目管理课件研制组,62,配置项和其它项,数据字典和各种交叉引用资料;源代码,可执行代码包括外部构件;链接文件和其它由构建
23、(build)过程形成的产品;产品发布记录和报告,如版本描述文档;用于构建或运行产品的数据库;接口控制文档;任何用于支持产品开发和运行的项。,软件配置项列表,软件配置项列表(续),返回,2023/5/13,清华大学软件学院软件项目管理课件研制组,65,配置项的命名,按已建立的命名方案对每一配置项都给予唯一的标识给文档和代码赋予名称和版本信息 命名规则要求:唯一性、反映配置间的相互关系(可追溯性)通常采用树状命名和文本-数字命名规则。如何确定配置项如果这个文档(或制品,软件文件,硬件组件等)被丢失、损坏或者误用错误版本,那么会不会以任何形式影响到我们按时的,在预算范围内发布出正确地产品呢?,20
24、23/5/13,清华大学软件学院软件项目管理课件研制组,66,树状命名(实例),2023/5/13,清华大学软件学院软件项目管理课件研制组,67,命名方案,项目名称/项目版本编号_相应工作产品名称_文档版本编号。以下划连线“_”分开各名称域。例如:FMS_SDP_1.0.doc;FMS_SQAP_2.1.doc;FMS_ModuleA_SRS_1.1.doc;FMS_ModuleA_Detail Level Design_1.doc,2023/5/13,清华大学软件学院软件项目管理课件研制组,68,相应工作产品名称,应建立相应工作产品名称与其简称的对照表。相应工作产品名称的简称(例如 SDP,
25、SRS)不是必需的,但如果要使用,应遵守规定的标准。如下表:,2023/5/13,清华大学软件学院软件项目管理课件研制组,69,文档版本编号,起草版本的编号为 0.1,0.2,0.3,.,0.10.版本编号可以根据项目需要延伸到若干层,例如,0.1,0.1.1,0.1.1.1。一旦文档版本得以确认后,版本编号应该始自 1.0。版本编号不断变化为:1.0,1.1,1.2,.,1.10。项目可以根据需要将版本编号晋升为 2.0,2.1,2.2 等。,返回,2023/5/13,清华大学软件学院软件项目管理课件研制组,70,配置控制,在配置项的配置标识和基线正式确立之后,对其更改进行系统管制的过程。变
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 配置管理 课程 清华大学 ppt 课件
文档标签
- Lesson23课件1清华版一起
- Lesson1课件2清华版一起
- Lesson4课件2清华版一起
- Lesson2课件2清华版一起
- Lesson6课件1清华版一起
- Lesson5课件1清华版一起
- Lesson17课件2清华版一起
- Lesson2课件1清华版一起
- Lesson6课件2清华版一起
- Lesson1课件1清华版一起
- Lesson4课件1清华版一起
- Lesson23课件2清华版一起
- Lesson18课件2清华版一起
- Lesson17课件1清华版一起
- Lesson18课件1清华版一起
- 项目管理doc
- Lesson11课件1清华版一起
- Lesson8课件1清华版一起
- Lesson13课件1清华版一起
- Lesson12课件2清华版一起
链接地址:https://www.31ppt.com/p-4752561.html