毕业论文(设计)基于CORBA 规范的群件开发平台的研究.doc
《毕业论文(设计)基于CORBA 规范的群件开发平台的研究.doc》由会员分享,可在线阅读,更多相关《毕业论文(设计)基于CORBA 规范的群件开发平台的研究.doc(9页珍藏版)》请在三一办公上搜索。
1、小型微型计算机系统MINI-MICRO SYSTEMS1999年第20卷第4期Vol.20No.4基于CORBA规范的群件开发平台的研究*孙艳春赵大哲刘积仁摘要本文针对当前群件面临的问题,提出了群件组件化的思想,以及基于CORBA规范建立群件开发平台.进而讲述了如何扩展CORBA规范去建立群件平台,最后详细描述了在“面向协同工作的工作流管理系统”的项目中,一个基于CORBA规范的群件开发平台的设计与实现.关 键 词CSCW群件CORBA软件组件分布式对象标准工作流管理系统分 类 号TP311THE RESEARCH ON CORBA-BASED GROUPWARE DEVELOPING PLA
2、TFORMSUNYanchunZHAODazheLIUJiren ( Software Center of Northeastern UniversityShenyang 110006)AbstractThis paper analyses the problems of current groupware development, then puts forward the thought of groupware component as well as a CORBA-based groupware developing platform. At the same time, the p
3、aper describes how to expend CORBA specification to create groupware platform, at last it describes the design and implementation of such platform under the project Cooperation-oriented Workflow Management System.Key wordsCSCWGroupwareCORBASoftware componentDistributed object standardWorkflow manage
4、ment system1引言由于当前的协作应用环境的复杂性及群体工作的复杂性,对于群件系统的开放性与集成性的需求越来越迫切. 而传统的群件应用开发仅仅是依赖客户/服务器方法,从零开始建立群件系统,没有提供对工作组的支持,而且欠缺开放性和集成性,这样就给群件开发人员增加了很多负担.为了改变这种现象,新一代的群件应用系统应以软件组件为基础,这就意味着群件系统包括独立开发的群件组件,不同的用户就可以按他们各自的需求而选取和重新组合相应的群件组件到他们的群件应用系统中.为了支持用户在分布式异构环境下协同工作,群件组件的创建应以分布式软件组件标准为基础.当今国际上有三大分布式软件组件对象标准,一个是由O
5、MG(Object Management Group)组织推出的CORBA(Common Object Request Broker Architecture),即公共对象请求代理结构.一个是Microsoft推出的DCOM(Distributed Component Object Model),即分布式组件对象模型.还有一个是Sun公司推出的用Java语言开发的分布对象模型RMI(Remote Method Invocation).在三种分布式软件组件标准中,CORBA规范在结构规范实现的灵活性、跨语言能力、跨平台实现及安全性等方面的综合对比中优于DCOM和 RMI,所以它成为实现真正的开放
6、式结构的应用程序的首选标准.在新一代的群件系统中,群件组件应以CORBA规范为标准.作为基于抽象的对象模型的分布式对象标准,CORBA规范具有分布式软件公共汽车的特点,用于分布式异构环境下的基于对象的软件组件间的通信与系统集成,是表达应用系统及部件之间有效通讯的连接技术,CORBA规范允许应用程序不必考虑硬件与软件系统的实现和位置就可以相互通信,因此基于CORBA规范建立群件开发平台极大地满足了CSCW(Computer Supported Cooperative Work) 系统中的分布透明性思想.2当前群件开发中存在的问题群件作为支持一组成员协同工作的计算机软件系统,它为人们提供了协作的环
7、境和工具,同时还提供了对共享环境连接的接口.群件的目的是在通讯、合作和协调等方面协助群体工作.虽然当前许多群件如lotus notes被广泛使用,但群件开发中还存在许多问题,其中有技术方面的问题,也有受人为因素影响而产生的问题.1)由于缺乏合适的通讯抽象,群件的开发者不得不把很大一部分精力放到底层的通讯细节,而不能集中于高层的群件应用问题.2) 由于大多数的群件产品缺乏标准的接口和抽象, 导致协作系统之间不能互操作. 由于群件的人机接口与单用户系统不一样,它是多用户接口,应能体现群体活动及多用户控制的特征.尤其在分布式多媒体网络环境下,要实现开放集成的多用户、多媒体信息和多窗口的应用程序接口技
8、术,以便于应用集成、应用管理及用户的灵活使用.3) 当前许多群件产品缺乏良好的协调机制.而协调机制是将时间上分离、空间上分布而又相互依赖的多个协作个体的活动有机地联系起来的枢纽,所以群件能否成功地支持协作活动,在很大程度上取决于有无良好的协调机制.协调控制的复杂性应受应用性质的影响,具体的协调控制要求包括路径选择、行动的时序安排、存取控制、一致性检验和并发控制、冲突解决等方面.4) 许多合作工作需要易于理解和灵活使用的技术支持,它的范围从支持同步合作到支持异步合作,而且,多种媒体应能被支持,从离散的媒体如文本和静态图象到连续媒体如音频和视频.但目前大多数群件的合作形式比较单一,而且欠缺多种形式
9、的媒体支持.5) 同单用户应用程序相比,群件应用的开发包括许多附加的技术问题,从分布式系统的支持如复制、一致性和并发机制到通信协议.6) 由于群件开发的广泛需求和复杂性,人们对开放集成的群件的需求越来越高.但到目前为止,用户经常只能支持很有限的合作工作,而且在大多数的群件应用中缺乏开放性和集成性.7) 群件的设计也受一些人为因素的影响,如群体中的个人的工作方式和风格、群体编制、群体工作设计及协同工作的群体动态等.而在群体工作过程中,许多人与人相互之间的交流方式、人与计算机的交互方式还不太成熟完善.3群件的组件化传统的群件设计因为缺乏复用和重组能力,已经满足不了现代信息技术快速发展的需求.就群件
10、开发人员而言,用传统的群件生产方式进行群件开发,开发周期长,效率低,可维护性、可靠性和重用性较差,因此,必须寻求一种新的群件开发模式.基于组件的群件开发模型是一种新型的群件生产方式,这种模型基于分布式对象技术,用群件组件来组装和构造群件应用系统.由于组件是完成通用或特定功能的可重用的软件模块,它支持对象意义上的封装性、多态性及继承性,而且遵循二进制代码标准,它可以在分布式异构环境下被调用并支持互操作.基于组件的系统既能提供独立的工具,又能提供集成和移动性.所以由独立开发的群件组件构成的群件系统提供了对当前群件开发中的问题的解决方案.在CSCW应用系统中,用户可以根据各自的需求选取相应的群件组件
11、,并把它们集成为一个恰当的群件应用环境,这需要在不同的群件组件间有良好定义的程序接口,使组件间可以方便地协同工作.每个群件组件都包含定位在不同连接的计算机系统上的交互工作组件,这需要很好定义的群件组件通信及互操作协议,而且要求接口和协议都是开放和标准的.根据群件功能的不同,我们可以把群件分为以下5类:3.1高效的通信群件为了支持位于不同地点的协同工作的群体成员方便、快速地交互,我们需要高效的通信群件如支持图形、图象和声音的高级Email系统,集成与工作站和个人PC机的实时桌面视频会议系统,大型视频屏幕系统等.3.2共享工作空间群件在协同工作时,人们需要良好的共享工作空间.CSCW领域的专家们正
12、在开发远程屏幕共享设施、配置个人屏幕共享和大型公共投影屏的先进会议室、提供制图、列表、综合电子文档及存储、打印等多种功能的智能面板、基于Internet的WEB浏览器等共享工作空间群件.3.3共享信息群件群体工作需要使用共享信息,工作过程中也会产生大量的共享信息,因此需要为协作的群体成员提供支持共享信息的输入、存储及检索的工具.目前已开发的共享信息群件包括:面向多媒体、多用户的超文本系统;共享光盘系统及各种类型的多用户数据库等.3.4群体活动协调群件协作的群体成员需要对工作目的、方法、程序及彼此的任务达成共识,以实现协调、高效的工作.群体活动协调群件为特定的群体活动提供支持,包括过程处理/工作
13、流系统、共同执笔工具、共同决策系统及支持协作的CASE工具等.3.5智能代理群件协同工作的参与者不一定都是人,当某种特殊场合下,可以用智能代理群件来代替某一工作组中的成员,而负责完成某些特定的任务或提供一些特定的服务,它们的行为在其他用户看来就象真正的用户一样.4使用CORBA建立群件开发平台群件的创建是一个复杂而艰巨的工作,这主要是因为群件通常需要集成多种模块,如用户接口管理模块、分布式交互模块及多用户数据库等.在早期的群件系统的开发中,这些模块的集成是由群件应用的编程人员来完成的,这样就严重影响了他们对群件应用系统的开发.为了实现组件化群件的全部潜力,我们需要基于高层群件软件结构的开放的平
14、台去支持群件系统的开发.高层群件软件结构不仅可以区分不同类型的群件组件,也负责它们之间的组合和交互.CORBA是当前最广泛使用的分布式对象计算标准之一,采用CORBA规范可以有效地扩展群件的广度和深度,而且提高了群件的伸缩性.它对群件开发平台的建立提供了以下便利条件:(1) CORBA为分布式应用提供了强有力的支持,通过CORBA规范中的ORB(对象请求代理)可以实现分布式对象间的通信和互操作,这样我们可以通过ORB包来实现许多群件系统如多媒体视频会议系统和共同编辑系统中的同步通信.另外,ORB实现了对象实现的位置透明性、实现方式的透明性,所以基于CORBA规范建立的群件组件可以真正实现CSC
15、W系统中的透明性思想.(2) CORBA规范中的接口定义语言(IDL)使得群件系统能很方便地集成用不同语言实现的软件模块,这样就跨越了群件系统中的语言实现障碍.(3) CORBA规范为在分布式异构环境下开发可重用的、可互操作及功能强健的软件组件提供了基本框架机制,其中ORB可以作为一个统一的集成中介把不同的应用和必要的信息包装为用CORBA接口定义语言(IDL)描述的并相互通信协作的对象集.这样就可以集成许多已有的群件系统如字处理系统、图形编辑系统等,一方面极大地方便了群件开发人员,另一方面也保证了已有软件的使用的连续性.(4) 在 CORBA 服务中的公共对象服务规范加强了面向多进程的事务处
16、理和并发控制机制.这有利于在分布式的CSCW应用系统中,群件组件同步地存取共享资源,从而大大加强了多用户群件系统的可靠性.(5) 另外,CORBA规范提供了一些内在的容错机制去确保在对象的生命周期中对象实现的可用性.例如,在很多的CORBA实现中,ORB一启动,就开始保存当前所有服务器对象和相应的客户方的状态信息以及用于恢复对象所需的信息.这些信息有助于在分布式的群件系统中进行可靠的容错和快速的任务恢复.虽然CORBA对群件组件提供了强有力的支持,但它也象其它的分布式对象计算平台一样,缺乏对群件问题的充分支持,如它缺乏对群件系统中的多点通信及多媒体处理等的支持.当今对基于CORBA的群件的研究
17、及对基于组通信的群件的研究表明把CORBA、组通信和群件结合在一起而建立群件组件的开发平台是未来分布式异构环境下CSCW系统结构平台的一大发展方向.5扩展CORBA规范去支持群件组件对于群件组件的开发,CORBA规范是一个很有发展的软件平台,但当前的CORBA规范和CORBA服务还未对群件组件的快速开发提供充足的支持.这是因为由CORBA服务提供的大多数服务如命名服务、生命周期服务、永久对象服务等都是低层的服务.这些服务虽然对于群件开发是很重要的,但是直接基于这些服务开发群件产品是一个复杂而费时的工作.因此,CORBA的基本服务应增加面向群件的服务,而且补充一套支持CSCW应用的开发工具.我们
18、应该为高效的通讯群件组件、共享工作空间群件组件、共享信息群件组件及组工作协调群件组件提供CORBA服务支持.而且,为了实现基于CORBA的群件开发平台,CORBA规范应该增加对对象组的支持,而且它应提供ORB对对象组的支持;另一方面,CORBA规范应加以扩充,提供根据不同的需求而动态重组群件组件的功能模块.对象组可以把共享工作空间物化为在用户站点间被复制的一组共享对象.每个站点拥有相关用户正在访问或处理的对象的复制对象.对于给定对象的复制对象集构成了一组对象组.对象的复制规则由组通信服务来具体实现.这样,共享对象就被映射为对象组,而对象上的操作就映射为相应的多点播送操作.用户通过动态地加入相应
19、的对象组而去访问对象,在对象组中的对象的当前状态的传输对于本地的复制对象来说是透明的.不同的共享对象有不同的并发复制需求,这就意味着一个同步协作的工作组的共享工作空间不是由一个对象组构成的,而是由一组对象组组成的,这就需要许多服务如命名/绑定服务、对象组的创建和管理服务及使用户活动被认知等的支持.6一个基于CORBA的群件开发平台的设计与实现在面向协同工作的工作流管理系统的设计和实现中,我们利用构造模型实现了事物处理过程从现实世界中的原形向计算机可处理的形式化定义的转换,构造模型为工作流程中的每一个独立事件定义了必要的输入和输出信息、相关事件的运行顺序及必要的事件处理机制.所建模型标识了三个重
20、要属性支持协作工作属性、支持协调的属性、处理异构和互操作的属性.作为一个群件应用系统,工作流管理系统包括不同的群件组件.我们开发了一个基于CORBA规范的群件开发平台去支持群件的建立、管理和重用等功能.它是利用代理机制、面向对象编程设计方法和CORBA规范等技术来实现的.基于此平台的工作流管理系统实现了接口的管理、共享数据库的管理、组件的协调、管理、可视化和版本管理等功能.这样整个工作流管理系统使得信息模型易于扩展、功能易于重组,从而系统真正实现了开放和跨平台.图1就是我们实现的基于CORBA的群件开发平台的系统结构框架.图1一个基于CORBA的群件开发平台的结构框架基于CORBA的群件开发平
21、台以分布式网络、Java和分布式封装技术 - CORBA为基础,我们使用CORBA ORB和CORBA服务为基本的中间件去开发群件平台.CORBA服务包括多种不同的服务如命名服务、永久对象服务、生命周期服务、属性服务、并发服务、安全服务、异常服务、事件服务、事务处理服务、认可服务等服务.基于中间件技术,我们实现了群件组件管理器,它负责远程和本地群件组件的查询、管理和调用机制.在此基础上,我们建立相应的通信、共享工作空间、共享信息、群体活动协调和智能代理等群件组件.由于群件应用系统经常是几种群件组件的有机集成,所以我们又在这一层次上设计了群件集成平台,它主要由三部分组成,其中群件组件重组代理的建
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业论文设计基于CORBA 规范的群件开发平台的研究 毕业论文 设计 基于 CORBA 规范 开发 平台 研究
链接地址:https://www.31ppt.com/p-3974168.html