基于COM + 的分布式可重构信息系统.pdf_第1页
基于COM + 的分布式可重构信息系统.pdf_第2页
基于COM + 的分布式可重构信息系统.pdf_第3页
基于COM + 的分布式可重构信息系统.pdf_第4页
基于COM + 的分布式可重构信息系统.pdf_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第4卷第3期2005年6月江南大学学报(自然科学版Journal of Southern Yangtze U niversity(N atural Science EditionVol.4No.3J un.2005文章编号:1671-7147(200503-0227-04收稿日期:2004-09-21;修订日期:2004-10-09.基金项目:国家863计划项目(2003AA412110;杭州市科技计划项目(2003131E25资助课题.作者简介:谷应鲲(1979-,男,湖南耒阳人,控制理论与控制工程专业硕士研究生.3通讯联系人:宋执环(1962-,男,安徽合肥人,教授,博士生导师.主要从事基

2、于数据驱动的过程建模、控制与基于COM +的分布式可重构信息系统谷应鲲,宋执环3,杨春节(浙江大学工业控制技术研究所,杭州310027摘要:提出了一种便于系统重构的基于COM +的分布式3层架构,并把封装了不同类型企业逻辑的COM +组件发布到该架构中,当业务流程变化时,重组或修改架构中相应组件实现系统重构.以库存管理信息系统中采购入库业务流程的重构实例,验证了此重构方法的可行性.关键词:组件对象模型;分布式;3层架构;可重构信息系统中图分类号:TP 32文献标识码:ADistributed R econf igurable Information System B ased on COM +

3、GU Ying 2kun ,SON G Zhi 2huan 3,YAN G Chun 2jie(Institute of Industrial Process Control ,Zhejiang University ,Hangzhou 310027,China Abstract :The variance of business p rocesses drives reconfiguration of information system.It is favorable for reconfiguratio n of information system to separate and en

4、cap sulate t he variable gene and t he stabile gene in a enterprise.The paper present s a dist ributed t hree 2layer Architect ure base on COM +t hat is convenient for system s reconfiguration ,p ublishes t he COM +t hat encap sulates different type enterprise logic in t he Architect ure when busine

5、ss process variates ,and reconfigure system t hrough recombining or modifying corresponding component in t he Architect ure.The reconfigurable met hod is proved to be feasible by reconfigurable example about p ut 2in business in inventory management.K ey w ords :COM +;distributed ;t hree 2layer arch

6、itect ure ;reconfigurable information system美国工业界认为,基于组件的系统具有在分布式异构计算环境下的互操作能力,因为松散的耦合和模块化组件可使制造系统对内部或外部的各种扰动具有适应性1.到目前为止,已提出的可重构方法较多,如“ECA P ”2、“Holon ”3和“多Agent ”4等,然而各种方法的具体实现和应用却不多见.微软在1999年末推出的Windows DNA(Dist ributed interNet Architect ure 是一个可扩展的分布式、多层次、面向组件的企业应用总体方案,该方案以COM +为核心.基于组件对象模型(COM

7、 +的分布式信息系统的可重构体现为:当企业中的业务流程发生变化时,系统中相应的业务组件(COM +能够重新组合而产生新的功能、过程或更高层次的整体.文中以医药企业中的库存管理子系统为例,分析如何利用COM +和分布式对象技术完成可重构信息系统的开发.1COM +概述COM +作为基于M TS 和COM 扩展的一组服务,包含了负载平衡、对象池、队列组件以及组件配置等.COM +的底层结构仍以COM 为基础,但在应用层则更多地继承了M TS 的处理机制,包括M TS 的对象环境、安全模型、配置管理等.COM/DCOM/M TS/COM +服务的架构如图1所示5,6.为了使用COM +提供的这些服务

8、,首先需要创建一个组件对象;然后创建一个COM +应用程序,再把要用的组件对象以即插即用的方式加到这个COM +应用程序中;最后设置每个组件对象的属性,指出该组件需要其执行环境(即COM +应用程序提供的服务.这是一种面向属性的编程方法,开发人员可以专注于业务逻辑,而不是编程结构和技巧, 这样有利于软件自身的重构.图1COM/DCOM/MTS/COM +服务架构Fig.1COM/DCOM/MTS/COM +server architecture2可重构信息系统信息系统的可重构性是指在系统原有软件资源的基础上,通过调整系统的结构与功能使系统快速适应需求变化的能力.可重构信息系统包含了两个核心概念

9、:“变化”和“重构”.“变化”是“重构”的来源和驱动力,“重构”是对“变化”的响应.根据重构所对应的不同的抽象层次,可以把重构按抽象层次由高到低分为业务过程重构、设计重构和实现重构(即代码重构.较高层次的重构是较低层次重构的来源和驱动,而较低层次的重构是对较高层次重构的支持和实现7.信息系统的重构层次及支持技术如图2所示.不同的软件技术有着不同的解决方案,其重构的机制也不同:面向对象(Oriented Object ,简称OO 技术利用对象的多态、组合以及设计模式等机制支持系统的重构;而组件化技术则通过组件在对应框架上即插即用的软总线技术实现应用,再通过组件的演化、替换及重组等方式支持重构.

10、组件技术实质上是一种更高层次的面向对象.图2信息系统的重构层次及支持技术Fig.2R econf igurable hierarchy model of inform ationsystem建立一个可重构的信息系统,包括3个步骤:1明确重构的对象和基础,即分析企业运营活动中的组成因子,对经常变化的因子和基本不变的因子加以分类,并在软件中进行抽象、表达;2分析可重构信息系统的实现技术,找到一种适合于可重构信息系统的软件体系架构,并将可重构对象在已确定体系架构中进行合理组合和分布;3建立信息系统可重构软件的架构,并创建架构中的可重构对象.3基于COM +的3层分布式架构图3是目前常用的3 层架构.

11、图3目前常用的3层架构Fig.3The Popular Three 2layer Architecture这种架构具有企业逻辑独立、数据安全性好、负载均衡等优点.然而,透视企业业务活动本质特征可以发现,企业中经常变化的部分主要在其业务流程方面,而基本不变的则是其制造资源(如物料、人员、设备等和为完成业务流程所涉及的一系列有序活动/功能(具有“原子性”,如采购入库时,对入库表单的“插入”功能8.但是图3中这种架构的业务服务层在封装企业活动中的各种企业逻辑时,822江南大学学报(自然科学版第4卷并未根据各种企业逻辑的不同特点进行分离和进一步的封装.其结果导致各种企业逻辑相互交错,当企业逻辑中的部分

12、甚至一小部分发生变化时,整个业务服务层中受牵连的模块都需要重新修改以支持重构的业务,这样不利于软件的维护和重用.为了改善这一状况,文中在常用的3层架构的基础上提出基于COM +的分布式3层架构(见图4 .图4基于COM +的分布式3层架构Fig.4Distributed three 2layer architecture b ased onCOM +其中,3个层次的功能分别为:1用户表示层:处理与用户交互的所有功能.提供可视化的用户界面,把用户的操作转化为对业务接口的调用,并将结果返回客户.2业务服务层(应用服务器:运行在COM +执行环境中,可配置各组件的属性.(1业务逻辑组件:根据企业业务

13、间的相关性,把企业逻辑划分为多个企业对象(如系统管理、单一查询、库存管理、综合查询和呆滞库存分析等,每个企业对象即为一个COM +组件;(2数据访问组件:主要封装各类应用数据请求并产生相应更新SQL 语句.把对数据库访问功能做成一个COM +组件,负责每个业务逻辑组件对数据库检索和更新.3数据服务层(即数据库服务器:存储并管理企业数据.在应用文中提出的3层架构建立可重构信息系统时,首先采用组件技术标识企业活动中的基本不变部分和经常变动部分,然后把这两部分分别封装(基本不变部分封装成“数据访问组件”,经常变动部分封装成“企业逻辑组件”,并采用分布式对象计算模型将每个组件发布到中间层的应用服务器上

14、.当流程变化时,在业务服务层上修改或重新组合相关组件(这种操作独立于客户端,由客户调用相应组件的实例,实现流程的重构.4重构实例应用图4的基于COM +的3层架构,结合某企业库存管理系统中采购入库流程实例,具体说明当流程发生变化时,重新整合企业服务层中的COM +组件,以实现软件的重构.该库存管理系统采用3层架构,即用户表示层、企业服务层和数据服务层.用户表示层是用Delp hi6.0开发的一个瘦客户端;应用服务层由一系列运行在COM +执行环境中的COM +组件(包括企业逻辑组件和数据访问组件组成;数据服务层是由数据库SQL Server2000进行存储和管理的企业数据.与业务服务层和采购入

15、库流程相关的COM +组件如图5所示.图5和采购入库流程相关的COM +组件Fig.5COM +components correlative with buy 2in flow各组件功能分别为:1数据访问组件:(1Pt dmInvenInMaster.td 2mInvenInMaster 用于访问采购入库单中的主单据;(2Pt dmInvenInDetail.t dmInvenInDetail 用于访问采购入库单中的明细单据;(3Pt dmInven 2Rcv K ind.t dmInvenRcv K ind 用于访问和采购入库有关的收发类别;(4Pt dmInvenSupplier.t dm

16、In 2venSupplier 用于访问采购入库中的供应商;(5Pt dmInvenSubCorp.t dmSubCorp 用于访问发生采购入库业务所在的子公司;(6Pt dmU8Account.t dmU8Account 用于访问和采购入库业务相关的财务帐套;(7Pt dmWare 2House.t dmWare House 用于访问发生采购入库业务所在的仓库;(8Pt dmInvenU ser.t dmInve 2nU ser 用于访问仓库部门的人员.(以上COM +均支持事务2企业逻辑组件:(1PtoQueryInvenIn.to 2QueryInvenIn 即调用数据访问组件获得采购入

17、库业务发生时所需的所有信息(支持事务;(2Pto 2922第3期谷应鲲等:基于COM +的分布式可重构信息系统QueryInvenU ser.toQueryInvenU ser调用组件Pt d2 mInvenU ser.tdmInvenU ser即获得可以登录库存系统的人员列表,并在登陆后对登陆人员的权限进行设置(支持事务;(3PtoUpateInvenIn.toUp2 dateInvenIn即调用数据访问组件对采购入库单的主单据和明细单据进行更新,添加、删除、修改操作(需要事务.在项目实施初期,仓库部门和其他部门相对较为独立,仅需把所有的采购入库单录入系统中,能提供查询统计功能即可,无需和仓

18、库部门的上游(供应部门以及下游(生产部门发生数据的交互.此时,数据访问组件和企业逻辑组件已能很好地完成相应的业务.但是,随着企业管理制度的日趋完善,仓库部门和供应部门的信息需要交互,仓库部门的每一笔采购入库业务必须以供应部门的订单为依据,即采购入库单中的供应商、入库物料、入库数量等信息必须和供应部门的采购订单相吻合.对于采购入库流程的变动,首先增加一个数据访问组件Pt d2 mOrder.t dmOrder,用以访问供应管理系统中的采购订单;然后在企业逻辑组件PtoQueryInvenIn.to2 QueryInvenIn中加入对Pt dmOrder.t dmOrder的调用,以获得供应部门采

19、购订单的数据;最后,修改企业逻辑组件PtoUpateInvenIn.toUp dateInvenIn,把查询到的采购订单中的部分敏感数据自动导入采购入库单中,并予以锁定.这样只要加入一个数据访问组件,同时局部修改两个企业逻辑组件,就完成了业务流程的软件重构.重构后的系统保证了采购订单和采购入库单中敏感数据的一致性,同时也大幅度减少了采购入库单的输入量.实现上述重构后,供应部门(采购订单的制定者提出了希望能够监测到每个采购订单的执行情况.即及时获取每个采购订单已经到货且入库的数量和到货时间等信息,以便为其下笔采购订单的制定以及供应商评价等业务提供依据.对于采购入库流程中功能扩展的需求,首先添加一

20、个数据访问组件Pt dmInvenInMsg.t dmInvenInMsg,用以给供应部门发送某采购订单到货的消息,即把每一笔采购入库业务中供应部门关心的数据以消息的方式实时地通知供应部门;然后修改企业逻辑组件PtoUpateInvenIn.toUp dateInvenIn,在添加(修改、删除了一张采购入库单的同时,调用数据访问组件PtdmInvenInMsg.t dmInvenInMsg把相关数据以消息形式通知供应部门.这样仅增加一个数据访问组件,同时局部修改一个企业逻辑组件就完成了新需求的软件重构.重构后的系统,由于企业逻辑组件PtoUpateInvenIn.toUpdateInvenIn被设置成“需要事务”,而被调用的数据访问组件Pt dmInven2 InMaster.t dmInvenInMaster、Pt dmInven2InDetail. t dmInvenInDetail和Pt dmInvenInMsg.t dmInven2 InMsg被设置成“支持事务”,因此,添加采购入库单(包括主单据和明细单据和将到货信息通知供应部门这两个业务实际上是在一个事务中处理,从而保证了数据在仓库部门和供应部门的完整性和一致性.5结论1企业流程的变更是信息系统重构的原因和驱动,企业运营过程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论