技术开发 频道

基于复用的软件开发过程中的配置管理

    利用可复用构件进行软件开发时的配置管理 

    利用构件进行软件开发可以分为三个方面:构件提取,构件组装和构件的适应性修改.]在构件提取方面,配置管理可以提高构件提取的质量;在构件组装方面,配置管理有助于在提取的同时进行组装;在构件的适应性修改方面,配置管理可以控制构件的变化,保证构件的适应性修改正确完成。

    构件提取时的配置管理

    好的构件库组织和管理可以提高构件提取的质量,配置管理对构件库的组织和管理有很大的帮助.一个构件在构件库中往往需要保存多个版本,不同版本之间的差异可能是使用平台不同,也可能是功能或使用方式的差异.许多构件库系统都记录构件间的版本关系。

    利用配置管理中的版本控制,可以更好地维护构件间的版本关系.配置管理采用增量存储,可以减少这些构件在构件库中所占的空间,从而提高构件库的容量.多个构件可能会包含相同的成分,比如有两个构件,每个构件都包含多个类,其中有些类是这两个构件共有的.利用配置管理,这些类就可以只保存一份,这样可以减少冗余,保证一致性。

    由于构件库使用者对构件库的查询机制不够熟悉或者难以准确表达查询要求,有时所需构件在构件库中存在,但不能查出来,或者查出来许多显然不需要的构件,这样就会影响开发的效率.构件库中的构件大多数是领域相关的,因此在开发某一项目时,构件库中许多构件是不可能在该项目中复用的,有可能在该项目中复用的构件主要是通用构件和与该项目所处领域相关的构件.如果将这些构件的查询信息以配置的形式记录下来,使得开发人员对构件的查询可以仅在这些构件中进行,构件提取的质量会有较大提高.在构件库中寻找有可能在某一特定项目中复用的构件,可以由对构件库和该项目都比较熟悉的开发人员来完成,提取的质量也会比较高。

    构件组装时的配置管理

    在进行构件组装时,组装的结果可能仍是可复用的构件,这些组装出来的构件也应该保存在构件库中,供以后使用.由于这些构件的组成部分都已存在于构件库中,再在构件库中存储这些构件不是个好办法.因此,构件库应该在不直接存储组合构件的情况下,提供查询构件的功能.此时,由于不能穷举出构件库中所有的构件组合,必须采取一些实际可行的办法使得要查询的构件组合的数目降下来[3].从管理的角度看,可以把可能的构件组合以配置的形式记录下来,供使用者查询,甚至可以在构件库的使用过程中逐渐将新的构件组合添加到构件库中。

    构件适应性修改时的配置管理

    构件的使用者往往不是构件的开发者,对构件不够熟悉,构件的使用者在对构件进行修改时,可能为很小的修改要付出巨大的工作量;而且由于修改不当,还可能引入错误,造成构件复用的失败.配置管理有助于减少构件修改的工作量和保证构件修改正确完成.在对构件进行修改的过程中,构件使用者往往不能一次找到正确的修改办法,因此需要尝试多种修改办法.利用配置管理中的版本控制,记录构件修改过程中的多个版本,可以避免多次尝试之间的相互影响,也可以尽可能地保存以前有用的工作,减少重复劳动,从而减少构件修改的工作量。

    一个构件可能包含多个部分,对一个部分的修改可能会对其它部分造成影响.利用配置管理中的配置支持和变化控制,还可以在构件修改过程中维护各个部分的一致性.配置管理可以记录每次修改对整个构件的影响,有助于使修改局部化,减少修改造成的对整个构件的影响,指导复用者正确完成构件的适应性修改。

    软件复用的实际效益

    日美的一些大公司的资料表明,软件复用率最高可望达到90%,而且软件复用使得企业在及时满足市场,软件质量,软件开发费用和维护率等方面得到显著的改进.例如,AT&T的电信操作支持系统软件复用率达40%~92%;Motorola公司在为编译器和编译器工具编写测试包时,复用率达85%;Ericssion AXE公司的电信开关系统产品,复用率达90%.Hewlett-Pachard公司早在1984年就开始开发可复用构件,1987年建立复用库,据80年代几个方面的统计,复用率达25%~50%.惠普公司在1990年开始实施一个"宏伟"的复用计划,收集并研究最好的体系结构,过程,组织结构,打算将其装备公司的各个部门,但通过实践,惠普公司采用典型示范先行的系统的过渡方法,成功地在公司内逐步地全面实施复用。

    根据1991年的一份报告说,日本的软件大公司在80年代中期复用率就达50%左右;1997年的一份报告说,Hitachi的Eagle环境,达60%~98%,该环境让软件工程师可以复用标准的程序框架和函数过程。

    除了复用率之外,在企业的经营管理方面也可望达到理想的效益.例如,上市时间可缩短2~5年;软件产品的缺陷密度可减少5~10倍;软件产品的维护可减少5~10倍;软件开发总费用可减少15%~75%,其中75%是针对长期项目,包括开发可复用资产以及支持复用的负担。

    参考文献

    Li Keqin, et al ,An Overview of JB(Jade Bird) Component Library System JBCL,Technology of Object-Oriented Languages and     Systems Tools 24,1997
    Burrows C,et al ,Configuration Management, Ovum Ltd,1998
    Rational R1000 Development System Reference Manuals 1998
    郑人杰编 软件工程 1999

0
相关文章