SOA部署中七个致命的错误

日期: 2008-07-28 作者:修彬 来源:TechTarget中国 英文

  面向服务的架构(SOA)是现在企业部署应用系统主流的做法,但是,著名市场分析机构Gartner公司的一位分析师指出,SOA部署可能会因为七个常见的错误而突然中断。


  “如果你有没有听说过SOA,那么你肯定生活在与世隔绝的环境中,”Gartner公司分析师Yefim Natis说。Gartner认为SOA已经无处不在,它不再是一个只是大胆的架构师才敢于尝试的前卫概念,而是已经变成了当今世界商业软件应用开发和交付的一种常见的方式。


  “SOA已经从竞争阶段过渡到主流阶段,”Natis说。“很快拟将很难找到没有使用SOA的软件供应商。”


  毫无疑问,这是一个好消息。但事情一般都是两面的,坏消息是一些常见的错误的可能会危及企业级SOA的部署。


  在“开始部署SOA以及迁移到高级SOA的模式和准则”中,Natis列举了7个危险的错误,他强烈呼吁SOA用户一定要小心不要这些错误。 这些错误是:


  1.将SOA部署通通交给技术人员实施


  部署SOA不单单是与传统的应用开发技术有关,而且还与企业的业务有关,并且二者相辅相成,缺一不可,因此,把SOA的部署工作交给那些对企业业务目标一窍不通或知之甚少的程序员,让他们独自完成部署工作是一个极大的错误。就像很多分析师多年以来一直在说,SOA项目从一开始实施的时候就要有企业的业务人员进行参与,这是非常重要的。一个令人鼓舞的迹象是,本周举行的Gartner会议似乎比以往任何一次会议吸引了更多的商业人士的参与。


  2.非理性的SOA过度“健康”


  如果SOA的项目负责人热情过高,促使项目实施得过快或者部署工作铺的太广太宽,最终导致无法控制的局面,这也将会导致部署工作陷入困境。从而引发“虎头蛇尾”的危险—开始的时候起点太高,部署的SOA项目太多,服务太多,最终由于无法控制而草草收场。“所以,不要急于奔向SOA,”Natis告诫说。“如果你有20或30个服务需要部署,那么你能够做得很好。如果你要部署200到500个服务,那么我知道这肯定是有问题的。” Natis呼吁他的听众要沿着SOA成熟度曲线“逐步推进”部署工作。他还警告说:“在SOA部署的各个级别上都有可能犯错误,因而一定要小心谨慎。”


  3.对于SOA部署的几个注意点侧重顺序有误


  为了正确估计SOA的范围和侧重点,牢记SOA的“A”是代表架构是非常重要的。这也是正式架构师和项目经理在SOA部署中发挥关键作用的原因。虽然供应商会极力催促用户在软件基础设施方面加大投资,而Gartner的分析师则建议在SOA管理和设计上进行投资,以确保SOA解决方案能够满足企业的业务需求。良好的管理是很重要的。“随着SOA变得越来越先进,” Natis说:“SOA管理的程度也变得意义越来越重大。”


  4.遗忘数据


  所有的商业应用,从医院日常使用的病人记录查询程序到华尔街使用的每毫秒就能数百万美元交易的大型应用都是有关获取数据和处理数据的。SOA需要一个经过了谨慎设计的数据模型。因为商业应用一般需要来自企业周围的各个合作伙伴提供的数据。Natis表示,计划访问那些不属于你的数据也是很重要的。


  5.重复开发


  因为SOA最大的好处就是组件重用,这既为企业节省了成本,有符合现代程序开发的一般准则。因而,在SOA部署的过程中,抛弃那些认为“新的应用需要重新编写新的代码”的旧观念是很重要的。旧观念否认服务重用的目的。“SOA的成功在于利用业已有服务,并避免开发人员进行无意义的重复开发,”Natis警告。


  6.部署的起点有误


  SOA需要从一开始就部署企业业务需要的服务和应用。而开发看起来比较酷但却没有很大用处的服务是没有太大价值的,因为企业中没有人需要这些服务。“只部署那些有客户的服务,”Natis说。


  7.部署混乱或过于专制


  SOA不是一个孤立的项目,就像20世纪90年代流行一时但最终惨败的开发方式那样。SOA的部署工作也不能作为一个命令强加给IT或业务部门单独来完成。它需要成为一个合作性的有风险的项目,所有将来需要使用这些应用的人都应该参与到这个项目中来。


  “SOA不是一个技术性问题,而是一个有关人的问题,” Gartner管理副总裁Darryl Plummer在一个单独的会议上说。但是,IT部门和业务人员的相互合作在SOA项目的实施过程中非常重要。“业务人员应该参与SOA的部署工作,”Plummer说。“不是接管部署工作,而是参与到其中去” 。


  Natis也警告大家不要采用一个所谓的通用方法部署SOA。“一个解决方案不可能适用于所有的业务方面,” Natis说。


  Natis敦促与会人士“将SOA作为一项战略举措对待”,但不要把它作为部署每个商业应用的万用良药。“SOA并不意味着同质—这将会导致不切实际的期望。”

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

作者

修彬
修彬

相关推荐

  • 事件驱动框架和SOA在空军的应用

    空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。

  • 揭秘New Relic APM技术细节

    New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响

  • 仅凭SOA和云无法解决业务数据管理风险问题

    SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。

  • 购买应用集成工具可以采取平衡做法

    购买应用程序集成工具需要好好看看你的公司需求,知道从供应商里面要寻找哪些关键功能。