基于SCA的企业应用系统构架研究与实现

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:lin0929
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:本文通过分析目前企业信息系统建设中存在的一些问题,论述了建立企业应用系统构架的必要性。介绍了服务组件架构(SCA)的基本概念、特点及存在的优势,并结合具体案例详细描述了运用SCA构建企业信息系统构架的过程和策略。
  关键词:SCA;组件;服务
  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)15-30780-02
  Research and Implementation of Enterprise Application System Architecture based on SCA
  WU Pu-liang, HE Ke-you
  (College of Computer Science & Technology, WuHan University of Technology, Wuhan 430063, China)
  Abstract:After analyzing the problems exist in enterprise information system this paper point out the necessity of constructing enterprise application system architecture. Then, the basic conception, the specialty and the advantage of Service-Oriented Architecture (SCA) are explained. Finally, the Process and the strategy of designing enterprise information system architecture based on SCA are also given with an actual example
  Key words:SCA; Component; service
  
  1 建立信息系统构架的必要性
  
  随着通讯网络和信息技术的快速发展,中国企业的信息化意识也明显提高,信息化进程也正在加快。但由于信息技术的飞速发展,更是由于历史性的原因,信息化现状中也存在一些关键问题:许多中小型企业的信息系统大多处于相对孤立的状态,一个企业内部多种系统、多个应用并存,“一个部门一个服务器”的现象比比皆是,企业内部形成了不同形式的“信息孤岛”,部门之间的无法实现信息共享,数据一致性无法保证。“信息孤岛”已经成为阻碍企业信息化建设的最大障碍。
  要彻底解决上述问题,企业就必须建立一个灵活的、快速响应的应用系统架构,它可以包容现有的应用并满足未来新的应用需求,实现企业信息的高度集成,使得基于不同平台、不同语言实现的应用系统能够顺利地进行信息交流和数据共享。让应用系统变得更有弹性,能更快地响应业务需求,从而使企业获得更加明显的竞争优势。
  
  2 SCA和SOA的关系
  
  SOA(Service Component Architecture)即面向服务的体系结构,在SOA中,应用程序被按照业务功能组织成不同的单元(称为服务),服务的实现与平台和编程语言无关。可以将相关的服务进行组合而成为一个功能更为复杂的服务。服务之间通过定义良好的接口和契约进行互访,接口采用中立的方式进行定义,它独立于实现服务的平台和编程语言,通过接口可以让构建在各种这样系统中的服务以一种统一和通用的方式进行交互。
  SCA(Service-Oriented Architecture)即服务组件体系结构,它是SOA的一种实现形式,并为基于SOA开发应用程序提供了一套完整的开发规范。SCA简化了使用SOA构建应用系统的开发过程,它将传统中间件编程从业务逻辑分离出来,从而使开发人员集中精力编写业务逻辑,而不必将大量的时间花费在更为底层的技术实现上。SCA还简化了业务组件的开发、组装和部署流程,提高了系统的可移植性、可重用性和灵活性,得系统的可测试性也有很大的提高。
  
  3 SCA中的基本概念
  
  3.1 服务组件(Component)
  服务组件(简称组件)是SCA中的基本组成元素和构建单位,每个组件都实现了一定的业务逻辑,它是搭建应用系统的积木。
  组件向外界提供服务,同时也可以引用(Reference)其他组件提供的服务,提供服务和引用服务都是通接口来实现的,SCA组件的主要接口规范是基于WSDL的,为了给Java编程人员提供方便,部分服务组件也提供了Java接口。
  3.2 服务模块(Module)
  SCA通过服务模块(简称模块)对组件进行组装,模块由一个或多个具有内在业务联系的组件构成。把哪些组件放在一个模块中主要取决于业务需求和部署上灵活性。模块是SCA中的运行单位,由于模块是一个独立部署的单元,因此给应用的部署带来很大的灵活性。比如,只要保持模块接口不变,只需通过部署新的模块来替换原有的某个模块就可达到系统的升级,而且不需要影响应用的其它部分。
  3.3 入口点和外部服务
  模块之间往往存在相互调用的关系。另外,模块中的组件除了引用模块内部组件的服务外,有时还需要引用模块外部的服务,并且这些外部服务有可能不是基于SCA的。
  为满足这些条需求,SCA模块引入了入口点(Entry Point)和外部服务(External Service)两个概念,模块外部通过Entry Point调用模块内部组件的服务,而模块内部组件可以通过External Service引用模块外部提供的服务。入口点和外部服务都是通过绑定(binding)来实现与外界进行信息交互的。绑定方式有JMS绑定、Web Service绑定和SCA绑定等类型。
  
  4 基于SCA的企业信息系统体系结构
  
  图1展示的是某企业系统的体系结构,将系统粗粒度的业务功能封装为模块,每个业务功能又是由多个子功能组成,故将这些子功能封装为组件。模块是由多个组件组合而成的,如人事信息管理模块包含人事异动、招聘管理、考核管理等组件。
  为实现企业与处于同一供应链的其他企业进行信息交互,系统还应具有向外部发布服务以及调用企业外部服务的功能。图1的采购管理模块和销售管理模块,可以将服务通过WSDL在Internet上发布。
  
  5 基于SCA的信息系统框架实现技术
  
  以下是基于SCA的企业应用系统的开发流程:
  组件开发:组件的业务逻辑实现可以采用JAVA,或C#等语言进行编写。如所有组件都采用JAVA语言开发,则组件的服务可以使用Java接口进行发布。否则,组件的服务应当采用WSDL进行发布。组件的服务、引用、属性等信息都需要定义在一个后缀名为.componentType的XML文档中。
  组件组装:将一组相关的组件组装成为一个模块,模块的入口点和外部服务应当定义EJB绑定、WS绑定等多种绑定方式,使模块可以与外部各种类型的模块进行信息交互。模块包含的组件、入口点、外部服务等信息都需要在一个后缀名为.module的XML文档中进行定义。
  图1 基于SCA的企业应用系统体系结构图
  部署和发布:SCA的模块需要被部署在支持SCA容器中(run-time environment)才能够正常运行,目前SCA运行时环境主要包括Apache Tuscany 、IBM WPS(Websphere Process Server)6.0等。
  
  6 结束语
  
  SCA提供了规范的模块化设计方法,同时它继承了SOA的多种优点和特性,在构建企业应用时体现了明显的优势。运用SCA搭建的应用系统构架可以从根本上解决企业信息系统中存在的诸如“信息孤岛”等问题,从而使企业内部和企业之间能够更好地实现数据共享和信息交互。
  
  参考文献:
  [1] Michael Beisiegel, Henning Blohm. Service Component Architecture Whitepaper[M]. 2005.11.
  [2] 杨颖,杨磊. 基于Web Services的企业ERP系统集成模型[J]. 计算机应用研究,2005,22(3):210-213.
  [3] 谭永明,苏斌. 面向服务架构体系的研究[J]. 计算机技术与展望,2007,17(3):132-135.
  [4] Michael Beisiegel, Henning Blohm. SCA Service Component Architecture Assembly Model Specification[M]. 2005.11.
  注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
其他文献
摘要:WebGIS是将Internet技术应用于GIS开发的产物,是GIS发展的趋势之一。首先,比较了几种主要的WebGIS技术,并对基于Java技术的WebGIS系统开发方式作了总结。然后,阐述了基于Java Applet的实现机制。最后,讨论了基于Java Applet技术的WebGIS系统的具体实现。  关键词:互联网地理信息系统;小应用程序;WebGIS  中图分类号:TP311文献标识码
期刊
摘要:本文详细讲述了在C#语言中的参数的传递,包括了数值、数组与对象的传递,并区分了值传递、引用传递的不同。  关键词:值类性;引用类型;值传递;引用传递  中图分类号:TP312文献标识码:A文章编号:1009-3044(2007)15-30749-02  Analyzing the Parameter Pass in C# Language  BAI Xue-bing  (Zhejiang I
期刊
摘要:近期微软推出Microsoft .NET Pet Shop 3和4架构例子,其目的是用Microsoft .NET 实现Sun主要的J2EE蓝图应用程序Sun Java Pet Shop同样的应用程序功能并与之进行性能比较。该架构采用分层模型,有诸多优点,是开发者、架构师等人学习、研究的典范。该架构不仅能应用于.NET的BS架构的项目开发,同样也能应用于CS架构的开发。本文通过分析该架构,讨
期刊
摘要:IEEE 802LAN相对简单的设计在业界获得巨大成功,在企业内部网得广泛应用,但同时存在不容忽视的安全隐患,客户端设备只要连接到网络无需认证就可以访问网络内的资源是其中之一。随着网络技术的大量应用和推广,对网络安全的呼声越来越高。IEEE 802.1x协议是从网络接入层解决客户端接入认证的解决方案,已成为业界认同的标准。本文将讨论802.1x协议的工作原理,探讨在企业内部网的应用,并给出应
期刊
摘要:应用框架是当前软件开发中最有效的重用方式之一,它可以实现代码重用、设计重用和分析重用;同时,应用框架也可以很好地应对因需求变化而造成的软件更改,使系统具有更强的扩展性。  关键词:插件;应用框架;.NET平台;反射  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)15-30755-02  Plug-In Application Framework Develop
期刊
摘要:μC/OS-II操作系统之所以在10多年的时间里作为一个嵌入式实时的多任务操作系统得到了广泛的应用,原因之一是它的任务管理机制存在许多的优点。多任务运行的最大难点就在于多任务的调度。  关键词:μC/OS-II;多任务;任务调度  中图分类号:TP316文献标识码:A文章编号:1009-3044(2007)15-30794-02  The Task-scheduling Mechanism
期刊
摘要:合理运用Access报表内置的事件、方法、属性能够更深层次的设计报表,以解决一些报表难题。  关键词: Access;报表;技巧  中图分类号:TP312文献标识码:A文章编号:1009-3044(2007)15-30758-02  Application Skills of Access Reporting  LI Li  (Guizhou University Guiyang Medic
期刊
摘要:阐述了高校学生综合素质测评系统模块设计结构,重点介绍了数据库的关系模型及数据库物理设计技术,描述了主要模块功能和处理过程。系统前台使用Delphi开发语言,后台使用InterBase数据库,实现测评系统的信息化。  关键词:学生综合素质测评;Delphi 7.0;数据库;数据模块  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)15-30760-02  The
期刊
摘要:本文介绍J2ME技术中的RMS(Record Management System)、一些MIDP高级UI的使用以及文件流操作,比较了J2ME技术中查询应用的关键技术,并简析了一个手机号码归属地查询的实例,还介绍了开发过程中的一些心得和体会。  关键词:J2ME;RMS;MIDP;文件流  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)15-30690-03  B
期刊
摘要:介绍了采用maxDNA分散控制系统对国产300MW火力发电机组的MAX1000进行改造的应用;阐明了该控制系统的特色和在300MW机组控制应用中的结构;特别是对实现锅炉和汽机的协调所采用的直接能量平衡控制策略作了分析。  关键词:分散控制系统;改造;直接能量平衡控制策略  中图分类号:TP273文献标识码:A文章编号:1009-3044(2007)15-30733-02  The Appli
期刊