13文档与配置管理
# 信息文档管理与配置管理结构示意图
# 概述
信息系统相关信息(文档)是指某种数据媒体和其中所记录的数据。它具有永久性, 并可以由人或机器阅读,通常仅用于描述人工可读的东西。
开发文档描述开发过程本身、产品文档描述开发过程的产物、管理文档记录项目管理的信息。
每个文档的质量必须在文档计划期间就有明确的规定。文档的质量可以按文档的形式和列出的要求划分为四级。
# 1.配置管理
配置管理是为了系统地控制配置变更,在系统的整个生命周期中维持配置的完整性和可跟踪性,而标识系统在 不同时间点上配置的学科。
软件配置管理是在贯穿整个软件生命周期中建立和维护项目产品的完整性。
制订 配置管理计划 >> 配置标识 >> 配置控制 >> 配置状态报告 >> 配置审计 >> 发布管理和交付
典型配置项包括项目计划书
、需求文档
、设计文档
、源代码
、可执行代码
、测试用例
、运行软件所需的各种 数据
,它们经评审和检查通过后进入配置管理
。配置项可以分为基线配置项
和非基线配置项
两类,例如,基线配置项可能包括所有的设计文档和源程序等;非基线配置项可能包括项目的各类计划和报告等。
所有配置项的操作权限应由CMO(配置管理员)
严格管理,基本原则
是:基线配置项向开发人员开放读取的权限;非基线配置项向PM、CCB(配置控制委员会)及相关人员开放。
配置项的状态可分为“草稿
”“正式
”和“修改
”三种。配置项刚建立时,其状态为“草稿”。配置项通过评审后,其
状态变为“正式”。此后若更改配置项,则其状态变为“修改”。当配置项修改完毕并重新通过评审时,其状态又 变为“正式”。
# 配置项版本号需掌握如下内容:
配置项版本管理
:在项目开发过程中,绝大部分的配置项都要经过多次的修改才能最终确定下来。对配置 项的任何修改都将产生新的版本。由于我们不能保证新版本一定比旧版本“好”,所以不能抛弃旧版本。版本 管理的目的是按照一定的规则保存配置项的所有版本,避免发生版本丢失或混淆等现象,并且可以快速准确地查找到配置项的任何版本。配置基线(常简称为基线)
由一组配置项组成,这些配置项构成一个相对稳定的逻辑实体。基线中的配置项被“冻结”了,不能再被任何人随意修改。对基线的变更必须遵循正式的变更控制程序。
一组拥有唯一标识号的需求、设计、源代码文卷以及相应的可执行代码、构造文卷和用户文档构成一条基 线。产品的一个测试版本(可能包括需求分析说明书、概要设计说明书、详细设计说明书、已编译的可执行代码、测试大纲、测试用例、使用手册等)是基线的一个例子。
—个产品可以有多个基线,也可以只有一个基线。交付给外部顾客的基线一般称为发行基线,内部开发使用的基线一般称为构造基线。
配置库存放配置项并记录与配置项相关的所有信息,是配置管理的有力工具。配置库的建库模式有两种:
按配置项类型建库
和按任务建库
。
配置控制委员会负责对配置变更做出评估
、 审查
以及监督巳批准变更的实施
。CCB其成员可以包括项目经
理、用户代表、产品经理、开发工程师、测试工程师、质量控制人员、配置管理员等。CCB不必是常设机构
, 完全可以根据工作的需要组成,例如按变更内容和变更请求的不同,组成不同的CCB。小的项目CCB可以只有一个人,甚至只是兼职人员。通常,CCB不只是控制配置变更,而是负有更多的配置管理任务,例如:配置 管理计划
、基线设立审批
、产品发布审批等
。
配置管理员(CMO)负责在整个项目生命周期中进行配置管理活动,具体有如下内容:
a)编写配置管理计划。 f)版本管理和配置控制。 b)建立和维护配置管理系统。 g)配置状态报告。 c)建立和维护配置库。 h)配置审计。 d)配置项识别。 i)发布管理和交付。 e)建立和管理基线。 j)对项目成员进行配置管理培训。
配置控制即配置项和基线的变更控制,包括下述任务:标识和记录变更申请;分析和评价变更;批准或否
决申请;实现、验证和发布已修改的配置项。
变更评估
:CCB负责组织对变更申请进行评估并确定以下内容。
a)变更对项目的影响。
b)变更的内容是否必要。
c)变更的范围是否考虑周全。
d)变更的实施方案是否可行。e)变更工作量估计是否合理。
CCB决定是否接受变更,并将决定通知相关人员。
基于配置库的变更控制如图所示。
# 配置状态报告
配置状态报告也称配置状态统计,其任务是有效地记录和报告管理配置所需要的信息,目的是及时、准确地 给出配置项的当前状况,供相关人员了解,以加强配置管理工作。配置状态报告应该包含以下内容。
a)每个受控配置项的标识和状态。一旦配置项被置于配置控制下,就应该记录和保存它的每个后继进展的版本和状态。
b)每个变更申请的状态和已批准的修改的实施状态。
c)每个基线的当前和过去版本的状态以及各版本的比较。
d)其他配置管理过程活动的记录。
# 配置审计
配置审计也称配置审核或配置评价,包括功能配置审计和物理配置审计,分别用以验证当前配置项的一致 性和完整性。配置审计的实施是为了确保项目配置管理的有效性,体现了配置管理的最根本要求---不允许出现任何混乱现象,例如:
- 防止向用户提交不适合的产品,如交付了用户手册的不正确版本。
- 发现不完善的实现,如开发出不符合初始规格说明或未按变更请求实施变更。
- 找出各配置项间不匹配或不相容的现象。
- 确认配置项已在所要求的质量控制审核之后纳入基线并入库保存。
- 确认记录和文档保持着可追溯性。
1.工具综述 (1)项目文档一般作为配置管理的一部分,放在配置管理工具中进行管理,所以常用的软件配置管理工具分为两大类, 一类是付费商业软件,一类是开源软件。 (2)付费商业软件:CA CCC;Microsoft VSS,CVS。 (3)开源软件:SVN、GIT、CVS。 2.常用工具简介 (1) SVN服务器有两种运行方式:独立服务器和借助apache运行。两种方式各有利弊, 用户可以自行选择。 (2) ClearCase (简称:CC)是IBM Rational公司的旗舰产品之一,是全球领先的软件配置管理工具,它广泛地应用于众多的企业级软件工程实践之中。CC提供C/S和B/S两种架构的配置管理解决方案,提供了全面的软件配置管理功能。 (3) GIT与常用的版本控制工具CVS、Subversion等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代 码的发布和交流极其方便。
(1)以下关于软件版本控制的叙述中,正确的是:( )。 A.软件开发人员对源文件的修改在配置库中进行B.受控库用于管理当前基线和控制对基线的变更 C.版本管理与发布由CCB执行 D.软件版本升级后,新基线存入产品库且版本号更新,旧版本可删除
习题解析:本题考查的是配置管理的相关知识。受控库,也称为主库或系统库,是用于管理当前基线和控制 对基线的变更。受控库包括配置单元和被提升并集成到配置项中的组件。软件工程师和其他人员可以自由地复制受控库中的单元或组件。然而,必须有适当的权限授权变更。受控库中的单元或组件用于创建集成、系统和验收测试或对用户发布的构建。 参考答案:(B)
(2)配置项的状态有三种:草稿、正式发布和正在修改。以下叙述中,不正确的是( )。 A.配置项刚建立时状态为“草稿”,通过评审后,状态变为“正式发布” B.配置项的状态变为“正式发布”后,若需要修改必须通过变更控制流程进行 C.已发布的配置项通过了CCB的审批同意修改,此时其状态变为“正在修改” D.通过了变更控制流程审批的配置项,修改完成后即可发布,其状态再次变为“正式发布”
习题解析:本题考查的是版本号的变迁。通过了变更控制流程审批的配置项,修改完成后应该经过验证、评审,然后才可以变为“正式发布”。 参考答案:(D)
(3)某软件项目的《需求规格说明书》第一次正式发布时,版本号为V1.0,此后,由于发现了几处错误, 对该《需求规格说明书》进行了2次小的升级,此时版本号为( )。 A.V1.11 B.V1.2 C.V2.0 D.V1.1
习题解析:本题考查的是版本号的变迁。请注意题干里的两点信息:此时的版本号,此时应该是修改完成了, 所以A排除;进行了2次小的修改,则选择B。 参考答案:(B)
(4)在项目配置项中有基线配置项和非基线配置项,( )一般属于非基线配置项。 A.详细设计 B.概要设计 C.进度计划 D.源代码
分为基线配置项和非基线配置项两类,基线配置项可能包括所有的设计文档和源程序等;非基线配置项可能 包括项目的各类计划和报告等。参考答案:(C)
(5)基线是项目配置管理的基础,( )不属于基线定义中的内容。 A.建立基线的条件 B.基线识别 C.受控制项 D.批准基线变更的权限
习题解析:本题考查的是基线定义的内容。对于每一个基线,要定义下列内容:建立基线的事件、受控的配 置项、建立和变更基线的程序、批准变更基线所需的权限。参考答案:(B)
(6)配置项目版本控制的步骤是( ) ①技术评审或领导审批 ②正式发布 ③修改处于“草稿”状态的配置项 ④创建配置项 A.①④③② B.③②①④ C.④③①② D.④③②①
习题解析:本题考查的是版本控制的步骤。配置项版本控制流程:创建配置项——修改处于“草稿”状态的配 置项——技术评审或领导审批——正式发布——变更。参考答案:(C)
(7)软件系统的版本号由3部分构成,即主版本号+次版本号+修改号。某个配置项的版本号是1.0,按照配 置版本号规则表明( )。 A.目前配置项处于“不可变更”状态 B.目前配置项处于“正式发布”状态 C.目前配置项处于“草稿”状态 D.目前配置项处于“正在修改”状态
习题解析:本题考查配置项的版本号,处于“正式发布”状态的配置项的版本号格式为:X.Y ;X为主版本号, Y为次版本号。配置项第一次“正式发布”时,版本号为1.0。 如果配置项的版本升级幅度比较小,一般只增大Y值,X值保持不变。只有当配置项版本升级幅度比较大时, 才允许增大X值。 参考答案:(B)
(8)创建基线是项目配置管理的一项重要内容,创建基线或发行基线的主要步骤是( )。 A.获取CCB的授权、创建构造基线或发行基线、形成文件、使基线可用 B.形成文件、获取CCB的授权、创建构造基线或发现基线、使基线可用 C.使基线可用、获取CCB的授权、形成文件、创建构造基线或发行基线 D.获取CCB的授权、创建构造基线或发行基线、使基线可用、形成文件
习题解析:本题考查创建、发行基线的步骤,创建基线或发行基线的主要步骤如下:①配置管理员识别配置 项;②为配置项分配标识;⑨为项目创建配置库,并给每个项目成员分配权限;④各项目团队成员根据自己 的权限操作配置库;⑤创建基线或发行基线,并获得变更管理委员会(CCB)的授权;⑥形成文件;⑦使基线可用等。 参考答案:(A)
(9)某软件开发项目的需求规格说明书第一次正式发布,命名为《需求规格说明书 V1.0》 ,此后经过两次 较小的升级,版本号升至 V1.2,此时客户提出一次需求变更,项目组接受了变更,按客户的要求对需求规格说明书进行了较大的改动并通过评审,此时版本号应升级为( ) A.V1.3 B.V1.5 C.V2.0 D.V3.0
习题解析:本题考查版本号相关知识,配置项版本格式 X.Y,如果改动较小则增大 Y 值;如果有较大修改, 则增大 X 值。题目中,项目进行了较大的改动并通过评审。所以版本号应升级为 v2.0。 参考答案:(C)
(10)基线由一组配置项组成,这些配置项构成了一个相对稳定的逻辑实体,是一组经过( )正式审查,批 准,达成一致的范围或工作产品。 A.用户 B.配置管理员 C.配置管理委员会 D.专家组
习题解析:本题考查软基线、配置管理相关知识,基线由一组配置项组成,这些配置项构成了一个相对稳定 的逻辑实体,是一组经过配置管理委员会正式审查,批准,达成一致的范围或工作产品。参考答案:(C)
技术成就梦想