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