卷号 卷内编号 密级
重庆华日软件有限公司
华日软件公司,2005
基线策略指南
Version 2.0
作者:周隆基
第1 页
I
文档信息
标题:基线策略指南 作者: 卢瑛
创建日期: 2004-8-10
上次更新日期: 11/11/2005 10:40:00 AM 版本:2.0
部门名称: SEPG
修订文档历史记录
日期
2004-8-10 2005-11-11 II
版本 1.0 2.0 说明 建立
增加了2.6基线的划分 作者 卢瑛 周隆基
第2 页
目录
1. 简介.........................................................................................................................................................4 1.1 1.2 1.3 1.4 1.5
目的.................................................................................................................................................4 范围.................................................................................................................................................4 定义、首字母缩写词和缩略语.......................................................................................................4 参考资料.........................................................................................................................................4 文档概述.........................................................................................................................................4
2. 基线概述.................................................................................................................................................4 2.1 定义.................................................................................................................................................4 2.2 角色.................................................................................................................................................4 2.3 基线建立的意义..............................................................................................................................4
原因.........................................................................................................................................4 2.3.1
优点.........................................................................................................................................4 2.3.2
2.4 基线类型.........................................................................................................................................5
基线类型.................................................................................................................................5 2.4.1
2.4.1.1 功能基线.................................................................................................................................5 2.4.1.2 分配基线.................................................................................................................................5 2.4.1.3 产品基线.................................................................................................................................5 2.5 基线内容.........................................................................................................................................5 2.6 基线的划分.....................................................................................................................................6 3. 配置活动.................................................................................................................................................7 3.1 建立基线.........................................................................................................................................7 3.1.1 目的.........................................................................................................................................7 3.1.2 配置输入.................................................................................................................................7 3.1.3 角色.........................................................................................................................................7 3.1.4 活动.........................................................................................................................................8 3.1.5 输出.........................................................................................................................................8 3.2 升级基线.........................................................................................................................................8 3.2.1 目的.........................................................................................................................................8 3.2.2 输入.........................................................................................................................................8 3.2.3 角色.........................................................................................................................................8 3.2.4 活动.........................................................................................................................................8 3.2.5 输出.........................................................................................................................................8 3.3 典型的配置项和基线库内容...........................................................................................................8 4. 基线管理.................................................................................................................................................9 4.1 基线变更.........................................................................................................................................9 4.1.1 变更机构.................................................................................................................................9 4.1.2 基线变更项.............................................................................................................................9 4.1.3 基线变更流程.........................................................................................................................9 4.1.4 基线变更评估.........................................................................................................................9 4.2 基线验证.......................................................................................................................................10
第3 页
III
基线策略指南
1. 简介
1.1 目的
为开发人员提供一个完整的基线概念; 指导配置管理员如何去建立和维护基线。
1.2 范围
本文档适用于公司所有立项的研发项目。
1.3 定义、首字母缩写词和缩略语 1.4 参考资料
RUP
1.5 文档概述
本文档总共分为五部分内容:
第一部分:简介,主要描述了本文档的目的、范围、定义和缩写、所引用的参考资料等。 第二部分:基线概述,介绍基线的定义、基线建立的意义、基线的类型、基线的内容等。 第三部分:角色,描述了基线的建立、升级等活动涉及的角色。 第四部分:基线管理,介绍了基线的变更和验证的过程。
2. 基线概述
2.1 定义
基线是配置库中每个工件版本在特定时期的一个快照。基线提供一个正式的标准,随后的工作基于此标准,并且只有经过授权后才能变更这个标准。建立一个初始基线后,以后每次对其进行的变更都将记录为一个差值,直到建成下一个基线。
2.2 角色
配置管理员:建立基线,维护基线,管理基线,并对基线进行升级,并对评审的基线发布到项目相关工程组; CCB:评审基线。
2.3 基线建立的意义
2.3.1
原因
1) 重现性:及时返回并重新生成软件系统给定发布版的能力,或者是在项目中的早些时候重
新生成开发环境的能力。
2) 可追踪性:建立项目工件之间的前后继承关系。目的是确保设计满足要求、代码实施设计
以及用正确代码编译可执行文件。
3) 报告:来源于一个基线内容同另外一个基线内容的比较,有助于调试并生成发布说明。
2.3.2 优点
1) 基线为开发工件提供了一个定点和快照。
2) 新项目可以从基线提供的定点之中建立。作为一个单独分支,新项目将与随后对原始项目
(在主要分支上)所进行的变更进行隔离。
3) 各开发人员可以将建有基线的构件作为他在隔离的私有工作区中进行更新的基础。 4) 当认为更新不稳定或不可信时,基线为团队提供一种取消变更的方法。
5) 您可以利用基线重新建立基于某个特定发布版本的配置,这样也可以重现已报告的错误。
第 4 页
2.4 基线类型
2.4.1
基线类型
在系统分析和软件定义阶段结束时,经过正式评审和批准的系统设计规格说明中对被开发软件系统的规格说明;
经过项目委托单位和项目承办单位双方签字同意的协议书或合同中所规定的对被开发软件系统的规格说明;
由下级申请及上级同意或直接由上级下达的项目任务书中所规定的对待开发软件系统的规格说明。
2.4.1.1 功能基线
2.4.1.2 分配基线
在软件需求分析阶段结束时,经正式评审和批准的软件需求规格说明。
2.4.1.3 产品基线
在软件组装与系统测试阶段结束时,经正式评审和批准的有关所开发的软件产品的全部配置项的规格说明。
2.5 基线内容
对于每一个基线,必须描述它以下内容:
1) 每个基线的项(包括应交付的文档和程序); 2) 与每个基线有关的评审与批准事项以及验收标准; 3) 在建立基线的过程中用户和开发人员的参与情况。
例如在产品基线中,要定义的元素可以包括:
l 产品的名称和命名规则。 l 产品标识编号。
l 对每个新交付的版本,要给出版本交付号、新修改的描述、修改交付的方法、对支持
软件的修改要求以及有关文档的修改要求。 l 安装说明。
l 已知的缺陷和故障。 l 软件媒体和媒体标识。
第 5 页
2.6 基线的划分
因为开发活动采用不同的软件生命周期模型,而基线是软件生命周期各开发阶段末尾的特定点,也称为里程碑,因此,在项目过程中,在每次阶段结束点(次要里程碑),以及与生命周期各阶段结束相关联的主要里程碑处定期建立基线。
各阶段结束点相关联的主要里程碑处建立的基线的主要有:
l 第一阶段基线:如HRUP的生命周期目标里程碑(先启阶段),阶段基线内容包含功能基
线、分配基线;瀑布模型的需求分析阶段,阶段基线内容包含功能基线、分配基线。 l 第二阶段基线:如HRUP的生命周期目标里程碑(精化阶段),阶段基线内容包含功能基
线、分配基线,产品基线;瀑布模型的设计阶段(概要设计和详细设计),阶段基线内容包含功能基线、分配基线。
l 第三阶段基线:如HRUP的生命周期目标里程碑(构建阶段),阶段基线内容包含功能基
线、分配基线,产品基线;瀑布模型的编码/单元测试阶段,阶段基线内容包含功能基线、分配基线。
l 第四阶段基线:如HRUP的生命周期目标里程碑(产品化阶段),阶段基线内容包含功能
基线、分配基线,产品基线;瀑布模型的集成、系统测试阶段,阶段基线内容包含功能基线、分配基线,产品基线。
HRUP软件生命周期模型的基线类型关联图如下:
(1)先启阶段基线
在软件设计先启阶段结束时,经正式评审和批准的软件开发计划、开发案例等。 (2)精化阶段基线
在软件设计精化阶段结束时,经正式评审和批准的软件需求说明书、数据库设计说明书、软件设计报告、系统界面原型、架构说明书、精华阶段的迭代开发计划、模块开发卷宗、单元测试用例、单元测试报告以及工作版本等。 (3)构建阶段基线
在软件设计构建阶段结束时,经正式评审和批准的构建阶段的迭代开发计划、模块开发卷宗、单元测试用例、单元测试报告以及工作版本等。 (4)产品化阶段基线
在软件产品化阶段结束时,经正式评审和批准的有关所开发的软件产品的全部配置项的规格说明。
第 6 页
瀑布模型的基线类型关联图如下:
(1)需求基线
在软件需求分析阶段结束时,经正式评审和批准的软件需求规格说明。 (2)设计基线
在软件设计阶段结束时,经正式评审和批准的软件概要设计说明书、数据库设计说明书和详细设计说明书等。 (3)编码基线
在软件详细设计阶段结束时,经正式评审和批准的工作版本以及单元测试用例等。 (4)测试基线
在软件系统和集成测试阶段结束时,经正式评审和批准的工作版本等。
3. 配置活动
3.1 建立基线
基线在指定的里程碑处创建。
3.1.1 3.1.2
目的
确保在给定时间点记录并归档保存所有的已开发工件,这些工件将是进一步产品开发的基础。
配置输入
工作单(已经完成) 工作区已经集成 项目配置库
已经区分是否创建:
l 子系统基线,包括已在一个或多个子系统中修改的所有版本的文件和目录。 l 系统基线,包括所有子系统中某单个版本的所有文件和目录。
3.1.3 角色
集成员、配置管理员
第 7 页
3.1.4 活动
基线的优良备选对象是在版本控制下一起开发、集成和发布的文件目录集。基线确定了元素的一个版本,且只确定一个版本。
由在整个项目的各个子系统上工作的团队交付的基线组成的多组基线构成复合基线。即每个团队都交付一个基线。
持续不断地构建可执行产品是迭代开发方法的一个组成部分。应该将基线视为包含后续开发的必要工件并且不断前进的开发前沿。因此,基线肯定应该在每次迭代结束时建立。
3.1.5 输出
集成工作区中构建并建立基线。
3.2 升级基线
3.2.1
目的
是确保基线(将来自不同项目成员和开发团队的单独测试构件组合在一起用作产品)是加注了“标记的”,以便反映基线可能已经达到的软件成熟度、稳定性和质量级别。这一作出适当标记的基线版本在晋升后即可用于后续迭代中的发布版或进一步的开发。
3.2.2 3.2.3 3.2.4
输入
集成工作区中建立的基线、项目配置库
角色
集成员、配置管理员
活动
选定核实的基线标记
基线有助于项目团队保持工作的同步。此外还为项目资产提供了最及时的视图。因此,需要按照项目的 CM 策略定期建立基线。
3.2.5 输出
集成工作区中构建并晋升的基线。 更新项目储存库。
3.3 典型的配置项和基线库内容
初始库:包括项目开始时可供利用的配置项
已有的源代码(如可以利用且需要)
已有的软件文档(如可以利用且有需要)
已有的测试计划和测试数据(如可利用且有需要)
合同或建议书
环境配置项:包括对稳定的开发环境或维护环境所必需的配置项
编译器、操作系统、编辑程序、实用程序
团组所用的工具(项目管理工具,进展表,测试工具,缺陷追踪等)
第三方库
文档工具(字处理器、电子表格等)
定义库:在需求规格说明工作结束时生成的
需求规格说明 项目计划
设计标准与设计准则 验收测试计划
设计库:在设计工作结束时所产生的
第 8 页
系统设计说明书 程序规格说明 数据库设计
编码标准、用户接口标准、测试标准
系统测试计划 用户手册
构造库:在编码和段单元测试结束时生成的
源代码 目标代码 单元测试数据
测试库:系统测试完成后生成的
系统测试数据 运行手册和安装手册
维护库:验收测试、安装和培训等之后
将有变更的所有配置项
4. 基线管理
基线管理适用于很多种不同类型的基线,包括管理个体开发人员的工作空间,基线变更评估,管理开发阶段末完成的软件版本,以及管理曾经发布给用户的产品的版本。
基线的变更是指在一个软件版本的开发周期内对基线配置项的变更,主要包括基线的应用和更新等活动。
确保当子系统达到指定的成熟度后为其建立基线,然后就可进行发布或在随后的项目迭代和/或其他项目中重复使用。
一般情况下,基线与项目中的里程碑保持同步。按照基线的分类可是需求基线、设计基线、编码基线、版本基线等等。
4.1 基线变更
4.1.1
变更机构
在配置管理与变更控制活动中,基线的变更是通过CCB进行的。
CCB负责审核与批准基线的变更,同时有责任将批准的变更传达到组织其他部门,从而使软件开发更加可视化和有形化。
基线在建立时,按照角色职责的分工,须经CCB同意并以正式的将该基线的标识和作用范围通知系统集成员,由后者负责执行;基线一旦划定,由该基线控制的各配置项的历史版本均处于锁定或严格受控状态,任何对基线位置的变更请求都必须按变更控制流程,提交CCB批准,然后由系统集成员执行。
基线评估可以通过软件配置管理工具具有的基线管理功能进行基线的评估管理。
4.1.2 基线变更项
基线变更所涉及的操作主要包括基线标签的定义和标签的使用。基线标签属于严格受控的配置项,它的命名必须严格按照相关的命名规范来进行。
4.1.3 4.1.4
基线变更流程
基线变更流程参考配置管理变更与控制流程。
基线变更评估
评估度量:为了向CCB或项目管理部门提供附加的信息,将基本的度量集合应用到基线度量中是有帮助的。一些度量种类的例子包括:
第 9 页
l l l l l
复杂度。
模块平均大小。
发生变更模块的数量。 修改并验证的缺陷数量。 代码覆盖。
4.2 基线验证
通过检查(对文档基线而言)或审查和测试(对代码基线而言)来验证基线。如果知道了基线应该具有的特性,则可以直接验证基线是否具有指定的特性。
第 10 页
因篇幅问题不能全部显示,请点此查看更多更全内容