51Testing软件测试论坛
标题:
可变粒度的配置管理工具的研究
[打印本页]
作者:
time
时间:
2005-3-8 14:17
标题:
可变粒度的配置管理工具的研究
上海市科委科技攻关项目:可变粒度的配置管理工具的研究
配置管理是一门用来记录并控制产品数据的管理科学。软件配置管理(Software Configuration Management,以下简称SCM)相对于广义的配置管理有其特殊的意义。SCM活动的目标就是为了标识变更、控制变更、确保变更正确实现并向其他有关人员报告变更。从某种角度讲,SCM是一种标识、组织和控制修改的技术,目的是使错误降为最小并最有效地提高生产效率。SCM是软件过程的关键要素,是控制软件系统演化的规程。它包括标识给定时间点上软件的配置、控制配置更改、维护配置在整个生命周期中的完整性和可跟踪性。
软件复用已经成为提高软件生产力和质量的最有效的手段之一。为了有效地实施复用,传统的软件开发的方式必须发生变化。基于构件的软件开发(Component-Based Software Development,简称CBSD)指使用可复用软件构件设计和实现软件系统。CBSD的理论建立在软件工程、软件复用和分布式计算等基础之上,已经成为新一代的软件开发方法。
CBSD方法使软件开发从“工程”阶段演化到“生产”阶段。基于构件的软件开发方法充分利用了软件复用技术,复用部分的开发成本可降至原有成本的10%~25%;同时构件的规范性也相应提高了软件质量,使复用部分的软件缺陷率下降了4倍左右。CBSD方法在CORBA、EJB和DCOM等构件标准的支持下已经有了相当快的发展。
从配置管理的角度考虑,CBSD和传统的软件开发方法有很大的不同。其特别体现在系统的构造方法不同:传统的软件开发方法中,系统用编程语言实现。系统通常由一组源代码文件实现,这些文件经过编译和链接构成最终系统。当系统发生变化时,一个或多个源代码文件必须相应的作出修改。而在CBSD中,编程语言用来实现原始构件,构件描述语言和构架描述语言用来组装复合构件和系统。
由此,CBSD对配置管理提出了新的需求:
1)支持CBSD中涉及到的新的配置管理对象
CBSD围绕的中心就是复用,可复用资源的范围涵盖了软件开发的各个阶段。CBSD使得配置管理的对象有了新的内容。除了原始构件本身,原始构件构成的复合构件、系统构架都应该成为配置管理的对象。
2) 支持可变粒度的配置管理
传统的配置管理过程中,配置项在很大程度上是一种物理单元,一般是在文件级上进行管理。对文件的管理是以字符集的管理为基础的,比如文件内容的比较与归并。从本质上来说,这是一种非结构化的配置管理方式。而CBSD中系统构造是一个递归过程(原始构件—复合构件—系统)。在这个过程中,任何一个抽象层次上的产品都应该作为配置项进行管理。这时的配置项有可能是一组物理单元的组合,是一个逻辑单元。因为配置项内部具有逻辑结构,所以 这是一种结构化的配置管理方式。因此,相应的配置管理也应该由单一的文件粒度扩展为对可变粒度(不同抽象层次上的逻辑单元)配置管理的支持。
3)支持基于CBSD的软件过程管理
CBSD使得传统的软件过程发生了很大变化。构件、构架的设计、开发、测试等活动已不再局限于当前系统的开发,而是要面向企业整个CBSD过程。因此,配置管理中的软件过程管理必须体现新的CBSD特点。
4)支持Web服务发布和在线构件配置管理
Web服务和在线构件是产品发布和构件发布的新形式。配置管理必须针对新的构件和产品形式的特点提供相应的配置管理支持。
[项目目标]
为了解决现有软件配置管理工具对基于构件的软件开发(CBSD)的支持不足的问题,为企业实施基于构件的软件开发提供支撑,提升上海软件企业整体的软件竞争力,本课题将通过对上海若干软件企业的实际需求的研究,开发一个可变粒度的软件构件配置管理工具,提供一套软件配置管理的文档规范,并且在若干企业中进行应用,提高这些企业在基于构件的软件开发方面的能力,形成成功的典范。具体目标如下:
1)通过对上海若干软件企业的实际需求的研究,开发一个可变粒度的软件构件配置管理工具。
2)提供一套软件配置管理的文档规范,提高软件企业在软件配置管理方面的规范化程度。
3)在若干软件企业中应用该配置管理工具,促进这些企业在基于构件的软件开发方面的进步。
4)通过与上海构件库的紧密集成,对构件库的使用提供配置管理支持,提高软件企业使用上海构件库的方便程度,促进
CBSD基础设施的发展。
5)通过该项目为软件企业采用CBSD提供支持,提高软件企业竞争力。
[项目成果]
本项目自2004年初开始,到目前为止已经开发出了可变粒度的配置管理工具FDSCM,包括以下四个部分:
1)版本管理工具
2)基于Web的变更管理工具
3)基于Web的配置信息查询工具
4)配置系统管理工具
目前该工具正在或即将在复旦天翼、万达信息、复旦金仕达等软件企业进行应用。
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2