`
gaofen100
  • 浏览: 1198522 次
文章分类
社区版块
存档分类
最新评论

SOA的十大技术理论体系

 
阅读更多

实践论认为:从实践提升到理论,再由理论指导实践,由此向前发展。目前SOA的发展的情况正是如此,通过不少实践,SOA的模型己经被公认为标准规范,目前是正需要进一步总结上升到理论的时候了。

  当前国内要发展SOA主要有三方面工作:方法、工具和环境。方法是工程技术,由基础理论来指导提出的。所以一门科学必需要包括:认知科学(哲理)、工程技术和方法、最后是理论。

  架构的演化过程

  SOA是从面向对象、构件架构等逐步发展完善,且相互依托、相互补充、又各自适应不同范围,因此在讨论SOA理论时,要了解它是如何演化过程来,继承了哪些理论体系,其适应度如何。

  结构编程方法

  40年前国际上发生了软件危机,如IBM公司开发一个操作系统,或美国的航空公司开发飞机订票系统,都花费了上千人数年的工作量。它开发周期长、而开发出来的产品却是错误很多,难以维护和适应修改。

  正在此时,一位荷兰的物理家E.W.Dijkstra提出了一种结构程序设计方法,他认为:人的智力是有限的,采用数学或物理学的思维方法,用枚举、抽象、归纳、类比等思维方式简化问题。

  由于我也是数学系毕业的,我拜读了他的所有论文,就编写一本著作《编程方法学》。用此方法扩展到软件设计中时,称为结构化分析和结构化设计(SASD)”

  所谓结构程序设计方法,就是基于面向对象设计方法的早期蓝本,侧重於解决程序正确性的编程的方法,以此为基础建立了软件工程这门学科,建立了编程的基础理论体系,也是第一个技术与基础理论体系。

  面向对象的可重用理论

  我们都知道由面向对象发展到面向构件,由面向构件再发展到面向服务,因此它们的认知观和基础理论都是息息相关的。

  解决大型软件的开发效率和质量除了要解决编程的正确性外,还必需解决开发周期长、复用性差、成本高、文档多以及难以适应系统演化等问题,这些问题十多年来仍旧困惑着这门学科,软件危机仍未解决。

  人们的知识是从一个定理、一个原理逐步积累起来的,社会是依靠知识的不断积累发展的。然而编制软件每次却都是从零开始,这是造成软件危机的根本原因。由此提出了编程工作是否也可以重用以前成功的经验和程序呢?整整经过十多年的探索,到七十年代才获得成功。

  我曾经用此方法设计了一个大型操作系统,这套方法和理论在产品开发和科研领域方面用得很多,因此我称它为第二个技术与基础理论体系。

  面向构件和架构

  鉴于面向对象的缺陷,三位面向对象的奠基人联合起来,创建了UML统一建模语言。UML为软件开发和SOA的产生起到奠基和里程碑的作用。

  UML主要理论成果是:统一面向对象的基本概念,并引进了许多新的概念,认为软件开发的过程实质上是从抽象的模型逐步细化,过渡到具体的实现,其中间的每个阶段都是实现了某一抽象模型,UML为此提供了建立模型的工具。

  用直觉的图形来建立模型,从此软件专家就有了自己的工具,正如音乐家有了五线谱工具那样。为适应软件的多变性,提供了演化的概念。

  实际上此建模理论是第三个技术与基础理论体系,它为演化到构件和架构概念奠定基础理论模型。

  由于工程上的实施缺乏开发规范,在技术上要求开发人员的素质较高,很少见到真正运用UML的方法于实际的工程开发应用软件中,最大的问题是被开发出来的软件难以演化,而软件要能适应变化是客观存在的。

  为此发展出单纯重用的构件和架构技术及其理论体系。在1998年日本京都召开的基于构件的软件开发(CBSD)”国际专题学术会议上,一致认为软件开发技术离不开构件和体系结构。软件体系结构现简称架构

  在此之前的软件架构都采用层次结构的架构,直到分布式系统提出了用户端/服务器模式后,才产生对架构的研究,出现了构件和架构,也就是第四个技术与基础理论体系。

  卡内基·梅隆大学为软件的架构和框架建立了扎实的基础理论,软件体系结构是软件系统的高级抽象,体现了软件设计思想。反映了系统开发中最早的决策,明确了系统有哪几部分组成,它们之间是如何交互的;进一步影响到资源的配置、团队的组织以及产品的质量。系统的成败也在于体系结构。

三层体系结构分布式系统

  三层体系结构是由二层结构的胖终端中的应用构件独立出来组成了应用层。为解决分布式系统中的各种潜在复杂性,提出了中间件技术及其理论,称为第五个技术与基础理论体系。

  八年前我的最<personname w:st="on" productid="后一位">后一位</personname>博士生王文军的学位论文是《分布式系统的联邦结构》,即面向服务的架构,但未被应用和发展。而两年前IBM公司提出SOA后却很快被广泛接受,其原因可从客观需求上和技术成熟度上三方面来叙述:

  其一,客观上需要,随着网络普及化,用户越来越迫切需要将现有多个应用系统集成,以能实现更强的信息处理功能。如电子商务的供应链、智能交通、电子政务、数字地球等已是本世纪发展的热点。Gartner预计,到2008年基于件产品将占领70%的市场份额。

  其二,面向对象和构件架构的基础理论和技术已趋向成熟,发展到统一建模语言,提供建模工具。中间件集群理论己趋向成熟,并提出了中间件Inter Bus技术。

  其三,浏览器技术普及,己成为行业标准,奠定了SOA的基础理论和技术规范,由此已是水到渠成,使SOA拙壮成长。

  SOA在实现中的组成部分

  SOA的体系结构仍旧是三层或N层结构,但对异构平台各层之间的联系,不是用CORBAJ2EE.NET的方式,而且用WBDLSOAP来实现,它们的概念简单统一。

  目前都是采用嵌入ESB企业服务总线的平台来实现,ESB是一个中间件群,确保系统实现了服务接口、各种中间件以及松耦合的三个方面功能,因此称它为第六个技术与基础理论体系。

  另外,普遍采用BPEL(业务过程执行语言)来描述用户需求,由BPM(业务过程管理平台)来解释执行,构成了第七个技术与基础理论。

  SOA的主要优点

  1. 利用现有的资产。方法是将这些现有的资产包装成提供企业功能的服务。组织可以继续从现有的资源中获取价值,而不必重新从头开始构建。

  2. 更易于集成和管理复杂性。将基础设施和实现发生的改变所带来的影响降到最低限度。因为复杂性是隔离的,当更多的企业一起协作提供价值链时,这会变得更加重要。

  3. 更快地整合现实。通过利用现有的构件和服务,可以减少完成软件开发生命周期所需的时间。这使得可以快速地开发新的业务服务,并允许组织迅速地对改变做出响应和缩短开发时间。

  4. 减少成本和增加重用。通过以松散耦合的方式公开业务服务,企业可以根据业务要求更轻松地使用和组合服务。

  5. SOA业务流程是由一系列业务服务组成的,可以更轻松地创建、修改和管理它来满足不同时期的需要。

  建立软件开发方法和规范

  构件构架理论体系的应用是适用于构件技术创立的,当发展到面向服务的体系结构时,必需加以修改和扩充,现在称为模型驱动MDD的需求工程建模理论,可以称它为第八个技术与基础理论体系。

  另一个构件的领域工程将要扩充成SOA的参考结构,这是第九个技术与基础理论体系。SOA的门户将要反映SOA所有功能的表现层界面,为此如何将最新的WEB2.0SOA给合,这是第十个技术与基础理论体系。上述三方面是SOA在实际应用时必需要建立的理论和技术。

  SOA的发展状况

  IBM公开宣布SOA计划不到三年,去年年底,BEA公司、甲骨文公司、惠普等所有名牌公司都在中国发布了关于SOA的消息。

  由于SOA模型统一,因此都是把本公司的中间件产品向SOA靠拢,提供开发和运行SOA系统的相应工具和环境,以争取市场的份额。

  北京市市科委将为SOA核心平台研发提供资金,由软件行业促进中心统一管理,促进北京市IP行业发展。其方案如图所示。

  随着SOA理论的发展,各种与SOA有关的规范和标准将不断出现,如SOAPWSDLESBBEPL语言等,它们的出现象征着SOA将逐步走向成熟。我们更应注意着各家公司所开发的工具和环境产品,有助于SOA的大力推广应用。

  上述十大理论体系应该认真掌握、灵活应用,更应该不断刨新。总之,SOA理念清晰、技术趋向成熟,实现不难、做好不容易,我们不要做重复工作,应经常交流,尽量少重复,一定能达到国际一流水平。

  作者简介

  仲萃豪是我国第一代知名软件专家和学术带头人之一,率先开展对编译程序、编译语言、操作系统、支撑软件、应用软件诸领域有关课题的研究,1993年开始转入研制开发大型复杂应用软件和大型分布式系统。

  在国内最早提出基于构件技术的实现方法及其中的关键技术。为我国软件事业的发展和人才培养做出了重要贡献,先后获得了八个重大奖项。曾任中科院软件所学术委员会主任、室主任、博士生导师、北京市政府顾问、国家科技攻关重大项目——CASE 工具环境总体组副组长,并承担多项国家科技攻关专题项目。

分享到:
评论

相关推荐

    SOA架构十大技术理论

    SOA架构十大技术理论 当前国内要发展SOA主要有三方面工作:方法、工具和环境。方法是工程技术,由基础理论来指导提出的。所以一门科学必需要包括:认知科学(哲理)、工程技术和方法、最后是理论。

    面向服务架构(SOA)中南大学SOA原理与技术 00 课程简介(共66页).ppt

    面向服务架构(SOA)中南大学SOA原理与技术 01 SOA技术概述(共74页).ppt 面向服务架构(SOA)中南大学SOA原理与技术 02 Web服务基础(共66页).ppt 面向服务架构(SOA)中南大学SOA原理与技术 03 Web服务实现(共...

    《SOA标准体系》介绍

    《SOA标准体系》通过分析现有国际标准组织(W3C、OASIS、WS-I、OMG、IETF等)所发布的相关技术标准和跨国企业(IBM、微软、BEA等)联合发布的标准,从中国行业应用需求及标准化现状出发,梳理并形成了SOA标准体系。...

    面向服务架构(SOA)SOA原理与技术 全套PPT课件 共8个章节 含实验指导书.rar

    面向服务架构(SOA)中南大学SOA原理与技术 01 SOA技术概述(共74页).ppt 面向服务架构(SOA)中南大学SOA原理与技术 02 Web服务基础(共66页).ppt 面向服务架构(SOA)中南大学SOA原理与技术 03 Web服务实现(共...

    SOA面向服务的体系架构介绍

    这是一个PPT,介绍SOA的相关基础知识 什么是面向服务的体系架构 SOA的价值 构成SOA的技术 如何构建SOA系统 IBM的SOA工具与产品 网格计算与SOA

    SOA标准体系白皮书 V1.0

    SOA标准体系白皮书 SOA标准体系白皮书 SOA标准体系白皮书

    车载SOA软件架构技术规范

    车载SOA软件架构技术规范

    SOA(面向服务的体系结构)

    一、 SOA是什么? 2 (一) 什么是SOA 2 (二) SOA诞生因素之:需求驱动 3 ...(一) SOA 技术体系和标准规范复杂 19 (二) 业务需求与现有SOA 平台产品之间的“鸿沟” 19 (三) SOA 实施中的共性技术问题 20

    soa核心技术及应用第三部分

    本书是继《SOA·方法·实践》之后,IBM SOA技术专家精心打造的又一SOA技术力作,是SOA专注应用之作。 作者从SOA技术一线的经验出发,深入剖析SOA核心技术铁三角——SCA、SDO和BPEL的理念。之后沿此三个主要技术方向...

    中国SOA标准体系文档

    中国SOA标准体系 包括SOA标准体系(v1.0)和中国SOA标准体系研究报告两个文档。中国在国际范围内率先规划出SOA标准体系,奠定了SOA标准工作与产业、应用融合的基础。

    SOA框架技术详细教程

    SOA框架技术详细教程;SOA 框架技术 详细教程 服务 SOA体系结构;SOA 框架技术 详细教程 服务 SOA体系结构

    SOA综述 面向服务的体系结构

    面向服务的体系结构 SOA Service2OrientedArchitecture 解决了令 IT业界和...介绍了 SOA的定义及相关的技术 ,描述了基于 SOA的 EAI的体系结构 ,探讨了目前 SOA的优势和不足 ,展望了 SOA在理论上 和应用中的发展方向。

    SOA体系架构设计

    SOA体系架构设计SOA体系架构设计SOA体系架构设计

    SOA_技术标准介绍

    SOA_技术标准介绍

    车载SOA软件架构技术规范1.0

    《车载SOA软件架构技术规范1.0》,系统性地提出汽车行业首个SOA软件架构的设计规范,规范中提出了工作流与成果流并行的SOA方法论,即一套包含软件分析、设计、开发、部署在内的标准化工作流程,为包含车企、开发者、...

    面向服务的体系架构 SOA

    面向服务的体系架构 SOA面向服务的体系架构 SOA面向服务的体系架构 SOA

    SOA平台体系架构.pptx

    SOA 微软 SOA平台体系架构.pptx

    SOA 理论简介中文版

    SOA 理论简介。中文参考资料,word格式。

    车载SOA软件架构技术规范1.0(2022)(33页).pdf

    车载SOA软件架构技术规范1.0(2022)(33页).pdf

Global site tag (gtag.js) - Google Analytics