个人信息
![]() |
|
| zhaoshouzhong(zhaoshouzhong) | |
| 状态: | |
| 等级: | |
| 性别:男 | 年龄: 22 |
| 城市: 保密 | |
| 签名: | |
我的相册
最新日志
| ·软件核心竞争力(2006-01-12) |
| ·微内核研究(2006-01-12) |
| ·XPDL2.0正式版发布(2005-11-22) |
| ·基于基线的版本管理和质量控制(2005-11-13) |
| ·计划管理(2005-11-13) |
我的评论
| ·访客167667(访客)/2006-11-03 |
| 小日本真过分,视中.... |
| ·访客921058/2006-07-20 |
| 你好,您研究Pro.... |
| ·访客248125/2006-03-27 |
| 同意 |
| ·访客427256/2006-02-14 |
| 加油哦! 顺便告诉你.... |
我的日历
我的链接
| 2005-11-13 12:58:03 |
| 基于基线的版本管理和质量控制 |
| 基线概念: 基线是项目储存库中每个工件版本在特定时期的一个“快照”。它提供一个正式标准,随后的工作基于此标准,并且只有经过授权后才能变更这个标准。建立一个初始基线后,以后每次对其进行的变更都将记录为一个差值,直到建成下一个基线。 参与项目的开发人员将基线所代表的各版本的目录和文件填入他们的工作区。随着工作的进展,基线将合并自从上次建立基线以来开发人员已经交付的工作。变更一旦并入基线,开发人员就采用新的基线,以与项目中的变更保持同步。调整基线将把集成工作区中的文件并入开发工作区。 建立基线的三大原因是:重现性、可追踪性和报告。 重现性是指及时返回并重新生成软件系统给定发布版的能力,或者是在项目中的早些时候重新生成开发环境的能力。可追踪性建立项目工件之间的前后继承关系。其目的在于确保设计满足要求、代码实施设计以及用正确代码编译可执行文件。报告来源于一个基线内容同另一个基线内容的比较。基线比较有助于调试并生成发布说明。 建立基线后,需要标注所有组成构件和基线,以便能够对其进行识别和重新建立。 建立基线有以下几个优点: •基线为开发工件提供了一个定点和快照。 •新项目可以从基线提供的定点之中建立。作为一个单独分支,新项目将与随后对原始项目(在主要分支上)所进行的变更进行隔离。 •各开发人员可以将建有基线的构件作为他在隔离的私有工作区中进行更新的基础。 •当认为更新不稳定或不可信时,基线为团队提供一种取消变更的方法。 您可以利用基线重新建立基于某个特定发布版本的配置,这样也可以重现已报告的错误。 备注:以上的信息摘至 RUP(Rational Unified Process,统一过程管理) 基于基线的版本管理和质量控制: 版本管理通常采用如下的方式:(1)每天用最新的程序作为进行测试和bug修正。如果开发新的功能,也是copy最新的版本作为基准版本开发、测试。(2)指定某一天的版本作为一个发布版本,然后把这个版本的文档在vss中单独建档,那么这个版本的程序就和其它版本隔离开了。 以上方法存在如下问题: (1)采用每天的版本作为基准版本开发、测试,那么谁也无法保证这个版本是否是稳定的,哪么每天的版本都处于一种不稳定状态。如果始终在一种不稳定的版本上测试、开发,那么测试效果、开发效果可想而知。 (2)第二种方法也存在不足,即无法实现版本的可跟踪性,并且这种版本的指定,缺乏一定的质量标准(即达到某种质量标准后才可以升级版本),版本的稳定系数无法确知。如果版本多了,那么开发员要同时维护多个版本的程序,既增加了开发成本,又增加了测试人员的测试成本。 (3)无法确切知道开发程序的质量水准,目前仅仅通过bug数量来衡量。这个标准比较粗,并且只是对程序开发测试结果的衡量,无法衡量开发过程、测试过程对软件质量的影响。 解决以上问题,可以以基线作为版本管理的手段,通过基线的提升进行软件质量水平的提升,每次基线的提升就是一个版本的发布。图形如下所示: ![]() 基线初始化: 把某个版本的某个日期的程序(经过充分测试,证明相对稳定的),加入版本控制,放到vss中,作为初始版本。 制订基线晋升标准: 我们可以制订几个基线,如单元测试级别、集成测试级别、系统测试级别、初步稳定级别、较为稳定级别、稳定级别等基线,以用来标示版本的稳定程度。 每个级别都要制定一定的标准,如单元测试级别,需要覆盖80%以上的单元测试,并且bug数量累计小于50个,日平均小于3个,如果达到这个标准,就可以认为需要提出基线晋升申请了。 制订基线晋升策略: 晋升时间:如开始可以每三个月晋升一次,以后每半年晋升一次,可以作为具体任务下达给各项目经理,正如同目前的版本稳定计划一样。 晋升评审:基线晋升需要提出申请,并需要准备相关资料和数据,由配置变更委员会评审。首先要由各项目经理提出负责系统的基线晋升申请,然后由研发主管提出整个系统的基线晋升申请。 不达线处理:对于按期达不到标准的,需要制订相关修正策略。 基线测试:基线评审通过后,要进行测试,证明该基线是否稳定,稳定后,正式提升基线。 程序员: 程序员,每天作的就是在原基线程序的基础上修改程序、测试、提交。为了能够通过基线晋升、他必须提高开发质量、提高bug修改成功、发掘更多的bug(在制订基线标准时,需要把程序员影响的因素考虑在内) 程序经理: 程序经理,每天都要把精力放到软件的质量监控上,指导程序修改bug,安排开发人员、测试人员测试,以及代码抽查、代码检查。如果不这样,到时候他无法完成基线晋升的任务。 测试员: 测试员必须根据基线晋升的标准全面、系统的进行测试,如果他完不成测试要求,也会影响基线的晋升。 测试经理: 根据基线晋升的任务,合理安排、组织对某个系统、模块的测试。 总之,通过基线的管理,把方方面面的人调动起来,把他们的精力由被动的作,到主动的承担起软件质量改进的责任。并且,这种质量的改进是个渐进的过程。 基线管理涉及的东西还是很多的,限于篇幅限制,无法一一列举了。基线管理是配置管理的一个很重要的内容,关于它的意义和作用,网上有好多资料介绍,因此采用基线进行版本管理是项目管理的重要组成部分。 |
| 标签: 基于基线的版本管理和质量控制 |

