OASIS专家程朝晖:SOA全景图

日期: 2008-05-22 作者:朝晖 来源:TechTarget中国

  本次论坛采用了现场的短信交流平台,很多用户在现场提到了SOA关键任务,非常关键的地方是不是SOA要标准。普元是不是很孤单很孤独在推进整个构建化整个软件产业……普元软件副总裁,同时也是OASIS专家带来了关于SOA全景图的演讲,并准确的解答了这些问题。

  程朝晖:大家下午好!非常高兴。刚刚看到那边有一个互动屏幕,大家可以关注一下。很多人在发短信互动,提到了SOA关键任务,非常关键的地方是不是SOA要标准。普元是不是很孤单很孤独在推进整个构建化整个软件产业这一块等等很多非常好的题目。希望接下来我的演讲能够给大家这样的回答。

  应该说,现在的信息化建设当中,会碰到很多的一些关键词,信息化孤岛,打破这些系统。刚刚沈先生给大家看到了这样的一种理念,并且这种理念,一百年经过传统行业的实践,以至于我们软件产业还处在一百年前的汽车行业生产制造水平,同样看到飞机制造行业,等等各个行业都在用更加先进的这样一种标准化的组建化的协同的方式,在让这个产业里的各个厂商、客户都能够最大化它的价值。能够把这个更快速、更高质量的去把一个产品做出来。为什么我们软件产业一直到现在还是在这样一个手工作坊的阶段呢?  这样一个理念,协同?协作、标准化、组件化去生产的理念,可以在软件产业得到实现呢?相信说SOA这样一个时代的到来,真正的带给了我们这样一个机会和可能性,当然它也同样的是挑战。因为可能我们没有很好的去认识到这一点,没有把我们公司自己最核心的能力发挥出来,而是在旧有模式下生产的时候,可能五年、十年以后,在座的各位一些公司可能就不存在了,也有可能在座的各位一些公司就发展非常好。

  今天我的议题分三段。首先会看一下业界对SOA的机遇与挑战看法,希望我们在这里也能够看到这些关键的问题。

  至于解决这些关键问题,我们会发现有很多的点,可能是一个技术点,可能是一个业务点,可能是一个管理点。我们是割裂的去解决这些问题?还是说应该有一个统一的方法去解决这样一些矛盾呢?这样的一种方法是不是架构,是不是现在有业界的标准?还是说现在无法形成标准?将来照着这个模式做,中国移动要么绑死在亚信身上,要么和朗信合作。要么就是找到更合适的方式,并且服务更多的客户。中国的客户能够在市场上选择最适合于它最低成本最高质量的业务模块,能够把它最后组合成满足自己业务需要的应用出来。所以这样一种模式,必须要有这样一种业界的标准和规范,才能够说,让大家能够去协作。我们现在看似在竞争,打的头破血流的公司可以去合作,这样的合作可以给客户带来更大价值,给我们的开发商能够进入更多市场,发挥自己的核心模块更大的市场价值。

  最后也是刚刚提到过,需要承载这样一种技术架构标准,不可能那么多开发商客户都深入研究这些SOA,SDU等等这些这么多的技术规范和标准。业界统计的和SOA相关的标准大概有82个,我们不可能自己了解的非常透彻,然后应用出来,所以树业有专攻,所以希望技术平台上找到最合适的商业平台,打造自己的业务模块出来。

  首先看一下业界他们的观点或者看法。Gartner和IDC是比较权威的机构,我们可以看一下Gartner提到,目前基本企业级的应用都是基于java或者是.net平台来做,但是它越来越不足以去解决如下的需求,而如下的需求,又是我们企业现在和未来非常迫切关键的需求。比如它的这种整个的动态的应用开发,灵活的去应对需求的变化。比如我们需要可能是这样一种更加主动的及时的事件驱动机制,来帮助我面对需求变化、竞争变化等等一些我的业务管理上策略变化的时候,我及时的采取这样一种反应。这样一种架构势必会被先进的SOA架构替代掉。

  新的软件模式和编程模式诞生,我们不在意原来作坊式的几百万、几千万的应用代码去写。我们用新的编程模式来替代现在的软件生产方式。新的一代支撑这样的方式技术标准的平台会出现,新一代中间件的产品会诞生。另外我们现在用的最多的90%几,甚至更多的这样一种主流的编程模型,在这个基础上,去不断的为了支持SOA,为了支持事件驱动,把功能不断加上去,这个不是很好的办法。这只是会使我们已经复杂的技术架构越来越复杂。这个是我们现在看到的。我们把很多的组装起来,最后发现服务需要管理,需要一个服务的管理,然后发现这些东西怎么开发,开发完的东西能不能被管理起来,又拿了很多技术进来。在已有的基础上,不断堆加,不断头疼医头的时候,只会进一步复杂我们的技术架构和开发的模型。而这种复杂带给我们的就是整个到一定程度上就会失控,我们的效率越来越低。当我们改一个应用的时候,牵涉面非常广泛。上面四点,可能是Gartner看到业界技术平台趋势的时候,给出的观点。

  同样IDC也看到,在整个企业要更灵活应对市场变化,比如采用SOA架构。去建设整个信息化建设的时候,需要遵循六大原则,包括SOA体系架构,包括组建化和标准化,包括端到端设计管理。刚刚沈先生提到波音的生产过程,商业模型下的开发模式的时候,其实非常重要的就是波音它完全自己能够控制这样一种端到端的设计,以及相应的管理能力。当然它把整个20页的设计图纸,把模块划分很清晰互相之间的关系,然后把模块通过大规模协同的方式组织起来,每一个模块可能是一个分包商,可能下面还有更小的子分包商进行协同,而每一个厂商在里面,这个领域里都是最强的。因为波音做的787,一定是业界要做成最领先的,它也是希望这样一种领先模式,能够带给它更大客户价值。因此对于客户或者开发商来讲,在我们所在的领域里,我们可能和我们的分包商,以及我们的上游需要有这样的能力,帮助客户去实现端到端的设计和管理能力。

  在这样一种观点之下,我们所处的一个环境,刚刚沈先生提到了,十倍的灵活性,十倍的需求变化,十倍的吸引人,但是我们的钱只是别人的1/10,我们处在中国SOA市场环境,跟IBM、微软它们所定位的主要客户群,所在北美、欧洲市场很大的不同。虽然技术发展驱使下,SOA都可以给这种市场以价值,但是可以发现这个SOA它能够给到这些客户的价值,是有它的本质不同的地方。中国市场它的本质不同,就是在于快变化。我们本身管理和业务还在不断成长当中,这种变化速度是北美十倍。因此我们自己需要这样一种SOA应用的建设的路线图画   

  同样的,对于服务构造,因为在国外的客户来讲,已有的系统已经百分之八九十已经满足需求,不需要什么变化,只是根据新的业务需求,把串联起来,做一些新的编排就可以了,但是中国的业务模块,业务支持根本没有被很好稳定住,我们还在不断的去改进。大家可能听到一个系统不断被一期、二期、三期推倒重新建设。在这个过程中,根据IDC分析,服务构造非常关键的,而且放在了整个服务管理的前面。它们之间当然互相需要。

  对于中国客户来讲,服务构造,如何构造我自己的业务模块,把这些业务模块能够稳定住,能够为上面的业务流程和服务提供可以组装的基础。这是我们的一个建设的关键,也是本次大会的主题。接下来很多任务都会围绕这个关键信息会展开。

  在确立这样一个环境之下,可以看到中国用户必须站在自己的需求来为导向,并且通过一个平台化的发展,来实现自己的SOA应用,实现自己的一个客户价值。根据IDC最近的统计,可以看到中国用户对于SOA的采纳也是处在从实验,一直到现在更多的客户在局部性的部署和实验,现在也有一些行业领头羊的客户,金融或者电信的,已经开始在整个企业去规划,去试点,去推广去部署整个SOA的战略和应用。这样的一个环境,其实让我们去看技术它本身,应该说是在为我们整个业务或者管理做支撑,因此大家在座的都是做IT行业,IT就是信息技术的一个行业。信息技术它每次到来的时候,都是带来了一个巨大机会,但是同时,它又可能会消灭掉、毁灭掉非常多的以前非常好的公司,我们不能够把握这种技术潮流的时候,就会很快被淹没掉。昨天、前天看到一个新闻,大家都是内心非常认同的伯能公司,以很低的价格被卖掉了,这样一个技术公司,当不能把握技术换代潮流的时候,大家都是基于更为开放平台的上面做的时候,它自己不能把握,没有专注在自己的核心能力上,它把自己的模块又搬到了微软,它希望通过这个扩大市场份额,可以突破更大成长,但是没有想到它的这种战略完全是错误的战略,把自己的核心竞争能力给放弃掉了,跑到自己陌生的环境里去。所以其实每一代技术架构,给了我们整个客户业务带来了很大的发展。从最早主机终端,可以让银行推出适时交易帐户处理业务,一直到了有了客户服务机的业务,可以跨地域通存通兑,电信也可以进行营业帐务处理,一直到有了BS以后,可以用任何时间任何地点任何方式响应这样的服务,而且这样的服务越来越便宜。从主机终端几百万美金部署业务流程,到BS架构下,几千块钱就可以部署。一直到SOA这样一个浪潮过来,如果能够把握住,找到自己的核心能力,在这样技术平台上发展,我们就可能成为未来很成功的公司。

  在这样的潮流下,到底SOA的架构是什么样子的?通常很多人会讲SOA是一个业务问题,不是一个技术问题。SOA是管理问题,不是技术问题。但是最后所有的技术人员在讲SOA。其实我们看到整个信息化建设中,充满了矛盾。业务要求技术说你把业务功能实现,把我这个需求能够实现,把我流程改变掉,技术人员告诉他说,需要两个月时间。管理人员说,你到底需要多少开发人员,能不能更少一些,实实在在听到过一个客户去问,说你这个项目四个月时间,能不能两个月实现,管理人员说我需要一个业务模块,这个到底运行怎样,为我提供多少业务价值,技术人员回答不出来。所以会看到整个信息化过程中,业务技术管理是非常矛盾的。

  解决矛盾最好的办法是什么?是需要把这些矛盾梳理出来,用一种架构模型的方法,能够把它统一起来。所以在这里我们可以看得到,这样集合业务技术管理矛盾统一体,是在统一解决我们所面对的这些问题。我们通过业务应该怎么做?业务需要通过刚刚讲到过构建化的方式,来进行分工、专业化、协同。通过流程来把我的每一个业务的组件、构件组装起来。这样一种业务模型,通过技术我们需要实现服务化,我们需要把具体的实现技术跟服务给剥离开。让服务形成一种标准,而这样一种标准,使得不同部门,不同企业之间进行协同。

  同样,我们对于IT和业务要能够在具体的实施当中,能够有效的去定制,能够去管控,能够去治理,使得业务模型和流程,使得技术的支撑,能够非常清晰看到,哪里做得好,哪里做得不好,哪里应该进行优化。其实整个业务的分工协同当中,其实有这样的业务组件化的模型。这个其实我们回想一下制造行业中的微笑曲线,就是告诉企业,你要么越靠近核心技术,你的利润会最大,要么越靠近客户关键问题,业务关键问题,那么你的利润会最大,我们每家企业,都应该找到自己的核心优势在哪,普元这样技术厂商,我们的能力就是在技术平台上。我们很多开发商需要找到我们的核心能力就是业务构建证券交易这块,银行跟证券交易所,可能是银行现金管理这块,甚至更细。而你们在这个领域最能发现客户关键问题,帮助他最有效的解决,你们的价值就会被最大化。

  大家都要在这种分工协同模式下,通过整个业务组件化的模型,这个也是SOA非常终了纬度,必须在业务上采用组件化的模型、构建化的模型,通过业务模型满足业务需求,通过业务构件,实现每个业务方面关键的问题,通过平台构件,还有技术构件这些都会有相应的规范和标准。

  技术架构方面,我们需要一个SOA技术架构的分层体系,可以看到企业里这些资源,我怎么能够更好使用这些服务,装备这些服务,能不能有效灵活用它,这个是会给企业应用,是不是能够灵活快速的一个非常大的挑战。往上走就是构件这一层,实实在在构件业务逻辑,不能限于逻辑就是JAVA所做的,因为每一个企业技术为什么采用这种技术开发,是有它的道理的。因此我们在构建层是一个非常开放的,可以支持各种构造技术,可能是图形化的安装,可能是一个JAVA的构件。再往上是企业层,对整个资源形成统一标准,以便为上面流程提供相应的服务。我们服务当中一定要标准化,这个标准化不仅是互联互通的协议标准化,更重要是软件开发模式的标准化,我们编程模式的标准化。什么叫构件?什么叫流程?把清晰定义出来。再往上走,通过我们的流程,根据客户的需要,去实际的组成客户的应用层,再通过协同层,来交付我们的服务,交付到真正的客户使用面,在不同的部门、角色之间协同工作,共同完成一个任务。这个就是我们在整个SOA技术流程中,看到需要服务剥离以及标准化。

  第三个纬度,我们在业务和技术情况下,我们很难说,一天就想得很清楚了。因此我们需要有这样一套管理的治理的方法,能够对于我们的业务组件,业务模块,对于数据资源,对于一个逻辑的流程都能够有效的去管理起来。在管理当中不断的监控、分析、统计数据,一直到把我们的一些业务和IT策略给注入进去。很简单的例子,比如这个跟具体应用开发没有关系,当企业系统不断成长的时候,当我到了一定的吞吐量的时候,或者到了这个服务调用的时候,这种角色调用的时候,必须要符合安全的策略。我就会自动注入安全策略,使得我服务必须符合这个安全认证体系,才能被这个角色的人执行。同样我们可以适时通过管理控制,看到这些信息,来看到我们整个业务的运转情况,以便于定位到或者说预测到问题的发生。当然,我们还可以对应用和平台在不同的涉及到不同的省和地市,对它们进行动态的配置。

  有了这些架构以后,这样一种业务模型,你说技术分层,你说管理框架,是不是有技术规范和标准变的非常重要。有了技术和规范标准,才能让我们不同开发商之间,才可以去协同。不然我们刚刚的梦想还是不能得以实现。所以在2006年7月份的时候,正式对全球宣布标准组织成立,缩写叫做OSOA。是一个开放的SOA组织,当时一共有18家重要的厂商在这里去共同推进SOA里面的这样一种构件化标准的制定。这个18家厂商可以看到,当然BEA现在被收购了,现在只剩下17家,普元是唯一一家亚洲厂商,制定这样的标准。业界也有这样的说法,一流的企业做标准。因为普元专注在做技术平台厂商领域七年多的时间,所以我们才能够被邀请到这样的标准阻止,共同制定这样的技术标准。

  有了更注重的制定标准,也帮助普元能够更好的把我们的客户需求,把标准怎么样更好的应用起来,通过这些组织给协同起来。这个组织主要是制定SOA服务构造里面实现技术规范,比如可能是JAVA实现,C++实现,怎样知道具体服务,第二这些技术实现之后,它的装配,原数据的规范,以及SOA里面数据服务这一块的标准,包括在管理期、治理期整个服务策略和质量的框架,大家可以看得到,整个SOA里非常核心的开发模型这块非常完备,除了技术,还有管理。包括业务组件化的模型,这个也是更开放的组织,大家如果有兴趣可以到OSOA网站里面看,普元是作为唯一中国公司亚洲公司,承担整个中国官方中文社区的承建,有一个开元项目,普元和IBM,普元在里面承担了一个Client项目。整个流水线组装,每一个零部件长什么样子,它的规格是什么样子,这个是规范里做了明确的定义,原数据的定义,用这些构件来规范屏蔽底层的各种技术。同样普元投入精力,和民间组织,一起把规范翻译成中文。大家可以到满江红网站上下载中文规范。这个是对于构件标准定义,包括这个构建如何装配成更粗略的业务模块也有支持,包括对支持协议的绑定等等。

  这些技术标准已经非常完备了,去年07年3月26号的时候,已经发布出来。这些是标准的清单,包括了组装模型非常全面,各种技术的实现,包括SDO数据对象这一块,这些技术标准要成为工业标准,必须要通过工业标准组织实现,通过讨论,普元大家一直觉得把这样技术标准提交到OASIS工业标准组织里,这个是工业标准组织建设介绍,以及工业标准组织下,专门制定SOA技术标准分会,下面会有九个SCA专门讲标准和组装规范的技术委员会。平时工作方式也是比较多,通过专门协同的平台,在互联网上,进行标准的制定,也共同制定整个技术标准的路线图。现在WEB服务已经很好地解决了服务之间的互操作性问题,而更为重要的解决是如何简化服务的实现和组合,这个也是SCA和SDO2.1来去落实服务构造技术标准,以及到以后的服务治理,业务建模都会有相应的标准出台。

  最后看到这样一种技术架构以及这样一种技术标准,让我们在座的开发商都去把它掌握住,深刻理解把握住这个都是很困难的,因为树业有专攻。这个是整个SOA生态系统里,大家需要找到自己的定位。普元是专注做这样一个商业的平台,这个商业平台就必须要站在整个SOA架构,去解决业务模型、技术架构,以及管控治理框架的角度提供商业化的平台,可以帮助我们能够非常容易的去落实下来,我们去做整个SOA的服务和应用就会容易一些。这样商业化平台不是那么容易做的,大家做着做着就需要什么问题,什么框架,什么标准,做这样商业化的SOA平台,必须要有相应的完备的比如对技术标准的理解,因此商业平台,基本上需要覆盖这几个方面。

  第一,最左边的开发环境,我们一个服务要被开发出来,流程要被开发出来,我们需要一体化的开发环境。这个是需要去覆盖到里面的建模、设计,一直到它的测试,到它的项目的文档,甚至于到质量的控制。这个其实都并不容易,作为商业化的平台都非常不容易。开发出来之后,我们需要中间这一块,就是我们的运行环境,服务管理环境,以及流程运行环境等等,有了这样运行环境之后,不断积累我们组件的环境,以及到右边管控和治理环境,我们对服务,原来技术架构上,从来不能对服务进行监控,我们现在服务是企业中非常重要的资产,因此需要对这些资源资产进行监控分析,不断注入我们所需要的业务的策略。

  在这样一个平台下,我们需要一个方法。这个平台买来以后,怎么做事情?每个企业不一样,需求也不一样。因此我们需要在这样一个平台下,有这样一个方法,就是整个软件生命周期,它是怎么会生长出来?怎么长大?怎么应对变化,最后流程或者服务不需要的时候,怎么消亡掉。我们要在整个平台上,我们需要有这样一套完备的方法,这个方法是需要去覆盖,我怎么去规划设计我的整个SOA,我自己的目标是什么,我希望通过SOA架构,给我哪些业务系统得到改善,达到哪些目的,我们自己需要一个非常清晰SOA业务蓝图和技术参考模型,这个一会儿也会在后面主题当中更多展开,我们需要对自己业务流程的梳理,有了这些以后,需要把流程构造出来,需要面向流程构造方法,把业务流程造出来,在这样的流程配置出更大的流程,具体实施当中去定制、配置,有了这些以后,我们在运行期需要对它进行管理,比如业务服务的管理,整个的动态的服务如何被注册等等这些应用当中,不断帮助运营管理。一直有治理监控的方法框架,能够帮助我们在这样一个平台下,不断梳理优化这个业务,使得组织里,服务流程当中,能够持续被改进。这样一套从无到有到优的规划设计,从无到有,到实现的时候,一直到它的运行,到持续的优化和完善,有这样一套方法去帮助我们实施具体的项目。在这里在后面的主题当中也会更多的探讨。

  总结一下刚刚我说讲到的这些内容,SOA这样一个时代,其实大家都没有怀疑,不然今天不会有这么多人来到现场。因此可以看到SOA已经到来,我们抱着已有的技术作坊式的方法继续抱着,一种观点是这样,还有一种方式就是我们学习合作用更好平台和方法去找到我们自己核心业务的模块能力,去构造,并且让这种核心能力,通过大家的合作,给客户最大家知。

  第二,我们这样一种到来的时候,我们应该怎么样去看待这件事情?从业务的角度,需要组件化、构件化、分工化的方式,并且通过流程的方式把业务做出来。技术架构上,我们要找到真正符合业务的规范,不然做出的业务模块很好,最后实现是一堆代码,无法被大家很好的协同起来,被更高层流程配置起来,装配起来。同时生产和管理的时候,更好的不要说一行一行代码去写,软件生产的时候,就能通过图形化的方式,就能够把这些模块构建组装起来,一体化开发、运行治理平体上进行生产管理。

  可以看得到,整个SOA需要通过一个完备的标准化的这样的商业平台,去承载我们的软件生产模式,也能够像福特、波音向更高效的模式生产,能够让我们效率更高,质量更高。通过平台,通过个性化、标准化、业务化生产方式,把应用做起来。同样我们不仅需要这样的平台,同时我们还需要有这样的架构规范方法咨询和服务,能够大家一起看到把这块技术方法怎么有效的去学习吸收,转化成自己的业务的能力和技术的能力。所以需要这样一种咨询和服务的保证。

  最后,SOA总是在改变生产方式,改变商业模式,这是为什么?一定是为了提升生产能力,而生产力永远体现在更高的效率,更高的质量,更强的灵活性以及更低的成本基础上,所以我们不断的在这样一个SOA到来的时候,去面对这样技术的潮流,去迎接它,改变我们自己。相信我们在这样一种模式下,给我们带来机会情况下,我们共同找到自己的定位,把自己的能力发挥到最强。并且通过大家整个社会协作,形成巨大力量,将来甚至于能够抗衡,包括全球的这些最大的软件厂商,相信都不是问题。谢谢!

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

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

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

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

作者

朝晖
朝晖

相关推荐