是否真的需要一个SOA的成熟模型?可以得到的一致的意见是在实现SOA时这么一个团队需要好的指导,而又该是谁去掌控,厂商,顾问,还是独立的第三方组织?这正是分歧所在。
因为SOA关系着具体实施过程和整个系统的发展,与系统定位、发展基础以及一般软件发展实例有着很大的相似之处。正因如此,来自澳洲Forrester 研究公司的一位资深分析家Sam Higgins 这样说到:“这些全部都是组成一个成熟模型所必不可少的内容。这样的说法才能算是合理的,因为对于眼前的SOA成熟模型而言还需要更长远的考虑。幸运的是,在表示了对SOA爱好的众多厂商中也能看的出他们对现有的成熟模型有着自己的思考。”
U.K.-based CBDI Forum Ltd的CEO兼资深分析家David Sprott曾说道,SOA的成熟主要取决于各个企业机构之间合作区域内的标准化,“帮助不同的企业了解到什么功能是他们所需要的,用以建立可重复和良好使用的内容”。他强调一个成熟模型应该把重心放在如何实施的细节步骤上而不是系统内部的基础构造。
在Sprott'最近的关于SOA成熟分析的报告中,他反复研究了在这方面已经取得领先的IBM, BEA公司,以及AmberPoint, BearingPoint, Sonic Software 和 Systinet等诸多厂商。他认为,所有的厂商都或多或少的忽略了 “帮助客户很好的了解该如何采用SOA”,他说,“当前这些厂商都只是在一个狭窄的范围内推广他们的SOA产品。而这些决不仅仅就是他们的销售市场”。
他说到,现在大多数的企业并不仅仅着重看在如何去建立一个新的架构,而是如何在现有的基础上建立起具有更高生命周期的系统模式。“这些都是对于一个成熟的企业至关重要的内容” Sprott说道“构建更成熟的系统架构模式确实很重要,但这仅仅只是一个方面”。
来自Waltham, Mass.的ZapThink LLC 分析师Ron Schmelzer说到一个SOA的成熟模型应该是指正确的架构以及“帮助一个企业在不断变化的环境下决定他们成熟的发展方针和策略治理,而不仅仅只是他们的服务”。
一些SOA的成熟模型在很大程度上和软件工程学会(SEI)的综合性能成熟模型(CMMI)关系密不可分,“CMMI通常在主要的领域内被认为是达到测试程序是否真正趋于成熟的‘最好实践’方式。”来自Forrester的 Higgins这样说。“在一个机构里将SOA和现有方案结合肯定是个好的选择。以CMMI为标准便能很好的加以衡量。然而SOA并不仅仅只是针对IT行业,正是如此,以CMMI作为衡量标准可以很好的让此并不局限于IT这个狭窄的范围内。”
CBDi的成熟模型则是依据CMMI而做,“到目前为止我们已经能够识别并定义如何的一系列能力以作为成熟模型的核心部分”,Sprott说道,“但有一部分人认为当前的成熟模型已经是CMMI的一个最佳水平,这是一个很严重的错误。因为这样的水平对SOA而言仍然还是不完全合适的,甚至可以说是远远不够的”。
Bedford, Mass.的Sonic软件公司产品销售资深指导人士Jon Bachman说道,之所以那些厂商团体借助CMMI得到SOA成熟模型的是因为“大多数的经理们知道它。在CMMI的世界里我们可以说自己的团队具有能够准时的或者是在不超出预算的条件下完成软件开发的能力。SOA成熟模型也试着能达到这样的高度。我们并不是说SOA的成熟模型成熟与否完全取决于CMMI,但至少这会是一个很好的试金石。”
他说这样的目的是为了充分的体现SOA的商业价值,这个模型各个层次的成熟将会在最终获得的商业利益上反应出来。“它决定了你将必须要拥有怎样的能力,了解怎样的标准,并清楚的熟悉到应该在什么的地方和时机投入你最大的能力。”
充分考虑厂商方面的观点,“我们已经可以知道在哪方面对它进行描述会是比较适宜于产品的”,他这样说。模型可以准确的指出哪些产品应该适宜于哪一个阶段,这样的目的是不要让厂商有需要使用某种特定产品以适应于每个层次阶段的错觉。
ZapThink的 Schmelzer指出“Sonic的模型只是一个在服务上的成熟模型。它并没有提供任何一点关于架构方面的指示。你可以拥有一套非常成熟的服务,但在架构方面依旧还需要努力提高。可能,这对于各个厂商而言都是很自私的。”
对于IBM的模型Schmelzer也说道:“这也不是一个完全意义上的成熟模型。我们可以称其为‘服务整合成熟模型’,更好的整合并更好的联系不同服务并加倍的发挥功效,IBM的SOA模型能为我们提供更大的价值。”
Forrester的Higgins说:“就目前来说,IBM的模型应该是最接近于成熟的,并且是在一个很大的范围内最近沿着最正确的发展方向进行着的。然而同时,来自Microsoft方面也作出了一些很好的工作并有了新的思考。”
这也带来了疑问,究竟应该是谁带领这个发展的方向?“无疑,在这方面厂商和顾问有着最大的发言权,他们清楚的知道早工作过程中暴露了什么样的问题,什么是最需要解决的,而什么是可以忽略不计的。因此他们能够把一个准确的评断标准假如到模型中。” Higgins说道,“假如一个成熟模型是单纯的为了卖服务或是技术而得到发展,这样下来,也比让这些模型最终成为一个第三方的独立财产要好的多”。
Sprott和Bachman都说道他们非常愿意去推翻一个作为第三方独立提供成熟模型的机构。“在OASIS已经有很大的一部分人的支持,而他们正是鼓舞我们这样做的原因。” Bachman这样说。
对于最根本的疑问—SOA的成熟模型是真的需要的么?—对此,ZapThink的 Schmelzer提到这可能是一个将在很长的时间里都继续保留的疑问。“我也不能百分百的确定这一点”,他补充到“但是,有一定可以确定的是在实施SOA的过程中,一个好的指导是必不可少的”。