Sonic软件和Progress 软件公司技术总监Dan Foody,在他所认为的SOA最差实践基础上正见证着SOA的一系列失败。作为技术总监,他并没有从技术层面上来看待这个问题。在他看来,问题在于项目 的管理,缺乏对SOA方案的理解和企业没有能够作出适合SOA理念应有的改变。
在SOA方面,你们看到了什么?
Dan Foody:如今,人人都在谈论SOA,企业里人人都知道SOA并想参与其中。但是,其自身正遭遇着挑战,因为并不是每个人都能正确理解在面向服务架构里应该做些什么。
这种对于SOA的无知会带来什么挑战呢?
Foody: 我们发现当人们宣称他们在做面向服务架构时,他们所做的事却并不是SOA所预期的,甚至有些吓人。
有例为证吗?
Foody:给你们举一个我最喜欢的例子。有一家公司在做一个大会主题演讲中提到他们在面向服务架构方面有多么的成功:他们已经具有300项服务,并且在一年之内能达到1000项。听起来很不错不是吗?唯一的问题在于这种类型在发展中却很糟糕。
为什么SOA理念会脱轨呢?
Foody:我们做面向服务架构,目的是避免复杂性,而不是让多达30种web服务去做同一件事情。你的目的是要去再利用。如果有上千个Web服务,实现再利用的可能性事实上为零。因此,他们也许拥有许多Web服务,但却无法实现面向服务架构。所以,在业务上也表现不出任何好处。这就是一个SOA脱轨的例子,人们错误的认为“越多越好”。
这是因为人们在定义面向服务架构时的问题吗?
Foody:这个问题有两个方面引起。一方面,一些人根本就不理解SOA的含义。建立Web服务,并不代表你建立了面向服务架构,这与Web服务的数量无关。SOA关系到你对已有的Web服务利用途径的数量。这才是在各方面定义面向服务架构的一个标准。许多人都在这一点上误解了。真正有价值的是对于Web服务的再利用而不是Web服务本身。跨组织的共享资源才是面向服务架构的价值所在。
还有一部分人,即使他们理解了这一点,也不一定知道如何去建立成功的面向服务架构。有的人认为建立所有权标准可以创建有效的面向服务架构。于是 我们看到一些组织将Web服务与SOAP作为基础,将之拆散,让其不能与外界任何程序相互作用,然后将自己的特性加入准则当中。然后,他们需要将所有的东 西编码然后联结,在此过程中将丢失掉许多协调性的益处而致使在开始的时候建立面向服务架构变得很困难。虽然在这些例子中,尝试SOA的人们理解了他们将要 达成的目标,但他们并不知道途径为何。
标准能够帮助我们看清道路吗?
Foody:多数人会说:SOA并不存在技术问题,最大的挑战在于结构性问题。所以对于技术架构的重视只能解决20%的问题,但80%关于人员的问题仍有待解决。
我认为,犯了最差实践这些错误的人们不会在一开始就按照规则来办事。他们相信自己知道自己在做什么,这也是问题之一。那个在大会上发言的先生,讲述建立上千Web服务,他就相信自己比任何人都了解如何来做SOA,并且不会听取他人的建议。
因此,我并不认为标准结构能够解决这个问题。一个企业能从SOA得到的最重要的益处并不是用纯技术的形式能够呈现的,而是使信息技术将对商务有 意义的资源组织起来。将信息技术与商务结合起来并使其随着时代的发展而持续进步。因此,当一个商人谈到盘点时,IT人士就能知道这意味着什么,他们会将相 关的资源和技术组织到一起运作。这才是SOA的真正益处所在,这是你在任何一张架构图表上找不到的。
当人们有需要的时候,也会有技术帮助加入其中。他们想要,就能找得到。而恰恰是那些自以为是并没有好好利用技术帮助的人在技术层面上出现问题。
那么,这是不是说无知和缺乏理解是非常危险的?
Foody: 对,自信和缺乏知识是非常坏的结合。
那么,在企业认识到他们应该采取别的途径之前,我们是不是会看到许多SOA失败的最差实践案例呢?
Foody: 我们必然会看到许多项目的失败例子。一切引起企业变革的因素都会有附加效果。不是所有企业都能够完成变革的,也不是所有企业都知道如何进行变革的。所以, 我认为在进行此类变革的同时,我们将不可避免的看到许多附带作用的产生和项目的失败。关键在于企业要认识到从失败中吸取教训而不要半途而废。
因此,我们要关注所有关于SOA失败案例的报道,避免同样的错误。如果一个人要引领SOA的启动,他不能在遇到失败时觉得羞耻,而是应该接受这些失败并将之当成又一个他能从中学到经验的案例。
分享到:
相关推荐
SOA(Service-Oriented Architecture,面向服务架构)是一种软件设计模式,它提倡将功能分解为一系列可重用的服务,这些服务可以通过网络进行交互。BPEL(Business Process Execution Language,业务流程执行语言)...
SOA实践:构建基于Java Web服务和BPEL的企业级应用 IBM口水书
### SOA最佳实践:BPEL指南概览 #### 一、引言 随着信息技术的发展,企业对于灵活性和效率的需求日益增长。为了更好地满足这些需求,面向服务的架构(Service-Oriented Architecture, SOA)逐渐成为了业界的标准。本...
《SOA实践指南》展示了实现面向服务的架构(SOA)切实可行的 规律,使得SOA不再只是镜花水月,可望而不可及。《SOA实践指南》基于作者在一家 领先行业的公司中全面推广SOA的第一手经验,解释了SOA如何简化大型应用...
**SOA(Service-Oriented Architecture,面向服务架构)**是一种设计和构建软件系统的方法,它强调通过独立、可重用的服务来实现业务流程。在本指南中,我们将深入探讨SOA的最佳实践以及如何利用BPEL(Business ...
《Enterprise SOA中文版:面向服务架构的最佳实战》是一本深度探讨Service-Oriented Architecture(SOA)的专著,旨在帮助企业实现灵活、可扩展且互操作性强的IT系统。SOA是一种设计和构建分布式软件系统的方法论,...
资源名称:SOA实践指南内容简介:《SOA实践指南:分布式系统设计的艺术》主要内容:多年来,SOA一直只是个美好的愿景。通过描述在实践中实现和运行SOA所碰到的问题,《SOA实践指南:分布式系统设计的艺术》让SOA走入...
SOA与Web服务SOA与Web服务SOA与Web服务SOA与Web服务
- **执行SOA:SOA实践指南.jpg**:可能是书籍封面,展示书名和作者等信息,也可能包含关键主题的视觉表示。 - **封底.txt**:通常包含书评、作者简介或推广信息,可能提及SOA实践中的关键挑战和解决方案。 5. **...
《企业SOA:面向服务架构的最佳实战》不仅是一本理论书籍,更是一本实践指南。它不仅详细介绍了SOA的基本概念和技术细节,还提供了大量的实际案例和实践经验分享,非常适合项目经理、架构师、分析师和开发人员阅读。...
**SOA(面向服务的架构)** SOA是一种软件设计模式,它强调将业务功能作为独立的服务进行构建,这些服务可以被不同的应用程序调用,从而实现业务流程的灵活性和重用性。在SOA架构中,每个服务都有明确的边界,并...
《SOA权威指南:通过BEA AquaLogic Service Bus实现》是一部深入探讨面向服务架构(SOA)的专业书籍,由BEA高级SOA架构师Jeff Davies与Ashish Krishna、David Schorow共同撰写,并由BEA Systems的技术项目经理...
面向服务架构(Service-Oriented Architecture,简称SOA)是一种重要的IT设计模式,它强调将软件功能分解为独立的服务,这些服务可以通过标准接口进行通信,从而实现松散耦合。SOA的核心理念是促进业务流程与IT系统...
SOA之道:思想、技术、过程与实践.感兴趣的人看一下
**Java Web服务构建SOA详解** Java Web服务(Java Web Services, JWS)是Java平台上的一个关键技术,用于构建Service-Oriented Architecture (SOA)。SOA是一种设计模式,它提倡通过独立的、可互操作的服务来构建...
1. **服务建模**:识别和定义构成SOA的基础服务及其属性。 2. **面向服务的分析与设计**:这一过程包括理解业务需求,并将其转化为服务模型和技术解决方案。 3. **面向服务的建模与架构(SOMA)**:这是一种具体的...
2. **基于服务的应用程序组件**:这些组件是SOA的核心,它们以独立的服务形式存在,可以跨多个应用程序重用。每个服务都是一个独立的功能单元,可以通过标准协议(如HTTP)进行调用。 3. **流程编排**:这是将不同...