软件配置管理过程中基线技术应用研究
2017-09-18胡丹
胡丹
摘 要: 分析了基线的定义和内涵,对基线的分类及基线的变更控制进行了深入研究。基于基线技术在软件配置管理过程中的应用实施,提出了基线规划、基线发布、基线变更等流程。该研究成果对加强软件配置管理过程中基线技术的应用及实施具有重要指导意义,能够有效提高软件研制过程中软件配置管理过程的有效性,进而提高软件质量。
关键词: 软件配置管理; 基线技术; 基线变更控制; 软件质量
中图分类号:TP311.52 文献标志码:A 文章编号:1006-8228(2017)09-13-03
Abstract: The definition and connotation of software baseline are analyzed, and the classification of baselines and the control of baseline change are deeply studied. According to the application of baseline in software configuration management, the processes of baseline planning, baseline release and baseline change are proposed. The research results have important guiding significance to strengthen the application of baseline in software configuration management, can effectively improve the efficiency of software configuration management in the process of software developing, and improve the quality of software.
Key words: software configuration management; baseline; baseline change control; software quality
0 引言
隨着计算机软件的应用逐渐广泛,软件规模越发庞大,结构越发复杂,软件研制中的配置管理过程逐渐受到各企业的重视。配置管理即:对软件研制过程产生的或接收的工作产品实施版本控制、变更控制,必要时可采用相关工作做辅助,配置管理的目的是确保软件研制过程中各工作产品的完整性、一致性和可追溯性[1-3]。
目前配置管理在实施过程中尚存在一些问题,如版本随意更改,工作产品间逻辑上不一致,开发环境与投产环境代码不一致等。而基线技术的应用能够有效地解决目前存在的问题。
1 基线技术
1.1 定义
CMMI中对基线的定义为:经过正式评审并取得共识的规格说明与工作产品的集合,该集合成为之后进一步开发的基础,并且只能通过变更控制规程才能进行变更[4]。
简单来说,基线是一系列工作产品的集合,这些工作产品通过了评审或测试形成了独立的版本,并能够作为后续开发的依据,已发布的基线需要通过变更控制过程才可以更改[5-6]。
基线通常在项目里程碑节点处创建,标识着项目一个阶段已结束,可以开始下一个阶段。如果前一阶段的基线未发布,那么下一阶段产生的文档、代码等都是没有依据的。
1.2 基线技术在软件配置管理过程中的重要作用
基线将软件研制过程中各阶段的工作成果划分的更加明确,使得零零散散工作产品能够整齐划一,基线技术在软件配置管理过程中的重要作用主要体现在基线的高重现能力、可追踪能力、可报告能力。
高重现能力即基线在软件研制过程中能够重新生成某一历史版本的能力;高追踪能力即各基线间的纵向一致性,例如,由某一版本的设计基线能够追溯到与之对应的需求基线、代码基线等;可报告能力即可以对比不同版本基线的内容,并发布相关报告。
1.3 基线的分类
如图1所示,基线通常分为功能基线、计划基线、分配基线、设计基线、代码基线、产品基线这六类,具体如下。
⑴ 功能基线
功能基线在软件定义阶段结束时建立,是指项目委托单位与项目研制单位达成一致的软件功能说明,或上级下达的软件研制任务书、研制要求等。功能基线界定了软件的基本功能框架,是后续进行软件需求分析的主要依据。
⑵ 计划基线
功能基线建立后,顶目经理依据功能基线,制定项目开发计划,质量保证人员和配置管理员依据项目开发计划制定质量保证计划、配置管理计划。计划类文档通过评审后,建立计划基线。
⑶ 分配基线
分配基线是指通过评审的软件需求规格说明书。分配基线是对软件的功能说明、性能说明。在软件需求规格说明通过评审后建立。
⑷ 设计基线
设计基线通常包括通过评审的软件详细设计说明书、软件概要设计说明书、软件接口设计说明书、软件数据库设计说明书等,在软件设计类文档通评审后建立。
⑸ 代码基线
代码基线通常包括软件源代码、软件部署包、软件操作手册等,在软件实现阶段代码走查或单元测试结束时建立。
⑹ 产品基线
产品基线是,指软件产品实现了软件需求规格说明中的功能需求和性能需求,可以对外发布。产品基线通常包括软件源代码和软件部署包,以及该版本源代码对应的软件计划、需求、设计等相关文档,在软件通过测试后建立。
1.4 基线的变更控制
为了确保基线的完整性、一致性,对基线进行修改需要经过变更控制规程。endprint
基线变更前,项目组应评审基线变更的影响域、基线变更的风险、基线变更对工作量人员等的影响。对于重大变更,即复杂度高、影响域范围大、影响程度高的变更,应由项目领导小组评审决定;对于常规变更,即复杂度、影响范围在项目组控制范围内的,应由项目组评审决定;对于小变更,即复杂度低、影响范围小的变更可由项目经理决定。变更申请审批通过后,方能对基线进行修改,应对修改后的基线进行验证,并建立新版本的基线。
2 基线技术在软件配置管理过程中的应用
2.1 基线规划
在项目计划阶段,配置管理员应依据项目整体计划对项目基线规划,并纳入配置管理计划。
基线规划内容应包括顶目研制过程中需要建立的基线类别、基线标识、基线建立时机、基线所含配置等内容,详见表1。
2.2 基线发布
基线所含配置项纳入受控库后,配置管理员应按照配置管理计划中的要求及时建立并发布相关基线。
配置管理员填写并提交基线发布报告,由项目负责人对基线发布报告中的内容进行审核,应重点审核基线,所含配置项是否完备,配置项内容及版本是否正确。本次发布的基线版本是否正确。项目负责人审核通过后,由CCB(配置控制委员会)负责人对基线发布报告进行审批,审批通过后,基线正式发布。
2.3 基线变更
基线变更时,由项目组成员提出变更申请,详细描述变更原因、变更影响域、变更范围等,项目经理或CCB成员组对变更内容进行评估,根据变更级别的不同由不同级别的人员进行审批。
变更审批通过后,由配置管理員进行变更审核,重点审核基线版本及基线配置项版本是否正确,变更审核通过后,配置管理员实施基线变更出库。
项目成员实施变更,以评审或测试的方式对变更后的内容进行验证,验证通过后,项目成员对变更后的基线申请变更入库,配置管理员发布新版本的基线。
基线变更流程如图2所示。
3 结束语
在CMMI模型中,配置管理过程虽然只是一个支持类过程域,但是配置管理过程非常重要,它贯穿在整个软件研制过程中,对软件研制过程产生的和接受的所有工作产品实施版本管理、变更控制等。配置管理过程工作不到位将会导致工作产品版本混乱、生产与开发版本不一致、难以开展二次开发等问题。基线技术的应用及变更控制的实施能够有效解决上述问题,确保工作产品的完整性、版本的一致性,保障配置管理过程的有效实施,提高软件产品质量。
参考文献(References):
[1] 姜文,刘立康.软件配置管理中的基线问题研究[J].计算机技
术与发展,2016.6:6-10
[2] 毛正雄,何煜峰.基线技术在软件配置管理过程中的应用探
讨[J].信息通信,2016.3:185-186
[3] 李园园.软件配置管理辅助系统的设计与实现[D].北京邮电
大学,2010.
[4] 陈士磊.支持过程管理的配置管理工具的研究与实现[D].大
连海事大学,2007.
[5] 于宏霞,陈凯,白英彩.基线技术在软件配置管理过程中的应
用[J].计算机应用与软件,2006.2:43-45
[6] 林震.基于需求基线的软件配置管理研究[D].西南交通大学,
2005.endprint