SOA既是一个即将到来的事物,也是一种营销策略或一种技术,这取决于你要和谁谈论。有一种观点认为,只要服务合同不变,企业就能随心所欲地共享商业服务,发布商业成果,并被内委(insourced)、外包(outsourced)或升级技术所支持。另一种观点认为,我们已经陷于标准的混乱状态,在这种状态下,服务的创建是建立在“正确”使用所有最新的ESB(企业服务总线)、这种Web服务、那种Web服务、Web 2.0基础上的,但你是否得到了正确的服务,创建是否正确,在很大程度上是一个运气问题。
像往常一样,真理往往被夹在中间,而你处于什么位置依赖于你的公司IT状况和SOA的成熟度。重点应该放在建立一个面向服务的业务,然后利用面向服务的技术,在合适的时候,去对业务提供支持。我们可能会想到其它很有影响力的实践—共享企业数据库。在主数据管理出现之前(Master Data Management),很多公司确实把所有数据集中存放在一个地方,从逻辑上讲,也就是对数据集中在一个地方进行更新,得到“有质量保证”的数据,并且在任何需要的地方都能得到元数据。我们现在需要MDM,因为程序员现在都认为共享数据库不是一个好的方法,因为它降低了编程的速度:首先,当你改变一个字段的格式或语义时,你不得不同该字段的其它用户协商和申请变更管理以及类似的管理进程!所以,你能满足甚至建议给每人一个数据库是个“不错做法”的Web 2.0程序员的需要。—举例来说,David Heinemeier Hansson,Ruby on Rails创始人,说:“程序员应该让每个应用都对应一个数据库,如果你需要共享一个数据库或共享数据,将它作为服务暴发漏给外界。”很多反对共享数据库的观点暂时也可能阻碍共享服务的发展,这些观点包括:
•政治策略—一个强势的经理并不能真正“拥有”共享服务,但他可能会想要拥有它。
•人的问题—向共享服务转变需要沟通和谈判技巧,IT领域擅长这些手段。
•短视主义—为了实现重用而开发共享服务需要初期投资(从数据库方面来看,可能的投资包括一个数据库管理员和数据分析团队;从服务角度来看,投资可能会围绕着竞争力和SOA架构师)。如果你只用项目成本衡量项目,你将看不到整个项目投资组合利用初期投资获得的生命周期投资回报率(life cycle ROI)。
•保守的心态—“我们的项目是唯一一个我们真正关心的,资源共享将会使我们放慢节奏”。
•奖励短期技术突破,而不是有效业务成果的长期提发布。
现在,到了向过去学习的时候了,同时应确保SOA不会遭受同样的功能不良的问题。
在这方面,一个看起来将会很有帮助的公司是BEA(我们相信还会有其它公司;或者至少,我们希望有)。另外一间公司,这似乎是协助公司,这是东亚银行有限公司 。我们不久之前刚刚同BEA在一个会议上进行了讨论,该会议几乎没有讨论任何有关技术的东西,所有的讨论内容都是关于治理(governance)、架构、人的问题和组织结构。
我们与Danny Healy(BEA EMEA技术总监)和hil Head(BEA英国执行总监)。他们告诉我们,BEA咨询部门的40%的员工是架构方面的(60%是技术方面的),其中还包括许多新员工。新员工们每天都在同说“我想要做SOA” (如果这些用户像这样说的话—“我想要获得这个商业成果,我认为SOA是帮我达到目的的正确的途径”—我们将会感到更加高兴,但我们认为,一般,这句话都是由BEA顾问首先说出来的)以及“我想要解决这个商业问题” 的客户打交道。当然,仍然有很多说“我已经购买了BEA”但仍然需要技术顾问的用户。
Healy 和Head表示,所有的问题其实都是相互关联的;并且你必须采用整体的方法处理这些问题—但是它不能同时得到解决。考虑优先次序也许会对你有所帮助。
Healy 和Head说,许多问题都可以归为同一类:SOA治理。但他们还补充说,不同的公司需要不同的治理模式,因为你需要什么取决于:
•你的特定组织的内部特征—组织和治理现状;你的公司和SOA的成熟度水平(本质上你的公司是不是一个注重节奏并且没有功能不良的“责备文化”(blame culture)的公司?当你想到与IT有关的服务和协议时,你会不会感到快乐?);
•地理和外部组织的关系(管理服务水平,从没有人在现场或也许甚至不雇用,你可以取巧) ;
•政治策略;
•商业环境;等等。
如果我们自己不得不挑选一个杀手级的问题,我们将选择企业成熟度;并且Head 和Healy表示,评估企业成熟度往往是首先要做的问题—甚至要早于合同。
BEA认为,一个成熟的公司将会实施端到端SOA生命周期治理—并且许多在一开始没有这么做的公司现在重新考虑这个问题。SOA治理是根据人们信赖的服务合同制造服务的一个重要组成部分,合同的基本模式将包括保持SOA活力的度量和评价手段;服务体系本身;潜在的组织角色治理和制度化SOA使之成为企业的活跃的组成部分的必要奖励。当引入进SOA时,许多团体集中于克服有关变化的惰性;但是,要克服“动态平衡”(一个稳定的工作体系被扰乱时回复到初始状态的趋势),对制度化一个服务文化的持续努力也将是必要的。
BEA已经帮助许多大公司有效地实施了SOA治理。具体的实施细节通常是不公开的,但这些实施总的特点是很有意思的。一开始,有一个明确的时间表,逐步交付。在早期阶段,各个层次的批量购买是很重要的,培训也可能是必不可少的,战略性的结构在该阶段被制定。在后期阶段,第一个服务能够被发布和评价;最后,只有当同时存在许多服务的情况下,你才能有效地处理服务投资组合管理。这是很重要的,平衡本地创新和企业协作是很重要的,你必须保证你的组织结构和角色支持你正在尝试做的事情。并且,就整体而言,你绝不能忽视了可重用的商业服务,因为它是SOA的最终目标。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
SAP收购CallidusCloud 与Salesforce竞争
一直被称为后台办公巨头的SAP现在似乎也想在前台办公大展拳脚。 最新的迹象是SAP收购CallidusClou […]
-
SOA治理模型核心:人
治理在IT领域非常关键,但是很多时候企业的做法往往太过单向,企业SOA治理模型往往忽视了所有部分当中最关键的组件:人。
-
总线技术究竟该不该用?
曾几何时企业服务总线(ESB)被视为企业IT的核心。今天,不仅ESB受到了比被废弃还要糟糕的攻击,若干开发趋势似乎对更简单的消息总线也发起了质疑。
-
如何使用SOA治理工具保证项目进度
由API的增加以及为业务应用创建出简单好用接口的需求增长所驱动,这些合并的API-GRC工具帮助开发人员创建,发布,管理并且推广API的使用。