SOA版应用实现II—业务化流程【王程志】

日期: 2008-07-17 来源:TechTarget中国 英文

  我们知道,对SOA版应用的交付,包括最基本的两个方面,一个方面是焦先生跟我们分享的服务的构造,当有了若干个服务之后,服务之间的编排、流程的编排就变得更加重要。我们现在有情王程志先生,王程志是先生业务化流程方面的专家,有情他分享他的观点。

  王程志:各位来宾,各位朋友大家下午好,我下面介绍的主题是SOA版应用的业务流程实践。之前有朋友发短信,提到一个问题非常好,就提到今天介绍的SOA的四化之一的业务化非常好,他认为我们SOA不仅仅是技术的创新,更是业务的创新。并且,在这方面希望有更多的业务方面的实现的方案。第二个问题是另外一个朋友提到的,他认为在SOA版应用的标准架构里面,第四层,就是流程层,在这一层,他认为在组织架构、决策引擎,可以支持流程多变的变化。这也正好表达了我今天要说的主题,就是通过业务化的方式来解决流程,就是解决多变业务的流程。

  在这之前,焦先生介绍了SOA应用的生命周期,我的同事也介绍了服务的设计和规划。我会从业务的层面来介绍如何组织和编排我们的流程。

  这里面涉及到流程的业务化实践,以及我通过什么方式来实现流程的液化实践,以及实现之后给客户带来什么价值。这是我介绍的三个主题,首先就是为什么要实现流程的业务化流程,第二个就是通过案例来实现业务化流程。第三就是介绍普元的产品。

  第一,为什么要业务流程。首先我们从管理的本质来看,任何管理体系的建设都是从流程、组织、人、KPI的组成的。在今天这个强调竞争与创新的时代,变化得很快,在这个过程中,我们如何从支撑业务的IT系统中来支持业务流程变化越来越重要,也就是业务实现过程中存在一系列的难点、一系列的挑战,挑战之一就是我刚才介绍如何实现流程的快速调整。我们认为是通过业务化的配置能力来支撑业务流程的敏捷定制和调整。第二个就是刚才,也是在大会中一个朋友提到的一个问题,比如说我们在处理一些,比如说领导出差了,我如何将我的任务委办给另外人来处理,就就是我们流程过程中面临的中国特色的流程模式以及人工的处理。这也是在业务实现过程中的一个难点。另外一个非常清楚的就是业务流程实现过程中,对业务的高性能和扩展性的要求。这是三个难点。

  刚才我们提到,管理精细化会引起整个流程的变化。比如电信产品,我们针对所有的客户,标准产品销售流程,从定单审核,服务开通。现在由于业务的需要,我们要引入一些指标,就导致我的流程需要增加很多SLA的指标,比如接入方式、接通率等等,就会导致流程发生变化。主要体现在哪几方面,首先我流程做的事情,就是活动发生变化,第二就是流程规则发生变化,就像刚才说的工行、建行的例子。像ATM机取五千块钱变成两万块钱的时候,业务流程变化为什么非常麻烦呢?因为要快速实现变更。第三个就是流程人工环节中所参与的人,就是参与者发生变化,就是说今天可能是A部门来做,明天可能是B部门。另外一个就是我如何来进行绩效的评估,这也会不断发生变化。比如说这个环节,工行有审核的环节,需要在两个工作日完成,有可能明天是两个工作日变成三个工作日了。流程是不断变化的,我们如何快速响应这个变化呢?我们要通过一定的模式来实现流程的变化。这就是我们说的通过业务化的方式来配置流程,实现流程的快速配置。

  为什么必须是业务化的方式呢?这跟流程开发的模式是相关的,我们看一下传统的流程开发模式从业务部门提出需求,到技术部门去设计流程、开发流程,到后面我们进行验收的时候可能才发现这个流程没有满足我们的需求。这个过程我们又要重新来实现流程的变化。并且这个过程,搀杂了从业务领域到设计领域变化,时间非常长。第二个就是不能实现流程中高度的复用。这样就导致整个流程的稳定性、开发效率降低,进而增加成本。所以说我们只有通过一种新的业务模式,从开始的建模到设计、到流程的编制,到流程发布,以及监控,一体化来实现,才能实现流程的快速灵活调整。

  第二步,我演示一下SOA业务流程案例演示。在介绍之前,我不得不提到普元的BPS的产品来支撑这个灵活调整。在这里面,我们在成熟的普元流程引擎上增加了业务化服装可以通过业务建模的方式来进行流程的开发和维护,完全的业务域支持。这我就通过电信的产品销售流程来介绍。从传统的方式,到后来流程发生变化了,这个变化就体现在我刚才介绍的四点,这个过程如何敏捷定制和灵活调整。演示的过程,会按这样一个流程:第一个是通过构造的服务,也就是说在这里面包括页面服务构件和构造动作服务构件,形成我们的环节库,通过环节库来定制流程,然后发布流程,以及对流程的运行、管理和监控。第一步我们看一下,我们现在定制的业务的服务。首先我们登陆这个产品界面,在这里大家看到,这是基于Web的方式来进行整个业务定制和调整过程。在这里面可以看到通过服务库的方式来进行管理,这是我们需要使用的一些服务,包括定单审核、定单分工以及服务开通等服务。在这些服务,下一步通过这样的过程,我们下一步对流程环节进行装配。因为通过流程的梳理,我们看到整个流程包括一些环节,比如定单的审核、客户的确认以及客户的洽谈等等。我们通过这些服务,来装配我们流程的环节。好,在这里我们可以看到,对当前这个产品销售流程,会包括这样一些环节,每个环节会使用到我们上面的定义的服务,比如开通的服务。下面由于我要演示一个变化的过程,我主要演示流程从开始的状态,变成后续的由于一些导入产品的变化,这就是我上面强调的四点,发生了环境的变化,从两个环节变成了六个环节。首先,从收到方案之后,判断我们的资源是否支持这样的业务流程或者支持这样的定单。下一步到客户经理确认,之后要做客户的洽谈,以及之后合同的签订,这是正常执行的流程。好,第二步就是在流程中,每一个环节,我们有可能需要有一些业务流程的规则,比如说在客户经理洽谈的环节,如果是洽谈成功,我们客户经理确认的环节,如果确认成功,我们进行洽谈,如果确认不成功,我们需要修改方案,然后再客户经理确认。如果我资源不支持定单的话,整个流程就结束。同样在客户洽谈这里,如果客户洽谈这里成功,进行合同签订。如果不成功,我们要修改方案,进行重新的审核和确认。

  第二个涉及到对流程规则的调整。如果是客户经理洽谈之后,确认通过,进入到客户洽谈环节。大家可以看到,在这里我们通过上面讲的规则引擎的方式来支撑我们通过业务方式来定制业务流程流转规则。这是这么一个业务规则的定义。同样,在客户洽谈这里,也是需要设置业务规则。好,我们对流程的第二个关键要素,就是对业务规则的定义已经实现。第三个关键要素,我们对流程中环节的参与者进行定义。比如说在客户洽谈这一个环节,我们可以设置参与是某一个机构、角色或者岗位来执行,我们也可以通过技术规则的方式来计算。第三个就是对流程环节的KPI进行调整。比如客户经理的确认,我们需要两个工作日来完成,这里就需要设置一下,比如说16个小时。我们对不同岗位可能会制定不同的日历,对A部门可能是6小时的工作方式,对B部门可能是9小时的工作方式。在这里是流程的第四个关键要素,是KPI的设置,这里我就不具体演示了。定义好了之后,我们对设定的流程进行验证,看是否满足业务流程的规则。下一步,根据我们刚才的介绍,我们已经实现了流程的组装与定制。下一步我们来通过BPS产品发布我们的流程。

  大家可以看到,流程状态发生变化,已改动,这里我们可以重新发布流程。这样的话,流程通过热部署方式部署到工作引擎中。下一步我们通过工作流的一个客户端以及管理监控工具来做一下整个流程的运行以及管理、监控。好,我们首先提交一个产品销售的售前方案。比如我要开通这样一个专线,开通之后,这个流程就启动了,会产生工作项。在客户端中,我们可以看到这样一个流程已经运行,我们可以见到整个流程的流转状态。第一步提交方案,到确认的环节,下一步到客户经理确认的环节。下一步我们再具体执行。我们这里看到,如果说通过,不通过,我们按不同业务规则来执行。这里,我们看到是不是按我们上面设置的规则来进行。这一部我们对流程进行监控。大家看到,按我确认通过这样一个业务规则来继续执行。这是演示整个业务流程实现的过程。在这个过程中,我们可以看到对业务层面上对整个流程的周期,到整个环节的装配,到环节库的装配,到流程的组装和定制,以及发布流程、运行、管理和监控。第二个就是对四个流程关键环节进行调整,第一个是流程原则,第二个是流程中环节进行调整,第三是流程的参与者进行调整,第四个是对流程中KPI进行调整。为什么通过普元的BPS产品可以做到这一步呢?这是进行我们设计的时候是把整个流程分离,在业务层面上我们把流程的关键要素列出来,这就是我刚才上面讲的,如何对流程的四个关键要素进行调整,第二个是我们在技术层面上,我们来实现流程中所使用的服务。这个我同事已经介绍过,我们整个服务的规划和设计,以及服务的构造,这里我就不详细介绍了。

  基于这样的流程设计思想,我们在整个流程实现的过程中,是基于SOA来实现的。这里可以看到,从整个业务分析,到流程实现,我是通过选择库里面的服务来进行整个流程的编排。只有到流程中所使用的环节不存在的情况下,或者调整的情况下,我们就要通过技术域,来实现整个流程的开发。我们这里面实现了两个分离:第一个是技术域和业务域的分离,从技术域实现流通中的服务就可以了。第二个,实现了流程中建模与实践的分离,可以实现业务员和技术员的分工,可以各展所长。

  最后我们看一下,我们普元的产品是如何来实现的,并且取得的客户收益是如何的。这是我们刚才介绍的产品的流程图。在这里我介绍的是我们在安徽电信的全业务服务保障以及电子项目中实施的情况。首先在系统建设之初,安徽电信对我们的业务流程平台提出了一个很高的要求,他们提出的一个要求就是长期解决管控的问题。什么意思呢?就是说我要实现业务流程快速的定制,新业务的快速定制以及我对已有业务的灵活调整,这需要很快地实现。第二个,在实现的过程中,从整个流程的梳理到流程的编制、发布,整个过程我需要全管控的方式来管控起来。这个其实在实现的结果上,它已经实现了这样的要求。这个项目是06年的6月份,通过半年的时间实现了部分业务全省上线。在07年10月份统计的,当时整个系统已经实现了大概三千个流程,其中在用流程是898的,整个业务流程是不断变化、不断调整的。在这个过程中,可以看到,在用的898的,最终总的流程有300个,也就是说有备用的、废弃的流程。

  第二个,我们是基于SOA的方式来编排服务的。在这里可以看到,原始的服务可以达到1:13的复用比例。从实施的效果来看,取得了这样的收益,第一个就是最开始它提到的快的问题,就是从业务流程的上限和调整,需要两、三个月的时间,现在只需要两到三周的时间。第二个就是在业务层面上来实现流程的定制和灵活的调整。一方面可以全过程的管控,从流程的梳理到流程的编制,到流程发布。第二个是业务人员可以在业务层面上实现流程关键要素的调整,这样当业务流程变更的时候,我们可以灵活调整,快速上线,快速部署。第三个是可以促进业务员的定制,就是促进了整个流程创新的历程。最后,基于刚才上面讲的,基于服务的方式,对这套流程会有一个很明确的方式,就是可以服务,复用的方式来实现产品的稳定性和开发的项目,进而降低它的成本。也就是说,从整个效率自然有很大的提升,并且用灵活的方式调整业务流程。最后,整个效率、质量以及灵活性都大大提高,成本降低了。

  最后对我介绍的内容做一个简单的总结。在业务流程实现的过程中,特别是强调变革与创新的过程中,其实业务流程的实现是一个挑战,需要敏捷的变化,灵活地调整,并且需要很短的周期实现这个调整。这样我们要通过创新的模式,就是基于SOA的方式来进行调整,这样我们才能实现流程敏捷的定制。在整个实施的收益方面,我们通过普元的BPS的产品,帮助客户高效率、高质量、灵活性、低成本来实现业务化的流程,构造SOA版的应用。

  今天我介绍的内容就到这里,谢谢。

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

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

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

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • 联合创新,携手共赢 华为与Commvault签署全球合作联盟协议

    【中国,上海,2015年9月19日】在2015年华为云计算大会上,全球领先的信息与通信解决方案供应商华为与美国知名的数据管理软件及相关服务主要供应商Commvault签署全球合作联盟协议。基于合作协议,双方将会加大投入数据中心备份解决方案在云化环境下的“可服务化”技术研究 。Commvault公司全球业务发展副总裁Andreas May、华为IT数据中心解决方案总裁马力出席签约仪式。

  • SOA在企业中的关键是服务构造

    SOA为企业所能带来的价值,就是基于其内部统一的数据交互接口、将业务分解为独立的模块成为服务、提供统一的服务接口,这样的思想所带来的是能够让企业……

  • 松散耦合的七个级别

    在软件领域,“耦合”一般指软件组件之间的依赖程度。那么,什么是依赖?各种依赖对耦合度和松散度有多大影响?软件耦合可以发生在许多级别。必须区分生成时(编译时)依赖和运行时依赖。在分布环境中,为了确定系统的耦合程度,必须分析各个级别。下面我们就来具体看一下。

  • 数据虚拟化:数据整合问题的解决方案?

    数据整合是一个非常困难的问题,但是据专家称,一种相对新颖的信息管理方法可以帮助人们解决这个问题,即数据虚拟化。让我们来看看具体是如何解决的?