基线的定义

news/2024/9/1 3:24:19
基线(Baseline)说起. 基线是软件文档或源码(或其它产出物)的一个稳定版本,它是进一步开发的基础.所以,当基线形成后,项目负责SCM的人需要通知相关人员基线已经形成,并且哪儿可以找到这基线了的版本.这个过程可被认为内部的发布.至于对外的正式发布,更是应当从基线了的版本中发布.  
      基线是项目储存库中每个工件版本在特定时期的一个“快照”。它提供一个正式标准,随后的工作基于此标准,并且只有经过授权后才能变更这个标准。建立一个初始基线后,以后每次对其进行的变更都将记录为一个差值,直到建成下一个基线。

      参与项目的开发人员将基线所代表的各版本的目录和文件填入他们的工作区。随着工作的进展,基线将合并自从上次建立基线以来开发人员已经交付的工作。变更一旦并入基线,开发人员就采用新的基线,以与项目中的变更保持同步。调整基线将把集成工作区中的文件并入开发工作区。

      建立基线的三大原因是:重现性、可追踪性和报告。

      重现性是指及时返回并重新生成软件系统给定发布版的能力,或者是在项目中的早些时候重新生成开发环境的能力。可追踪性建立项目工件之间的前后继承关系。其目的在于确保设计满足要求、代码实施设计以及用正确代码编译可执行文件。报告来源于一个基线内容同另一个基线内容的比较。基线比较有助于调试并生成发布说明。

      建立基线后,需要标注所有组成构件和基线,以便能够对其进行识别和重新建立。

      建立基线有以下几个优点:

      基线为开发工件提供了一个定点和快照。 
      新项目可以从基线提供的定点之中建立。作为一个单独分支,新项目将与随后对原始项目(在主要分支上)所进行的变更进行隔离。 
      各开发人员可以将建有基线的构件作为他在隔离的私有工作区中进行更新的基础。 
      当认为更新不稳定或不可信时,基线为团队提供一种取消变更的方法。 
      您可以利用基线重新建立基于某个特定发布版本的配置,这样也可以重现已报告的错误。 

      使用 

      定期建立基线以确保各开发人员的工作保持同步。但是,在项目过程中,应该在每次迭代结束点(次要里程碑),以及与生命周期各阶段结束点相关联的主要里程碑处定期建立基线:

      生命周期目标里程碑(先启阶段) 
      生命周期构架里程碑(精化阶段) 
      初始操作性能里程碑(构建阶段) 
      产品发布里程碑(产品化阶段)

http://www.niftyadmin.cn/n/2644040.html

相关文章

经纬度编码转换

众所周知,包括LT在内的所有导航软件的地图,就是经纬度坐标的点的集合。然后,与GPS的经纬度信号匹配,才能应用成为导航。但是由于国家政策原因,LT不能直接用经纬度定位一个目标。为此,LT用了一种变通的方法&…

MySQL锁表解决方法(转)

MySQL锁表解决方法 一、我的处理过程 1、查进程,主要是查找被锁表的那个进程的ID SHOW PROCESSLIST; 2、kill掉锁表的进程ID KILL 10866;//后面的数字即时进程的ID 网上找了些资料,了解了一下,先分享一下: 二、mysql的锁表问题 …

关于准系统,镭波,地球人等等其他牌子的机器介绍和外星人的比较

2019独角兽企业重金招聘Python工程师标准>>> 现在越来越多的人开始关注alienware,也许是因为他无与伦比的个性外形,花哨浮夸的弥红灯,又或者是君临天下,不可一世的彪悍性能。当然由于alienware过高的价格,导…

grep sed awk find的用法归纳

0 正则表达式的基础 ^ 行首标识 $ 篇尾标识或行尾标识 . 代表任意一个字符 ? 代表前趋字符的一次出现 * 代表0个或多个前趋字符出现 [1-9] 代表一个属于1-9的字符 [^1-9] 代表一个不…

ViewStack 的自动创建子项策略 creationPolicy

和UIComponent的states不同,ViewStack默认的创建策略creationPolicy“auto”,并非跳转到某一页后,才创建INavigatorContent子项。实际上,在ViewStack 被addChild到舞台显示列表,initialize方法被调用时,Vie…

VMP分析一:寄存器赋值分析

源码: mov eax,0x123456 进入VM前寄存器和堆栈的值 EAX AAAAAAAA ECX CCCCCCCC EDX DDDDDDDD EBX BBBBBBBB ESP 0018FEE8 EBP EEEEEEEE ESI 99999999 EDI 88888888 EIP 00427079 TestVmp_.00427079 C 0 ES 002B 32位 0(FFFFFFFF) P 1 CS 0023 32位 0(FFFFFFFF) A …

sqlite简明教程

本文的主要目的是作为一个入门级教程,教你一些如何使用PySqlite来操作 Sqite 的一些基本的语句,更详细的还要去参考想应的文档以及编写相应的测试程序。希望本文对你有帮助。 我以前的Blog sqlite一个轻巧的数据库 PySqlite的主页地址:http…

Linux 文件按大小排序

Linux 某个目录下的文件按大小排序 1. df -lh 2. du -s /usr/* | sort -rn 这是按字节排序 3. du -sh /usr/* | sort -rn 这是按兆(M)来排序 4.选出排在前面的10个 du -s /usr/* | sort -rn | head 5.选出排在后面的10个 du -s /usr/* | sort -rn | tail…