1、 软件配置管理过程 文档编号: 文档信息:实验室级别过程文件 文档名称:软件配置管理过程 文档类别:支持过程类 密 级:部 版本信息:1.5 建立日期:2003-11-5 创 建 人: 审 核 者: 批 准 人: 批准日期: 保 管 人: 存放位置:SPI-CMMI-L4_Documents_Process_SCM 编辑软件:Microsoft Office 2003 中文版 文档修订记录 版本编号或者更改记录编号 *变化 状态 简要说明(变更容和变更围) 日期 变更人 批准日期 批准
2、人 1.0 A 1.5 M *变化状态:A——增加,M——修改,D——删除 文档审批信息 序号 审批人 角色 审批日期 签字 备注 1 2 目 录 1 简介 4 1.1 目的 4 1.2 适用围 4 1.3 背景描述 4 1.4 引用文件 4 1
3、5 术语表 4 1.6 参考资料 5 2 过程总体描述 5 2.1 过程概述 5 2.2 过程结构描述 6 3 过程元素描述 6 3.1 配置管理计划 7 3.2 配置库维护 8 3.3 配置变更控制 10 3.4 基线发布控制 11 3.5 配置状态记录 12 3.6 配置审计 13 3.7 产品发布控制 14 4 附录 14 附表1——配置区域控制流程表 15 4.1 附录A-相关过程 16 4.2 附录B-相关规程 16 4.3 附录C-相关指南 17 4.4 附录D-相关模板列表 17 图索引: 图表 1 :配置过程结构图 6 图表 2 配置
4、库目录结构 15 1 简介 1.1 目的 本文的目的是确保产品在软件生命周期中的完整性和可追溯性,配置管理活动被设计来标识配置项、建立基线、控制版本和变更、保证变更被适当地实施,使开发人员、测试人员、项目管理者、质量保证人员以及客户能方便地通过软件配置管理获得有用的信息。 1.2 适用围 本过程适用于组织中所有的软件开发项目,从需求阶段开始,至维护阶段完成,贯穿项目的整个生命周期。 1.3 背景描述 1.4 引用文件 1.5 术语表 l 软件配置管理:软件配置管理的目的是建立和维护在项目的整个软件生命周期中软件项目产品的完整性。软件配置管理活动是有计划的;所选
5、定的软件工作产品是已标识的、受控的和适用的;对已标识的软件工作产品的更改是受控的;受影响的组和个人得到软件基线的状态和容的通知。 l 软件配置项:软件配置项(SCI)是指工程过程所生产或使用的任何元素,或者是纳入软件产品的元素。可能是说明书、计算机程序、数据结构或开发软件产品使用的工具。所有定义产品的元素的全体称为软件配置。 l 基线:基线是经过评审和批准的配置项的集合,其作用是明确划分项目各阶段,确定各阶段的结束点。在项目的开发过程中,最基本的基线有需求基线、开发基线、发布基线等。 l 配置控制委员会(Configuration Control Board):是负责评价、认可或否定有关
6、配置项更改建议并确保确认的更改得以执行的一个小组。 l 配置状态报告:是配置管理过程中,配置人员应对所有提交的产品进行管理控制,并记录配置项和它的状态,进行的配置状态的说明和报告。 l 变更控制:配置管理的一部分,包括在配置标识正式建立之后,对配置项的更改进行评价、协调、认可或不认可以及执行更改的过程。 l 配置审计:考查软件基线库的结构、容和设施,以验证基线和描述它的文档的一致性。 l 配置库:为项目建立或可以利用的一个仓库,用于存储软件配置项和相关联的配置管理信息。 l WBS(Work Breakdown Structure工作分解结构) :是一种以分级方式表述项目工作和任务的
7、技术,WBS的建立可以有助于在项目计划期间防止遗漏某些重要的项和活动,并且保证所需要的活动都能得以逻辑的识别和关联。 l 正式基线:需求和运行基线。 l 开发基线(非正式基线):设计和代码、测试等的基线。 1.6 参考资料 【CMMI-SE/SW, V1.1, Staged Representation, CMU/SEI-2002-TR-002, ESC-TR-2002-002】 2 过程总体描述 2.1 过程概述 本过程是描述项目如何计划配置管理活动,并在整个软件的生命周期中如何执行配置管理活动的。软件配置管理是CMMI4级中的一个重要组成部分,其目在于建立和维护在项目的整个生
8、命周期软件项目产品的完整性。 2.2 过程结构描述 图表 1 :配置过程结构图 3 过程元素描述 将CMMI4中的SCM过程分解为若干个过程元素,分别是配置管理计划、配置库维护、配置变更控制、基线发布控制、配置状态记录、配置审计、产品发布控制。下面依次进行详细描述。 3.1 配置管理计划 概述 配置管理计划是配置管理活动中重要的一环,容包括明确项目的配置管理职责和配置基线建立的时机,确认需要纳入配置管理的要素即配置项,制定配置项的标识规和配置管理规程,选择配置管理工具,建立配置管理系统、安排必要的配置管理活动以及组建CCB等一系列重要的配置管理活动。 参与人员及职责
9、 SCM人员:制定配置管理计划 入口准则 l 项目得到高层经理批准 l WBS得到批准 l 项目策划开始 输入 l WBS l 《配置管理计划模版》 任务/步骤 祥见《配置管理计划规程》的描述 出口准则 l 《配置管理计划》审批通过 输出(工作产品) l 《配置管理计划》 资源和能力要求 l 资源:WBS、《配置管理计划模版》 l 能力: n SCM人员应接受过编制配置管理计划方法的培训 度量 度量元 采集点 SCM人员识别配置项、定义基线和编写《配置管理计划》所花费的时间 周报表 裁剪指南 裁减容 裁剪准则 不可裁减 无
10、 3.2 配置库维护 概述 配置库维护的主要任务是设置配置项的存储区域,确定相应的访问权限,以及对于存储的容进行备份 参与人员及职责 l SCM:建立配置库和设定权限 l 项目经理:申请项目配置库和权限 入口准则 《配置管理计划》中配置分区方案已经制定 输入 《配置管理计划》 任务/步骤 1. SCM工具选用 选取适合组织使用的配置管理工具。 2. 存储域的定义 I. 每个项目立项后,项目经理申请在配置服务器上为项目建立配置库,经批准后SCM为该项目建立配置库, II. SCM为项目建立主干分支,项目经理根据项目需要设置相应工作域,分别是:管理域
11、基线域、开发域、测试域、发布域 III. 各个域存储不同产品并由不同的角色权限控制 IV. 软件开发过程中的需求、设计、编码、测试、发布等基线标记为label,label的命名规则见:《命名规》 3. 存储域的控制流程 项目组在使用配置库的域区间时,具体控制流程也参见《配置库管理规》 4. 使用权限分配 SCM和项目经理必须对配置库中各区域的访问权限实施控制,确保只有被授权的人员才有权访问控制项(如读、写、上传、下载),参见《配置库管理规》 5. 资源备份 备份SCM库是非常重要的,目的是最小化丢失或在软件产品生命周期的开发期间和运行/维护阶段没有基本配置信息的风险。需要保存
12、灾难恢复备份副本。 出口准则 无 输出(工作产品) 配置库及部存储工作产品 资源和能力要求 l 资源:《配置管理计划》 l 能力: n SCM人员应接受过配置管理工具使用方法的培训 度量 度量元 采集点 SCM建立项目的配置库及设置权限所花费的时间 周报表 裁剪指南 裁减容 裁剪准则 不可裁减 无 3.3 配置变更控制 概述 项目按照配置管理计划规定的职责、任务、规程、在项目的进展过程中针对正式基线、非正式基线、工作产品版本进行变更控制,其中包括变更的申请与批准、变更的实施、配置状态统计等活动。 参与人员及职责 l CCB
13、分析、评审并批准基线的变更,确保只有经批准的变更请求才能进行实施,并形成CCB会议记要 l 项目经理:负责审核批准开发基线的变更 l 相关组成员:按照配置管理规程,配合配置管理人员的配置管理活动 l 质量保证人员:审查项目配置变更管理活动,验证它与配置计划和配置管理过程文件的符合性 入口准则 变更对应的容已批准或已提交或已建立 输入 配置变更申请表 项目配置基线 任务/步骤 祥见《配置变更控制规程》的描述 出口准则 l 变更得到评审和批准 输出(工作产品) l 配置变更通知 l 《变更与问题日志》 资源和能力要求 l 《会议记录模板》 l 《变更与问题日志
14、模板》 度量 度量元 采集点 度量变更所花费的时间 度量基线变更状态,包括: l 各基线变更次数 l 各基线变更的引入阶段 《周报表》 《变更历史报告》 裁剪指南 裁减容 裁剪准则 不可裁减 无 3.4 基线发布控制 概述 基线的最初创建和发布发生在生命周期中基线项最初开发阶段的末期。例如,在系统需求阶段末期,要审阅和批准客户需求。SCM领导会把它们置于配置控制之下(即建立客户需求基线)。或者,在编码阶段末期,当程序经过了审阅、单元测试和批准,项目经理可以批准建立源代码基线。则SCM领导定制代码基线,由基线代码建立产品,为后来的开发活动发布产品。 参与人
15、员及职责 l CCB:批准正式基线的发布。 l 项目经理:批准非正式基线的发布。 l SCM:编写《基线发布报告》,发布报告和基线容。 入口准则 l 所有被批准的产品已纳入到配置基线库。 l 所有的基线元素的变更已完成并被批准。 输入 l 即将形成基线的产品 l 《基线发布报告模版》 任务/步骤 祥见《基线发布控制》的描述 出口准则 基线形成并发布相关产品和报告 输出(工作产品) 基线发布报告及基线产品 资源和能力要求 l 《基线发布报告模版》 度量 度量元 采集点 SCM人员进行基线发布所花费的工时 周报表 裁剪指南 裁减容
16、 裁剪准则 不可裁减 无 3.5 配置状态记录 概述 配置状态记录是对配置人员如何进行配置状态记录的活动的描述。配置日常活动主要是对配置项进行状态记录,并在相应时间发布状态报告,同时,配置状态记录要文档化并定期维护。 参与人员及职责 l SCM人员:维护配置状态记录;制定配置状态报告;发布配置状态报告 l 项目经理:监督和分析 入口准则 l 变更批准 l 有新配置项纳入基线 l 变更配置项更新完成 输入 l 《配置状态报告模版》 l 《问题日志模版》 任务/步骤 1. 收集配置库数据 a) 配置项状态记录从配置项进入配置库的一刻起已经开
17、始记录 b) 收集、整理相应的配置记录,以便生成完整的配置项状态报告 2. 生成状态报告 a) 将配置项状态记录倒入《配置状态报告模版》 b) 根据模版要求生成《配置状态报告》 3. 分发状态报告 a) 通过E-mail或者书面方式将报告通知相关人员 出口准则 l 《配置状态报告》已生成 输出(工作产品) l 《配置状态报告》 资源和能力要求 l 《配置状态报告模板》 度量 度量元 采集点 配置人员用于报告的制作和发布所花费的时间 周报表 裁剪指南 裁减容 裁剪准则 不可裁减 无 3.6 配置审计 概述 配置审计的目的要证实软件产品在其整个
18、生命周期中,各配置项在技术上和管理上的完整性,并确保在基线发布之前,所有质量和配置活动都已经完成,其中基线发布包括基线建立时的发布和变更实施后的发布。 参与人员及职责 l 项目经理:执行功能审计 l SCM人员:审计准备;执行产品审计;制作审计报告;问题跟踪 l 技术人员:执行功能审计 l SQA:监督审计过程 入口准则 有待发布的基线报告 输入 待审计的软件产品基线 基线审计检查单、基线发布报告 任务/步骤 祥见《配置审计规程》的描述 出口准则 l 审计执行完成 输出(工作产品) l 已审计过的产品 l 审计报告 资源和能力要求 l 《
19、变更与问题日志》 l 《基线审计报告模板》 l 《基线发布报告模板》 l 《配置管理计划》 度量 度量元 采集点 审计人员在审计过程中所花费的工时 周报表 裁剪指南 裁减容 裁剪准则 不可裁减 无 3.7 产品发布控制 概述 产品发布主要是针对客户的。在系统测试完成并通过后,项目组要对产品进行构造形成试用的软件产品,将该软件产品发布给客户,进行安装并对客户进行培训,我们称这个阶段为试运行。在试运行期,软件产品根据客户的使用仍会发现缺陷存在,通过变更控制过程,修改缺陷,可能会发布多个不同版本的软件产品。在试运行期结束,产品验收后,将根据客户的要求发布正式的
20、软件产品 参与人员及职责 l CCB:批准发布 l SCM人员:实施发布 l 客户:接收发布产品 l 项目经理或项目经理指定人员:实施安装培训 入口准则 待发布产品基线构造完成 输入 待发布产品基线 产品发布申请表 任务/步骤 祥见《产品发布控制规程》的描述 出口准则 l 产品已发布 输出(工作产品) l 软件产品 l 《产品发布报告》 l 《产品发布申请》 资源和能力要求 l 《产品发布报告模板》 l 《产品发布申请模板》 度量 度量元 采集点 l SCM人员用在产品发布上的时间。 l CCB用在产品发布批准上的时间 周
21、报表 裁剪指南 裁减容 裁剪准则 不可裁减 无 4 附录 4.1 附录A-相关过程 4.2 附录B-相关规程 软件配置计划规程(ITECHS_SCM_PRD_PLAN) 软件配置变更控制规程(ITECHS_SCM_PRD_CONTROL) 软件配置审计规程(ITECHS_SCM_PRD_AUDIT) 软件配置状态记录规程(ITECHS_SCM_PRD_STATE) 产品发布控制规程(ITECHS_SCM_PRD_PRODUCT) 4.3 附录C-相关指南 4.4 附录D-相关模板列表 《配置管理计划模板》 《配置变更报告模板》 《基线审计报告模板》 《基线发布报告模版》 《配置状态报告模板》 《产品发布报告模版》






