第9章软件项目配置管理方案课件

上传人:wz****p 文档编号:243134784 上传时间:2024-09-16 格式:PPT 页数:46 大小:1.03MB
返回 下载 相关 举报
第9章软件项目配置管理方案课件_第1页
第1页 / 共46页
第9章软件项目配置管理方案课件_第2页
第2页 / 共46页
第9章软件项目配置管理方案课件_第3页
第3页 / 共46页
点击查看更多>>
资源描述
*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,THE SCHOOL OF SOFTWARE ENGINEERING OF HUST,第,9,章 软件项目配置管理,本章内容提要,软件项目范围核实,9.1,软件项目配置管理概念,9.2,软件项目配置管理过程,9.3,配置管理组织与实施,9.4,本章小结,9.5,复习思考题,9.6,9.1,软件项目范围核实,项目范围管理,为了集中注意力于项目,满足利益相关者的期望,需要对项目范围进行管理,使得整个项目范围既无溢出,也无缩水。,关注点,合同范围,交付成果(产品定义是什么?),中西项目管理文化差异,美国人的思路:拒绝镀金,中国人的思路:锦上添花,思考:买个手机,盒子里面都有什么?,软件项目范围核实,工作分解结构(,WBS,),面向可交付成果而对项目元素的分组,它组织并定义了整个项目范围。,面向可交付物,不是面向可交付活动,不在,WBS,中的,就不在项目范围内,工作包,最低层次的,WBS,可以被分解为子项目的单元,80,小时完成原则,WBS,词典,工作组件的描述,包括:工作包,进度日期,成本预算,人员分配,软件项目范围核实,范围核实,范围核实是指利益相关者对项目范围的正式接受,包括项目最终产品和评估程序,以及这些产品的满意程度和评估的正确性。,需要审查交付物和工作产品,确保正确圆满的完成,项目如果提前终止,则需要对项目完成程度建立文档,区别范围核实与质量控制,范围核实:关心工作成果的接受,质量控制:关心工作成果的正确,Inspection,,,Review,,,Audit,,,walkthrough,本章内容提要,软件项目范围核实,9.1,软件项目配置管理概念,9.2,软件项目配置管理过程,9.3,配置管理组织与实施,9.4,本章小结,9.5,复习思考题,9.6,9.2,软件项目配置管理概念,开发人员使用错误的版本修改程序,开发人员未经授权修改代码或文档,或修改的结果不能及时反映到各个相关部分;,人员流动,交接工作不彻底造成软件关键部件遗失;,已修复的,Bug,在新版本中出现,找不到某个文件的历史版本;,无法重新编译某个历史版本,使维护工作十分困难;,因协同开发中,或者异地开发,版本变更混乱导致整个项目失败;,软件项目开发中是否遇到如下的问题?,软件项目进行中面临的一个主要问题是持续不断的变化;配置管理是有 效管理变更的手段,它贯穿着几乎软件的整个生命周期。,软件项目配置管理概念,配置管理,软件配置管理,(Software Configuration Management,,,SCM),是对产品进行标志、存储和控制,以维护其完整性、可追溯性以及正确性,它为软件开发提供了一套管理办法和活动原则。,配置管理目的,The purpose of Configuration Management (CM) is to establish and maintain the integrity of work products using configuration identification, configuration control, configuration status accounting, and configuration audits.,记录软件产品的演化过程,确保软件开发者在软件生命周期中的各个阶段都能得到精确的产品配置。,最终保证软件产品的,完整性、一致性、追朔性、可控性,软件项目配置管理概念,配置管理主要作用,版本管理,变更管理,其它(过程管理),软件项目配置管理概念,配置管理的相关概念,软件配置项,凡是纳入配置管理范畴的工作成果统称为配置项(,Configuration Item,,,CI,)。配置项主要有两大类:,属于产品组成部分的工作成果,例如源代码、需求文档、设计文档、测试用例等等。,在管理过程中产生的文档,例如各种计划、状态报告等等,这些文档虽然不是产品的组成部分,但是值得保存。,每个配置项的主要属性有:名称、标识符、文件状态、版本、作者、日期等。,所有配置项都被保存在配置库里,确保不会混淆、丢失;配置项及其历史记录反映了软件的演化过程。,软件项目配置管理概念,版本与版本控制,软件的每一个版本都是源代码、文档及数据以及相关的系统环境的一个收集,且各个版本都可能由不同的变种组成。,版本控制的目的是按照一定的规则保存配置项的所有版本,避免发生版本丢失或混淆等现象,并且可以快速准确地查找到配置项的任何版本。,配置项的状态有三种:,“,草稿,”,(,Draft,)、,“,正式发布,”,(,Released,)和,“,正在修改,”,(,Changing,)。,软件项目配置管理概念,配置项状态变迁,配置项刚建立时其状态为,“,草稿,”,;配置项通过评审(或审批)后,其状态变为,“,正式发布,”,;此后若更改配置项,必须依照,“,变更控制流程,”,执行,其状态变为,“,正在修改,”,。当配置项修改完毕并重新通过评审(或审批)时,其状态又变为,“,正式发布,”,,如此循环。,软件项目配置管理概念,版本控制规则,处于,“,草稿,”,状态的配置项的版本号格式为:,0.YZ,YZ,数字范围为,01-99,。,随着草稿的不断完善,,“,YZ,”,的取值应递增。,“,YZ,”,的初值和增幅由用户自己把握。,处于,“,正式发布,”,状态的配置项的版本号格式为:,X.Y,X,为主版本号,取值范围为,1-9,。,Y,为次版本号,取值范围为,1-9,。,配置项第一次,“,正式发布,”,时,版本号为,1.0,。,如果配置项的版本升级幅度比较小,一般只增大,Y,值,,X,值保持不变。只有当配置项版本升级幅度比较大时,才允许增大,X,值。,处于,“,正在修改,”,状态的配置项的版本号格式为:,X.YZ,配置项正在修改时,一般只增大,Z,值,,X.Y,值保持不变。,当配置项修改完毕,状态重新成为,“,正式发布,”,时,将,Z,值设置为,0,,增加,X.Y,值。,软件项目配置管理概念,版本图,V1.0,V1.2,V1.1,V1.3,V1.4,V2.0,V2.1,V1.1.1,V1.1.2,软件项目配置管理概念,配置项的版本,需求规格,V1.1,需求规格,需求规格,V1.2,需求规格,V1.3,配置项类,配置项,实例,软件项目配置管理概念,基线,基线是软件生存期各开发阶段末尾的特定点,也称为里程碑。,基线(,Baseline,)由一组配置项组成,这些配置项构成了一个相对稳定的逻辑实体。基线中的配置项被“冻结”了,不能再被随意修改。,基线通常对应于开发过程中的里程碑(,Milestone,),一个产品可以有多个基线,也可以只有一个基线。基线的主要属性有:名称、标识符、版本、日期等。,通常将交付给客户的基线称为一个“,Release”,;为内部开发用的基线则称为一个“,Build”,。,软件项目配置管理概念,配置管理委员会,配置管理委员会,(,Software Configuration Control Board,,,SCCB,),是实现有序、及时和正确处理软件配置项的基本机制。,主要负责评估变更,批准变更申请,在生存期内规范变更申请流程,对变更进行反馈,与项目管理层沟通,对于一个新的变更申请,首先应该依据配置项和基线,将相关的配置项分配给适当的,SCCB,,,SCCB,根据技术的、逻辑的、策略的、经济的和组织的角度,以及基线的层次,评估基线的变更对项目的影响,并决定是否变更。,本章内容提要,软件项目范围核实,9.1,软件项目配置管理概念,9.2,软件项目配置管理过程,9.3,配置管理组织与实施,9.4,本章小结,9.5,复习思考题,9.6,9.3,软件项目配置管理过程,配置管理基本活动,配置管理计划,配置项标志,配置项控制,状态状况报告,配置项审核,配置管理过程,配置项标识、跟踪,配置管理环境建立,基线变更管理,基线审核,配置状态统计,配置管理计划,配置管理过程围绕配置管理的,5,项活动进行,软件项目配置管理过程,配置管理计划,配置管理计划过程就是确定软件配置管理的解决方案。,配置管理计划由配置管理者负责制定,是软件配置管理规划过程的产品,并且在整个软件项目开发过程中作为配置管理活动的依据进行使用和维护。,流程通常是首先由项目经理确定配置管理者,配置管理者通过参与项目规划过程,确定配置管理的策略,并制定详细的配置管理计划,交配置管理委员会审核,配置管理委员会通过配置管理计划后交项目经理批准,发布实施。,配置管理计划首先的一个关键任务是确定要控制哪些文档。,软件项目配置管理过程,配置项标志、跟踪,一个项目通常会生成很多的过程文件,并经历不同的阶段和版本。,将软件项目中需要进行控制的部分拆分成软件配置项(,SCI,),对所有配置项都应按照相关规定建立唯一的标识,建立相互间的对应关系,进行系统的跟踪和版本控制,以确保项目过程中的产品与需求和规格的要求相一致,在引入软件配置管理工具进行管理后,这些配置项都应以一定的目录结构保存在配置库中。,最终可根据要求将配置项组合生成适用于不同应用环境的正确的软件产品评估版本,软件项目配置管理过程,配置项的拆分例子,设计规格说明书,数据设计描述,总体结构设计描述,模块设计描述,界面设计描述,界面设计,1,界面设计,2,对象描述,软件项目配置管理过程,配置项的标识例子,配置项被唯一的标识,QTD,-School,RM,SRS,-,v1.0,公司:,3,个字符,项目:最长,10,个字符,类型:最长,5,个字符,编号:最长,8,位数字,版本号:,V m.n,软件项目配置管理过程,配置项的跟踪,建立相互间的对应关系,软件项目配置管理过程,配置管理环境建立,建立配置管理库,简称配置库,。软件配置管理库是用来存储所有基线配置项及相关文件的等内容的系统,是在软件产品的整个生存期中建立和维护软件产品完整性的主要手段。,开发库,开发周期的某个阶段,存放与该阶段工作有关系的信息;开发库也称为工作空间,受控库,开发周期的某个阶段结束时,存放做为该阶段产品及其相关的信息,配置管理对其中的信息进行管理,也称配置库,产品库,存放最终产品的软件库,软件项目配置管理过程,受控操作,配置库是集中控制的文件库,提供对所存储文件的版本控制。,从受控库导出的文件自动被锁定直到文件重新被导入,一个版本号自动与新版本文件相关联。,配置库中文件不能更改,任何更改都被视为创建了一个新版本文件。,文件的所有配置管理信息和文件的内容都存储在配置库中。,软件项目配置管理过程,基线变更管理,项目基线(配置项)可能由于种种原因会发生变更,如:客户需求变化、进度变更、成本变更、产品环境变化等。,基线修改(变更)应受到控制,变更管理也称为配置控制,这种变化要经,SCCB,授权,按程序进行控制并记录基线修改的过程。,配置控制,变更请求,变更评估,变更批准,/,拒绝,变更实现,软件项目配置管理过程,变更请求,项目名称,变更申请人,提交时间,变更题目,紧急程度,变更具体内容,变更影响分析,变更确认,处理结果,签字,软件项目配置管理过程,变更评估,变更评估,软件变更分类,技术影响分析,接口影响分析,进度影响分析,预算影响分析,软件项目配置管理过程,变更批准,/,拒绝,批准,/,拒绝变更,(若批准)实施变更,决策,(若批准)验证变更,(若批准)发布、安装变更,(若批准)版本更新,软件项目配置管理过程,变更实现,变更实现,变更实现,受控基线出库,实现的测试和验证,实现被承认,受控基线入库,软件项目配置管理过程,配置审核,配置审核作为变更控制的补充手段,目的是为了确保某一变更请求已被确切实现。,配置审核主要包括两方面的内容:,配置管理活动审核,确保项目组成员的所有配置管理活动,遵循已批准的软件配置管理方针和规程,基线审核,保证基线的配置项,(SCI),正确的构造和实现,并满足功能要求,软件项目配置管理过程,配置状态统计,检查配置管理系统以及内容,检测配置项变更历史的过程称为配置状态统计。,检查配置管理系统以及内容,检测配置项变更历史,配置状态统计的范围可因项目而不同。,IEEE,标准,828-1998,规定用于计算配置状态的最小数据集包括:,被批准的配置项,配置项的所有请求的变化状态,配置项所有被批准的变更实现状态,软件项目配置管理过程,评估一个配置系统状态,变更请求的数量,变更请求的历史报告,存储量的增长,配置管理系统以及,SCCB,在运作中发生异常的次数等等,本章内容提要,软件项目范围核实,9.1,软件项目配置管理概念,9.2,软件项目配置管理过程,9.3,配置管理组织与实施,9.4,本章小结,9.5,复习思考题,9.6,9.4,配置管理组织与实施,配置管理组织,组织机构,责 任,具体职责,项目经理,负责整个软件项目的研发活动,根据,SCCB,的建议,批准配置管理的各项活动并控制它们的进程,制定和修改项目的组织结构和配置管理策略,批准、发布配置管理计划,决定项目起始基线和开发里程碑,接收并审阅,SCCB,的报告,软件配置控制 委员会(,SCCB,),管理软件基线,承担变更控制的所有责任,授权建立软件基线和标志配置,/,配置单元,代表项目经理和受到基线影响的质量保证组、配置管理组、工程组、系统测试组、合同管理组、文档支持组等小组的利益,审查和审定对软件基线的更改,审定由软件基线数据库中生产的产品和报告,软件配置小组(,SCM,小组),负责协调和实施项目,创建和管理项目的软件基线库,制定、维护和发布,SCM,计划、标准和规程,标志置于配置管理下的软件工作产品集合,管理软件基线的库的使用,更新软件基线,生成基于软件基线的产品,记录,SCM,活动,生成和发布,SCM,报告,开发人员,负责开发任务,根据组织内确定的软件配置管理计划和相关规定,按照软件配置管理工具的使用模型来完成开发任务,配置管理组织与实施,确定初始基线,由,SCCB,确定研发活动的初始基线;,配置库管理,配置人员根据软件配置管理规划设立配置库和工作空间,为执行软件配置管理做好准备,并定期执行备份和清理工作;,授权开发,开发人员按照统一的软件配置管理策略,根据获得授权的资源进行项目研发工作;,集成,系统集成人员按照项目进度集成组内开发人员的工作成果,构建系统,推进版本演进;,管理基线,SCCB,根据项目的进展情况,并适时地建立基线,批准基线变更,保证开发和维护工作有序地进行;,产品开发,系统集成人员进行产品集成,由,SCCB,批准,进行发布。,配置管理实施,主要包括的活动,配置管理组织与实施,配置管理工具,必须认识到,SCM,首先是一个方法,其次是一个过程,第三才是一系列的工具。,工具应具有的功能:,版本管理,变更管理,问题追踪,建立管理,状态统计(查询和报告),配置审核,访问控制和安全控制,配置管理组织与实施,常用配置管理工具,分为,3,个级别,第一个级别,版本控制工具,是入门级的工具。例如,,CVS,、,Visual Source Safe,。,第二个级别,项目级配置管理工具,适合管理中小型的项目,在版本管理的基础上增加变更控制、状态统计的功能。例如,ClearCase,、,ClearQuest,、,PVCS,。,第三个级别,企业级配置管理工具,在实现传统意义的配置管理的基础上又具有比较强的过程管理功能。例如,,Harvest,配置管理组织与实施,配置管理工具选择,除了配置管理工具本身的功能和特性外,经费也是一个考虑的主要因素。,选择开放源代码的自由软件,还是选择商业软件,如果选择商业软件,选择哪个档次的商业软件都取决于可获得的经费,在选择商业软件时,还要考虑工具的市场占有率以及厂商支持能力等因素,本章内容提要,软件项目范围核实,9.1,软件项目配置管理概念,9.2,软件项目配置管理过程,9.3,配置管理组织与实施,9.4,本章小结,9.5,复习思考题,9.6,9.5,本章小结,软件项目范围核实,配置管理的基本概念,配置项,基线,sccb,配置管理过程,配置管理计划的基本内容,本章内容提要,软件项目范围核实,9.1,软件项目配置管理概念,9.2,软件项目配置管理过程,9.3,配置管理组织与实施,9.4,本章小结,9.5,复习思考题,9.6,9.6,复习思考题,1.,什么是范围核实,?,范围核实的实质是什么,?,2.,什么是软件配置项?软件配置项主要有几类?分别包含哪些内容?,3.,基线的概念是什么?,4.,在实施阶段配置管理主要包括哪些活动,?,5.,在实施阶段配置管理主要包括哪些过程,?,6.,目前配置管理工具分为哪几个级别,?,人有了知识,就会具备各种分析能力,,明辨是非的能力。,所以我们要勤恳读书,广泛阅读,,古人说“书中自有黄金屋。,”通过阅读科技书籍,我们能丰富知识,,培养逻辑思维能力;,通过阅读文学作品,我们能提高文学鉴赏水平,,培养文学情趣;,通过阅读报刊,我们能增长见识,扩大自己的知识面。,有许多书籍还能培养我们的道德情操,,给我们巨大的精神力量,,鼓舞我们前进,。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!