基于连接器的构件组装技术研究

时间:2012-12-07

  摘 要:分析了构件组装技术,提出了基于软件体系结构连接器的构件组装方法及基于连接器的构件组装应用原型,并将这一原型应用于电子政务系统的开发。

  关键词:构件;构件组装;连接器;电子政务

  随着对软件复用认识与研究的不断深入,基于构件的软件开发(Component-based SoftwareDevelopment,CBSD)模式致力于通过组装软件构件的方式来建造软件系统。CBSD强调以构件集成为中心进行系统的构造,是软件开发走上工业化的必由之路,也是实现软件复用切实可行的途径。软件复用终体现为可复用构件通过集成机制组装成完整的系统,在该过程中,找到合适的构件和对所选构件进行组装是CBSD的两个关键环节。

  目前,国内外对构件组装技术的研究已取得一定成果,如美国对象管理组织的公共对象请求代理体系结构、Microsoft的组件对象模型、SUN的JavaBeans/EJB、北京大学软件工程研究所的青鸟工程。尽管构件组装技术研究在构件复用、构件间交互的工业标准、领域体系结构、工具集及其他相关方面都取得了很大进展,但使用已有的构件来系统地建造大型软件仍存在许多由于体系结构不匹配而引起的困难。

  软件体系结构(Software Architecture,SA)提供了一种自顶向下、基于构件的软件系统开发途径,将软件系统分解为一组构件及构件之间的交互关系,从而使软件开发人员可从全局角度来设计与分析系统,克服了传统的自底向上软件开发的局限性[2].从体系结构人手进行软件开发和维护不仅可控制问题的复杂性,提高开发效率和系统质量,还可通过结构改善使目标系统的适应性、演化性得到保证。因此,在SA设计层次上研究构件组装技术有其理论价值和现实意义。

  1 基于软件体系结构连接器的构件组装

  1.1 软件体系结构

  SA 的一个重要的贡献是将构件之间的交互显式地表示为连接器(Connector),并将连接器视为和构件同等重要的一阶实体。连接器是SA设计层次上的一个概念,构件必须通过连接器才可以同其他构件相连。基于SA的构件组装过程如下:① 根据用户需求和实现环境的要求确定系统的体系结构,定义系统中的构件及构件之间的关系;② 在可复用构件库和连接器库中查找符合要求的构件与连接器,必要时开发新的满足要求的构件、连接器;③ 通过组装工具把这些构件和连接器组装起来,生成新的应用系统l3.],如图1所示。以连接器为基础的构件组装方法,体现了将构件的功能实现与其交互关系实现分离从而增加构件组装的可配置性的思想,是目前技术条件下实现构件动态组装的有效途径之一。

图1 基于软件体系结构的构件组装框架

图1 基于软件体系结构的构件组装框架

Fig.1 Component composition frameworkbased on software architecture.

  在SA层次上,构件通过接口定义了同外界的信息传递及所承担的责任。构件接口包括了构件同周围环境的全部交互内容,是构件同外界的交互途径。此外,环境不应对构件作任何与接口无关的假设,如实现细节等。构件接口规约地代表了构件,所以从可复用构件库中查找符合接口规约的构件,当找不到满足需求的构件时,可开发新的构件,并添加到构件库中。连接器描述了构件之间的交互关系,构件必须通过连接器才能同其他构件相连。连接器的选择与构件是类似的。配置组装是指基于SA 的描述,将构件和连接器组装成应用系统r5].具体就是通过解释构件规约和连接器规约,把构件接口处的集成映射到构件实现的集成,把原子构件组装成复合构件直至完整的应用系统。

  1.2 连接器模型

  连接器具有基本的功能性和非功能性需求。

  功能性需求包括控制和数据传递、接口适应和数据转换、访问协调和同步、信息侦听及动态构件连接;非功能性需求包括用户自定义的SA实体、清晰的参数化系统、显式的运行时实体、体系结构描述语言(ADL)到运行时的映射、多种中间件技术的支持及运行时行为的规约。这些需求是设计连接器时的重要参考标准。了解更多关于连接器的详细信息请点击此处:https://www.dzsc.com/product/searchfile/1307.html

  在基于构件的系统中,连接器作为构件间交互的实体,不同的SA 中构件的交互方式也不同,因此需要不同类型的连接器[6].连接器只是一个抽象的概念,不像构件那样有的描述。针对上述需求,本文提出了一个通用的连接器模型。

  连接器模型主要由连接器的外部规约和内部规约组成(如图2所示)。使用巴科斯范式(Backus-Naur Form,BNF)对连接器模型进行定义。

图2 连接器模型

  图2 连接器模型

  Fig.2 Connector model.

  连接器模型定义:

  connector .1. 一(name,sponsor,responder,commumca-tionChanne1)

  communicationChannel::一<declaration,protocol,supervisor,coordinator)

  其中,name为连接器的标识符。

上一篇:基于全耗尽平面晶体管技术的NovaThor平台设计
下一篇:基于前沿调制改善功率因数和电源性能

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料