当前位置: 首页 > 专利查询>清华大学专利>正文

一种构件的封装和一致性访问的方法技术

技术编号:2867145 阅读:151 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种构件的封装和一致性访问的方法,属于软件工程技术领域。本发明专利技术包括:在一台或多台计算机上设置构件库,并将从互联网获得的构件存入构件库中,构成构件库计算机;在一台计算机上设置构件目录库,构成构件目录库计算机;构件使用方从构件库计算机上提取构件,对构件进行封装形成构件封装件,并将其组织存储在构件目录库计算机上;构件使用方根据构件目录库计算机中的构件封装件信息对构件资源进行一致性访问。本发明专利技术可实现对现有的构件资源的统一描述和有效组织,从而更好地支持上层应用对构件资源的高效率检索与一致性访问。本发明专利技术可在金融、教育、电子商务、电子政务、医疗卫生等应用领域中提高网络软件复用和软件开发的效率。

【技术实现步骤摘要】

本专利技术属于软件工程
,特别涉及对软件构件的通用性的改良。
技术介绍
目前金融、教育、电子商务、电子政务、医疗卫生等应用领域内,软件系统作为具体技术方案的一种实施途径,它连同计算机硬件、输入输出设备以及计算机网络基础设施一起,极大地促进了这些应用领域内的业务流程集成,提高了自动化水平。在这些应用领域,软件成为一种依附在计算机硬件之上的重要的技术方案组成部分,并对各应用领域实现的功能起着重大的作用。随着人们需要软件完成的任务越来越复杂,对功能的需求越来越强大,软件开发的任务也相应的繁重起来。同时,人们也发现,随着软件功能的增强,很多功能出现了重复开发的问题。因此就有人提出把软件系统中的公用部分做成单独的软件构件,可以在不同的软件系统中反复使用,既降低了开发成本,又提高了系统的可靠性和安全性。这即是软件复用技术。同时,随着Internet(因特网)应用深度的拓展,Internet已从一个简单的信息发布平台演化为分布式计算平台,人们不仅从网上取得信息,同时也在获取各种网络应用程序(服务)。这种面向终端用户的应用程序个性化定制也将是未来软件开发的主要模式之一。这就需要一种方法,利用分布在网络中一些可以复用的软件构件,通过这些构件之间的一致性访问实现对这些可复用构件的集成,从而生成一些符合要求新的程序(服务)。软件复用是在软件开发中避免重复劳动的解决方案,其出发点是应用系统的开发不再采用一切“从零开始”的模式,而是以已有的工作为基础,充分利用过去应用系统开发中积累的知识和经验,如需求分析结果、设计方案、源代码、测试计划及测试案例等,从而将开发重点集中于应用的特有构成成分。实现软件复用的关键因素(技术和非技术因素)主要包括软件构件技术(SoftwareComponent Technology)、领域工程(Domain Engineering)、软件构架(SoftwareArchitecture)、软件再工程(Software Reengineering)、开放系统(Open Engineering)、软件过程(Software Process)、CASE技术等以及各种非技术因素、且各种因素是互相联系、互相影响的,它们结合在一起,共同影响软件复用的实现。其中的构件技术是支持软件复用的核心技术。在本专利说明书中,构件特指具有相对独立功能和可复用价值的软件模块。构件技术的出现是对传统软件开发过程的一次新变革,它以面向对象概念为基础,是支持软件复用的核心技术。在软件开发过程中,构件的作用与电子设计中集成电路模块(IC)的作用类似,它隐藏功能的具体实现,对外提供严格定义的接口。因此有人形象地将构件称为“软件IC”,如图1所示。构件是一种具有相对独立功能和可复用价值的软件模块,其具有下列特征1)独立发布的软件实体;2)通过严格定义的接口封装某种特定功能;3)支持在构件框架中的即插即用(Plug-n-Play);4)支持与其他的构件的协作与组装,形成一个具有特定功能的软件系统;5)能够被实现相同一组接口的其他构件替换。为了支持软件复用技术,一些组织和公司纷纷推出自己的构件技术标准。目前,有影响的构件标准有SUN公司提出的Java构件标准JavaBeans、EJB,微软公司提出的COM、DCOM标准以及对象管理组织(OMG)CORBA3.0规范中的CCM标准。分别简述如下1)JavaBeansJavaBeans是SUN公司于1996年9月发布的一种基于Java语言的构件技术标准规范。它是构件技术与Java语言的融合。基于该规范,开发者可以编写一种与平台无关的Java构件。2)EJB(Enterprise Java Bean)EJB由SUN公司于1998年3月发布,它定义了开发、配置和管理服务器端Java构件的接口,允许用户通过可重用的服务器端构件开发大规模商业应用程序。目前,已经有包括Oracle、Borland、Tandem、Symantec、Sybase等多家公司宣布在自己产品中支持EJB。3)CORBA构件模型(CCM)CCM(CORBA Component Model)于1999年8月由对象管理组织(OMG)的相关任务组投票通过,它是CORBA 3.0规范的重要组成部分,定义了即插即用CORBA对象的创建、组装和发布框架。4)COM/DCOM构件COM/DCOM构件是微软公司提出的构件标准,COM/DCOM规范是一个二进制标准,它既不指定构件的实现语言,也不限制构件的实现方法,它通过提供了远程操作优化机制、授权访问机制等服务,以提高远程方法调用的效率和安全性。目前,Internet上出现了很多遵循上述构件技术标准的专门的构件库(如Alphaworks、ComponentPlanet、ComponentSource、Flashline等),提供了多种现成的可用构件,这些构件库形成了Internet上的构件资源,为软件复用,基于构件的程序开发提供了基础。而且随着构件技术的发展,网络构件库的规模仍在不断扩大,从而为基于构件的程序开发提供了坚实的基础,同时也为应用和服务的组合提供了构件资源。但是,目前各种类型的构件都使用自己特定的规范来开发,构件描述中对不同类型构件之间一致性访问缺乏必要的支持,造成构件搜索、获取以及分析、组装等构件处理活动的困难。主要有以下两点1)构件描述的外部性信息不充分,即不能清晰一致地说明构件“能够做什么”。现有的构件描述语言不能提供足够的构件组织资源和功能分类信息,构件的能力描述不充分且不一致,造成上层应用在构件搜索、获取方面的困难。2)、构件接口的行为信息不一致,即不能清晰一致地说明“怎样使用构件”。构件的行为是通过构件的接口来表示。目前,各类构件的接口描述严重依赖于构件实现的编程语言,造成描述不一致,不能很好地支持构件之间的相互访问。目前,要在分属不同构件模型的两个构件之间进行一致性访问,就必须在构件之间加一个特殊的转换中间件来交换信息。例如,要在JavaBeans构件和CORBA构件之间实现一致性访问,需要以下步骤(1).生成一个JavaBeans-CORBA的描述转换中间件(2).生成一个CORBA-JavaBeans的描述转换中间件;(3)JavaBeans构件发出的访问信息通过JavaBeans-CORBA描述转换中间件,转换成CORBA构件能够识别的信息。(4)CORBA构件接受这些信息,作出相应,并将应答消息发送给CORBA-JavaBeans的描述转换中间件,并转换成JavaBeans构件能够识别的信息。(5)JavaBeans构件接受这些信息,完成本次访问。同样,如果JavaBeans构件希望和一个ActiveX构件交互,还需要一个JavaBeans-ActiveX的描述转换中间件和一个ActiveX-JavaBeans的描述转换中间件,并按上述相同的步骤完成相互访问;这样,就使得在不同的构件模型之间进行数据交换和数据共享变得非常复杂和不易实现,由于每种构件模型的实现方式都不同,因此,每两种不同构件模型之间的通信都需要使用特定的描述转换中间件,而这些中间件并不是通用的,只能是针对某种特定类型特定的构件。用这种方式处理来处理n个构件间协同工作所需的交互,则需要本文档来自技高网...

【技术保护点】
一种构件封装和一致性访问方法,包括以下步骤:     1)在一台或多台计算机上设置构件库,并将从互联网获得的构件存入构件库中,构成构件库计算机;    2)在一台计算机上设置构件目录库,构成构件目录库计算机;    3)构件使用方从构件库计算机上提取构件,对构件进行封装形成用统一形式描述的构件封装件,并将该封装件组织存储在构件目录库计算机上。    4)构件使用方根据构件目录库计算机中的构件封装件信息对构件资源进行一致性访问。

【技术特征摘要】

【专利技术属性】
技术研发人员:张尧学方存好刘博周悦芝郭关飞韦理徐鹏志
申请(专利权)人:清华大学
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1