【教学课件】第9讲软件配置管理.ppt
《【教学课件】第9讲软件配置管理.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第9讲软件配置管理.ppt(80页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第9讲讲 软件配置管理软件配置管理毛新军毛新军http:/ 计算机科学与技术系计算机科学与技术系602教研室教研室 0731-(45)73649软件项目管理课程软件项目管理课程 之之Copyright Xinjun Mao 20051讲授内容讲授内容1.软件项目案例2.什么是软件配置管理?3.如何进行软件配置管理?4.软件配置管理计划5.CMM对软件配置管理的要求6.软件配置管理工具7.小结Copyright Xinjun Mao 20052项目案例项目案例案例角色和人物小王:软件项目负责人小王:软件项目负责人老王:公司技术老总老王:公司技术老总开发小组:小李,老赵,小田,小谢开发小组:小李
2、,老赵,小田,小谢Copyright Xinjun Mao 20053要软件产品进行配置管理要软件产品进行配置管理(1/2)n软件项目已经成功实施了8个月,项目组已经进入编码阶段,在此过程中产生了许多的软件产品到了编码阶段已经有了近百个软件产品(包括技术文档、管理文档、程序模块等),项目组在管理这些产品方面感到繁琐和困难此时,用户提出要变更需求,软件项目组同意用户的需求变更请求,为此,修改了软件需求规格说明书项目组将更改后、新的软件需求规格说明书交给了软件设计小组,设计小组为此更改了设计。更改后的软件设计涉及诸多的软件模块和数据设计,为此导致许多的模块和源程序代码和可执行代码发生了变化由于变化
3、的范围太大,项目组很难清晰地了解哪些作了变化、做了什么样的变化Copyright Xinjun Mao 20054要软件产品进行配置管理要软件产品进行配置管理(2/2)由此带来的新的问题是,项目组未能及时将这些变化通知给相关、受影响的小组和人员,从而出现软件产品之间的不一致(设计与编码不一致),所开发的产品没有完全符合和满足用户的需求对于某些模块更为糟糕,因为这些模块已经经过了多达67次的修改,而且每次修改都有意义,从而产生了不同版本的软件模块设计,由于没有相关的有效管理措施,开发人员已经很难清晰、有效识别、区分这些软件模块,出现许多开发人员都有该模块的诸多版本与此相对应的是,该模块的源代码也
4、有许多版本在实际组装软件时,项目组不能有效提取出所需的软件产品,共同构成可运行的软件系统Copyright Xinjun Mao 20055案例提示我们案例提示我们n软件开发过程中会产生大量软件产品(包括文档、源代码和数据等),且这些产品之间存在关联关系n同一软件产品,也会发生变更从而产生许多版本n软件开发小组必须清晰的知道会有哪些产品、这些产品会有哪些不同的形式和版本n开发小组必须清晰的知道如何将产品的变更通知给受影响的小组n如果不能有效的了解软件产品及其变更,开发小组很难组装这些软件产品,从而得到所需的软件产品Copyright Xinjun Mao 20056项目管理问题项目管理问题n什
5、么是软件配置?n软件配置需要关心哪些方面的问题?n如何进行软件配置?n如何撰写软件配置管理计划?n有哪些软件工具支持软件配置活动Copyright Xinjun Mao 20057讲授内容讲授内容1.软件项目案例2.什么是软件配置管理?3.如何进行软件配置管理?4.软件配置管理计划5.CMM对软件配置管理的要求6.软件配置管理工具7.小结Copyright Xinjun Mao 20058什么是软件配置管理?什么是软件配置管理?n软件配置项SCI:Software Configuration Itemn基线Baselinen软件配置管理Software Configuration Manage
6、mentCopyright Xinjun Mao 20059软件配置项软件配置项(1/4)软件概软件概要设计要设计文档文档模块模块模块模块1 1数据设数据设计文档计文档SRS详细设详细设计文档计文档模块模块模块模块n n模块模块模块模块mmCopyright Xinjun Mao 200510软件配置项软件配置项(2/4)n什么是SCI?软件生命周期内产生、需进行配置管理的各种工作产品n文档、程序、数据、标准和规约nSCI的形式技术文档n软件需求规格说明书n软件概要设计规格说明书n软件测试计划n用户手册,Copyright Xinjun Mao 200511软件配置项软件配置项(3/4)管理文
7、档n软件开发计划n软件配置管理计划n软件质量保证计划,程序代码(源和可执行)n模块1的源程序代码(例如,A.Java)n模块1的可执行代码(例如,A.class)n组件(程序包,例如,code.dll)n可执行文件(例如,word.exe)数据n配置文件(例如,a.ini)n数据文件(例如,a.pot),Copyright Xinjun Mao 200512软件配置项软件配置项(4/4)nSCI的描述唯一的命名和编号n如SRS属性n版本(1.0)n类型(文档)关系n与软件概要设计文档、数据设计文档关联Copyright Xinjun Mao 200513基线基线(1/4)n什么是基线?已经通过
8、正式复审复审和批准批准的软件产品、标准或规约,它们可以作为进一步开发的基础,并且只能通过正式的变化控制过程才允许对它们进只能通过正式的变化控制过程才允许对它们进行变更行变更如软件需求规格说明书经过评审后,发现的问题已经得到纠正,用户和项目组双方认可,并且正式批准,就可纳入基线Copyright Xinjun Mao 200514基线基线(2/4)n为什么需要基线?变化不可避免软件产品的变化不利于软件开发需要控制变化、软件产品保持一定程度的稳定n以此作为软件开发的基础n不允许随便、非正式更改n因此相对稳定n要改,须经评估和认可,要进行控制Copyright Xinjun Mao 200515基线
9、基线(3/4)软件产品典型基线SRS软件设计软件设计文档文档源代码源代码源代码源代码测试计划测试计划测试计划测试计划/报告报告报告报告Copyright Xinjun Mao 200516基线基线(4/4)n作为基线的SCICopyright Xinjun Mao 200517软件配置管理软件配置管理(1/5)n什么是软件配置管理在软件的整个生命周期中,对SCI进行以下工作n系统地控制SCI的标识、存储、更动和发放n记录、报告其状态n验证SCI的正确性和一致性n对上述工作的审计Copyright Xinjun Mao 200518软件配置管理软件配置管理(2/5)n为什么需要SCM软件产品的易
10、改性与可控性修改很可能引入新的错误,使结构变坏牵一发动全身(影响域)团队开发时,多人并发存取需加控制(存取控制)多应用开发时,同一软件的不同版本可能对应于不同应用,对此需加控制(版本控制)应对软件更动状态予以追踪,并及时向有关人员通报状态情况如果软件产品不能自始至终地保持清晰、互相一致,造成混乱、丢失,那么该软件系统会因无法使用而不得不报废Copyright Xinjun Mao 200519软件配置管理软件配置管理(3/5)nSCM要解决的问题如何标识SCI和管理SCI的诸多版本,以使得变化可以高效地进行如何在软件发布给用户之前和之后控制变化谁负责批准变化,并确定其优先级如何保证变化被恰当地
11、进行采用什么机制告知有关人员已经实行了变化Copyright Xinjun Mao 200520软件配置管理软件配置管理(4/5)n软件配置管理的任务SCI的标识nSCI的识别:有哪些SCI?nSCI的描述:分别是什么SCI?版本控制n每个SCI有哪些版本n控制版本的演化变化控制n如何用对SCI的变化配置审计状态报告Copyright Xinjun Mao 200521软件配置管理软件配置管理(5/5)nSCM的目标必须使每个SCI保持与相关SCI的可追踪性(正确性)和完备性使相关的SCI之间满足文实相符,文文一致以确保SCI的有效性以清晰、明了、易管理的方式标识每个SCI,使其满足:可视性、
12、唯一标识性使最终软件产品的正确地生成、改进和维护成为可能,保证最终软件产品的正确性Copyright Xinjun Mao 200522讲授内容讲授内容1.软件项目案例2.什么是软件配置管理?3.如何进行软件配置管理?4.软件配置管理计划5.CMM对软件配置管理的要求6.软件配置管理工具7.小结Copyright Xinjun Mao 200523如何进行软件配置管理如何进行软件配置管理?1.SCI标识2.版本控制3.变更控制4.软件配置审计5.状态报告6.谁来实施软件配置管理Copyright Xinjun Mao 2005243.1 SCI标识标识nSCI标识的任务n文档类SCI的命名和属
13、性描述n程序和数据类SCI的命名和属性描述n描述关联关系Copyright Xinjun Mao 200525SCI标识的任务标识的任务(1/2)n任务识别有哪些SCI详细描述每个SCIn识别SCI的要求完整,不要有遗漏系统,包括所有的技术文档、必须的管理文档、所有的程序(源码和可执行)、所有的数据Copyright Xinjun Mao 200526SCI标识的任务标识的任务(2/2)nSCI描述的要求唯一和直观命名,在本项目中是唯一标识的,直觉意思明确,便于望文生义,有利于对该SCI的状态控制,便于增删、修改;描述属性,便于进一步详细了解SCI,如n类型、创建者、时间、修改者,描述与其他S
14、CI的关系,便于追踪和管理其影响Copyright Xinjun Mao 200527文档类文档类SCI的命名和属性描述的命名和属性描述(1/3)n文档编号命名(样板例子)形式:项目名称或者编号:NUDTLIB子系统名称或者编号:2 or ReaderAdmin文档类型:RAAD-结构设计结构设计CR-更动报告更动报告DD-详细设计详细设计DP-开发计划开发计划FA-可行性分析可行性分析IC-接口控制接口控制IG -安装手册安装手册QA-质量保证质量保证RA-需求分析需求分析SL-源码列表源码列表SS-系统规格说明书系统规格说明书TP-测试计划测试计划TR-测试报告测试报告UM-用户手册序号用
15、户手册序号Copyright Xinjun Mao 200528文档类文档类SCI的命名和属性描述的命名和属性描述(2/3)序号:1,表示本文档在同类型中的排序版本号:1修订号:00Copyright Xinjun Mao 200529文档类文档类SCI的命名和属性描述的命名和属性描述(3/3)n文档属性描述:编写人:例如,张三质检人:例如,李四审核人:例如,王五批准人:例如,刘八发布版本:例如,1.00发布日期:例如,2002/12/14变化情况Copyright Xinjun Mao 200530代码类代码类SCI的命名和属性描述的命名和属性描述n描述要体现其功能和所在的结构层次代码SCI
16、的编号命名n形式:子系统编号.组件编号.模块编号.表示功能涵义的字符串n例如,3.32.324.Stack名称:Stack功能:堆栈语言:Java版本:1.0开发者:Dr.Mao开发时间:2002/12/30修改者:修改时间:Copyright Xinjun Mao 200531描述关联关系描述关联关系n为了便于更动控制时进行影响域评估,必须描述SCI之间的关联关系建立关联矩阵关联列表Copyright Xinjun Mao 2005323.2 版本控制版本控制(1/2)n为什么SCI会有不同的版本软件因纠错/改进/完善/扩充会导致同一SCI有多个版本此外,在同时从事多项目开发时,同一SCI的
17、不同版本可能应用于不同的项目SCM应有一种手段使开发者能以正确的、一致的和可重复的方式恢复和构造任一最终的软件产品版本。这就是所谓的“版本控制”。Copyright Xinjun Mao 200533版本控制版本控制(2/2)nSCI的版本演化一般可采用存储版本树的办法来进行版本控制Copyright Xinjun Mao 2005343.3 变更控制变更控制(1/3)n变化不可避免,无控制的变化将导致混乱n无论何人、何时欲修改配置库中的SCI均应履行正规更动手续提出书面申请更动控制组审核和评估(必要性/可行性/影响域/资源)同意,则授权执行指定修改;结论也可能是不同意或暂缓Copyright
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学课件 教学 课件 软件 配置管理
限制150内