各位领导、各位专家,大家下午好。
今天很高兴有这样一个机会和大家一起交流两方面的体会。第一个就是协同软件在中间件领域经过的六七年的探索和发展,有一批成熟的产品。在这个方面,就中间件的发展过程一些体会跟大家做一个探讨。第二个方面中间件如何进行业务的重组以及融合过程中起到一定的作用。这个方面也跟大家做一个探讨。
在这之前我简要的说一下对于协同的情况。协同目前来说,主要的业务还是整个业务集成中间件的研发和发展。在业务集成中间件这一块,目前来说,无论是从它的技术还是市场应用情况来看,在国内外有显著的地位。尤其是在电信方面的应用,协同在这个市场份额中得到了广泛的应用,尤其是电信方面得到的非常大的市场份额。同时由于协同中间件在这个方面的一些研发和成功的应用,也得到了国家相关的支持。比如说国家“863”的重点项目,基于流程的软件生产线,这样一个非常重大的重点项目也落在了协同。国家发改委流程的中间件也落在协同,这说明协同这一方面的工作得到了国家的认可和肯定,也得到了我们广大使用者的认可和肯定。
协同目前来说,基于原来的业务集成中间件的基础上,现在基本规划有两个,两大产品系列。一个就是协同的SynchroBPM的产品线,另外一个是SOA的产品线。下面我们简要的介绍一下这两个产品的构成。
从这个图上大家可以看出,下面有一层是流程引擎构成部分。主要是面对WEB的引擎,BPEL。大家知道现在这样的组件越来越多,协同提供了这样基于服务的引擎。第二个是Workflow,这用得非常广泛,也非常成熟,主要解决手工流程比较复杂的中间件。第三个就是协同的智能动态工作流。还有一个是Report Fosm。同时上面还有一些管理工具跟组织结构管理工具。目前来说协同的BPM整个基本构成就是这样的。
协同做这样一个BPM目的目标是解决什么问题呢?第一个是解决现代基于服务流程自动化问题。第二个是解决动态流程和流程分支爆炸的流程自动化问题。第二个方面在目前流程领域成熟的产品是没有的,这是我们跟清华大学一起研究的,具有自主的流程,已经嵌入到工作流程中。第三个实现一般手工参与比较多的流行自动化。第四个是把业务建模和流程建模进行一体化。我们看上面一个图,往往流程一体化是业务人员无法看到的,或者业务人员无法改动的。我们BPM提供了业务建模的工具,让一般的业务人员构建这样的业务流程,构建完了以后自动到我们的引擎上面。就是达到业务建模和专业流程过渡、一体化的工作,而不是原来把流程划出来,然后用专业的建模再去画,需要人脑转化,现在达到自动的转换。第五个是实现流程的决策分析功能。
再讲讲第二个产品线,Synchro SOA Platform体系架构的产品线,刚才我们提到“863”的项目,有一部分出来了,有一部分还没有出来。这个可以看一下,下面是一些服务或者适配器。在上面,查试层安配了中间件,负责不同应用之间、不同数据源之间的交换。再一个就是我们的ESB的功能,也是我们集成的一个产品。再上面就是我们刚才说的BPM层次。再上面是业务活动的监控,基于一些数据的分析和监控状态。再一个是展现层次。右面是基于这些服务的开发工具,像业务建模工具、服务平台工具等。左边这一块是管理方面的。一个是整个SOA的系统管理和监控。这是安全管理。还有一个是很重要的一块,就是基于SOA架构服务库的管理和构建库的管理。一个是库的管理,库结构来管理这个构建和相应的服务以及适配器。在上面有一个注册,就是怎样发现这个服务。你编制流程的时候,怎么发现这个服务,就是这一块。
我们提出这样一个SOA平台的目标,也是想达到这么几点。
第一点提供一个服务标准化开发。我们经常讲SOA架构,但是这个服务到底是怎样的情况?各人有各人的说法。在我们这里有一个唯一标准的服务架构,包括SOA,包括其他的,都有一个标准的架构。我们开发人员看这个,来标准的开发服务。同时有标准的开发,还有一个标准的库,这样可以标准的删除和修改。
第二个实现服务、应用和数据之间的快速集成。哪怕是数据的交换或者是流程的集成、流程的应用,形成快速的集成。
第三个实现和Synchro BPM的无缝集成使用。
第四个,总的来说SOA的平台是推动应用开发松偶合。以前我们开发是整体一块,这样整体一块不适应业务的灵活变化和成熟。当然业务发生变化的时候,你这个系统架构上需要发生改变,或者SOA这个系统整个重来,不利于可持续发展。基于这样的架构可以开发系统是一个松偶合、松散的结构,基于标准的结构。这个可以重用、可扩展。就是灵活的应用。这是我们构建SOA平台的目标。
我跟上午各位厂商的话题有一点不同,是技术方面的逻辑。协同一直在中间件技术方面做了长期的探索,所以说在这一方面有一些经验跟大家一起探讨。
这个图是我们原先、原有产品的体系架构图。最底层是我们负责底层消息传输、交换的。基于这个上面是ESB的产品。再上一层是我们的工作流,它来负责下面几个流程的设计。不同的流程应之间通过ESB进行消息的交换和服务的交换,达到一个远程的消息安全查试。再上面是我们的展现层。
下面我们介绍一下各个分产品的情况。前面讲的是我们整体集成产品的产品线。Synchro Portal,这个大家比较熟悉,这是协同的产品之一。这是一个灵活展现的Portal服务器,供用户个性化的定制它的展现页面,统一展现在一个框架上。
这是Synchro Portal访问过程。我们以前用不同的密码和用户到不同的系统进行访问。我们通过集成把这些运用到同一个界面上,供不同的人访问不同的东西。时间长了,你觉得这个界面不好的话,你还可以进行一个个性化的设置,改变页面显示的方式以及显示颜色。
下面是Synchro Portal的作用。我们刚才把不同的应用和有集成的展现在一个页面上,比如说这个里面的OA、人力资源管理、经营分析、BOSS,可以展现在一个界面上。随着你的业务变化、成熟,可以把这些系统展现在一个界面上,统一来访问。使不同的人访问不同的界面,如果看时间长了,还可以进行界面的修改、设置。在展现层提供了一个灵活展现的界面,如果我们后台的业务发生变化,或者我们现在业务需要合并,原先系统是分离展现,现在要在一个层次上,我们用这个可以把展现层进行集成、统一展现。
再看我们另外一个产品,FLOW的功能。这个是用得最多的。底下是消息总线,我们会经过可靠的消息传输,而且这个在传输的过程中,消息是不丢失的。再上面就是我们的工作流引擎。再上面是流程的部署和管理的层次。再上一层就是开发工具层。比如说流程的建模工具。你的应用如何进行灵活化?就是通过这样一些服务和这样一些流程的灵活性来达到应用的灵活性,还有集成的开发工具、产品工具等等。右边是层次的管理,一个企业的结构层次,一个角色层、组织结构层以及人员层,是层次的管理。左边是管理工具层。
这是我们FLOW基本的界面,利用建模工具可以画这个业务流程,业务流程改变的时候,可以再改变这个流程。这个监控测试,通过这样的监控工具可以透明的看到你业务的进展情况,是从哪一个流程走的,走到什么地方?现在传给谁了?通过这样一个监控可以看到。同时你的流程对不对?它也可以来测试。用测试的工具来测试你的流程是不是有死的环节,或者有不合理的环节。还有就是发布运行,消息可以很好的发布上去。还有一个是及时通信。我们流程可以通过手机,也可以类似QQ这样的功能来提醒,同时这个工具也可以进行查试。还有管理监控的工具。
综合我们原有的BPM新加的功能,整个BPM达到什么样的作用呢?
第一个就是WEB服务组合流程的开发。你的应用基于WEB服务或者服务架构来开发的话,你的流程就可以用WEB服务来进行流程的设计。
第二个,对手工流程参与比较多的,流程比较复杂的,也可以用这样的进行开发。
第三个,对动态性很强,现在设计的时候无法预知流程怎么走,同时分支是多少也无法知道,如果分支非常大的,需要动态流程的开发。
这三方面是整个覆盖流程的应用。
第四个是应用界面的开发。通过BPM可以把我们的制度规范下来,固化下来,使得业务流程按照系统设计的方式做。
第五个是业务分析:一个是流程监控,刚才也讲了。第二个是成本度量。如果在流程上设计了相应的成本,这个任务进展了多少,完成了多少,领导就能够监控出来,不需要交给你这样一个任务,这已经完成了,不需要问这个,问那个,通过这样的系统就可以看到,这就是进度度量。
第六个是透明化。我们每一个职责明确是透明化。
第七个通过这样一个流程使我们业务和进展跟IT系统紧密的联系在一起,有助于历史数据的积累。
第八个作用就是流程的自动化,流程完成了以后,会按照流程当时设置的逻辑来做,另外一个人不做了,也可以别人来做,就是达到自动化,利用这个可以推着人做事。
有这样一个流程的平台,就使得我们的业务系统有适当的灵活性,发生变化了,可以把这个流程改一下。我们基于流程系统构建这样一个业务应用系统,这是一个活的,可以适应业务不断的发展变化。
再看我们另外一个产品就是企业服务总线的产品,SynchroESB。原来有EA这样的功能,自从ESB出现以后,对EA有一个新的标准,是可执行的标准。标准适配器和标准的消息传输以及流程设置平台把不同的应用结起来。同时这样全面的适配器可以满足服务,这可以说是SOA阶段,一个基本的SOA架构。
协同的ESB的分布式集成结构。这有很多,比如说数据库、通信、短信、不同语言方面的等等,这样一些不同系统里面的技术,通过这样一些服务和适配器可以快速的做好。就是说两个系统之间要交换数据,或者多个系统有不同流程的时候,通过你一些设置就把两个系统接起来,通过这样标准的接口,通过设置把这个接起来,我们不需要编程,系统发生变化又重新编程,这不是死的。
这是ESB的界面。再看一下ESB的产品有什么作用。这里有三个图做一个对比。这个产品一的结构图,这不是一个标准、开放的接口,这样的系统随着外面的应用系统越来越多的时候,维护起来是比较慢的,也比较困难。发展到第二个的时候,以中心辐射性的集成架构,这出现性能瓶颈问题、失效问题。第三个是基于服务总线的架构,这样的服务总线架构是可以无线扩展的。目前流行国外的,像大厂商以及国内的厂商的服务总线产品有两种。一种说是服务总线,其实是上面第二个,是辐射的。协同是一个可扩展的,就是有一个中心服务器,外面还接了一个服务器,所以这是无线的,可扩展的架构,这就解决了性能瓶颈问题,同时解决了一个标准问题。
ESB是在SOA架构中实现服务间智能化集成与管理的中介。除了解决三方面的问题。一个是面向服务的架构,分布式的应用可以重用的服务组成。第二个是面向消息的架构,通过ESB不同应用之间发送和接受消息达到集成。第三个是事件驱动的架构,不同应用之间通过ES,进行异步地进行的传输。
我们再看一下ESB不同应用的情况。一个是用于当服务的请求者和服务者基于不同协议时的消息转换。在这个进行对接的时候、连接的时候有一个协议转换的问题可以通过ESB实现了。第二个是消息广播形式,当一个系统转换的时候,就是在消息的驱动下,互通系统都发生了相应的改变。另外一个是服务匹配模式,用不同的语言,比如说JAVA等这些不同语言之间进行匹配的时候、接口的时候,可以实现一个服务不同的匹配。最后一个是把不同的后台分布在一起的系统进行统一分析、统计、查询的时候,把后台系统通过ESB抽取出来,把这个抽取到数据中心,然后统一分析、查询,统一提供决策。当然这样的情况需要实时性很高的,因为这是以时间间隔抽取这样的数据。另外一个是联合查询,这对实时性要求比较高的,就是联合查询。再一个是数据的信息和交换,比如说不同系统之间的数据交换,增加了ESB架构和不同系统模式的架构,这个是多个系统间的同时交换,并不是两两的交换。还有是业务功能的共享,比如说我A系统用B系统的功能,通过ESB提供的适配器可以远程用B系统的功能,透明的访问B系统提供的功能。另外一个是服务的架构,最后不同的应用进行适配器的连接,或者用到另外一个应用上。这是分布式的业务流程,不同的应用之间要达到一个业务流程驱动,通过ESB提供适配,然后进行流程的重新设计。B2B是不同供应商之间的集成。
总之从这个图上就可以看出,通过这样一个SOA架构的ESB,适合我们不同的应用系统,通过这样的层次可以把它融合在一起,给不同的人展现不同的界面。西面这是一些原有的系统,或者新开发的系统,通过这样一些系统,我们构建一个构件层,也就是适配器层。我们第三层是服务层,这是构建原子性的服务。上面是一个大系统的适配器,再上面是系统内嵌的原子性的服务,这个原子性服务之间有不同的流程、不同的设计。通过前面展现层,用户可以运用它。这样一个层次结构在下面的系统完全加的时候,有可能下面的系统会加,或者加一种就可以了。在下面发生变化的时候,下面的流程不需要发生变化,你可以在上面新加一层就可以达到这样一个业务不同层次的变化。
通过协同提供这样一个中间件,目的就是基于这样一个中间平台之上,建立应用系统,达到高度的灵活性。在松散的架构下他们业务的不断成熟、不断变化,使得应用系统的改变到最少,投资最少。从展现层上达到一个灵活性,从流程的灵活性达到业务流程的灵活性。从系统的接口上达到一个适配器标准的灵活性,整个达到协同和谐、松散的集成。
这个图看一下,这是一些主要的系统,业务支撑系统是这些,还有网络运维支撑系统,这里还有一些管理信息系统。这三个系统之间的集成以及各个系统内部发生业务变化,业务扩展的时候,一些集成就是可以通过协同提供的,可以达成标准集成,不需要中间私有的协商把他们仅仅交织在一起。通过标准的集成松散接口,把不同三大标准系统之间或者系统内部之间用这样一个标准结合来接起来。
下面大概看一下协同的产品应用情况。我们在电信以及其他的行业应用是很大的。这是我们通信行业的用户,像电信总公司、网通都有。这是政府行业的一些案例,像铁道部的采购。还有能源行业、金融行业,以及一些其他行业的应用。下面我们看一下崭新的业务案例。
中国电信业务开通系统,这个从生成订单到开通业务,是这样一个过程。这是其中一个业务开通的流程。这是中国电信财务管理系统的流程。这是山东网通运维系统。这是中国网通总部MS的介绍。这是江苏移动BOSS系统开发维护流程管理。这是黑龙江网通的MSS。
大概浏览了一下我们的案例,我想协同致力于业务集成中间件的开发,基于这样一个产品更灵活,可以适用的业务不断的融合、不断变化的需求。谢谢大家。
|