业务建模七大关键应用场景(上)

日期: 2009-08-24 作者:董明峰 来源:TechTarget中国 英文

  WebSphere Business Modeler是IBM 业务流程管理解决方案重要产品之一,企业业务人员利用它对业务流程进行建模、设计、仿真、分析、优化并生成报表,还可以把业务流程导出到开发工具中对流程进行进一步实现和运行监控。此外,从Modeler 6.2版本开始,Modeler还支持了对运行时引擎的直接部署。

  本文以一个典型的银行信用卡申请的处理流程为背景,以Modeler使用中七个关键的应用场景为章节,重点介绍使用Modeler过程中的一些最佳实践和使用经验的总结,能够帮助业务人员很快的了解Modeler的产品定位和主要功能,并运用到实践中。

  1. IBM业务流程管理和Modeler建模

  IBM WebSphere面向服务的业务流程管理(Business Process Management,BPM)解决方案为企业管理人员实现业务随需应变,提高生产效率的目标提供强有力的基础平台。在IBM WebSphere业务流程管理解决方案中,核心的主要产品包括WebSphere Business Modeler(Modeler)、WebSphere Integration Developer(WID)、WebSphere Process Server(WPS)和WebSphere Business Monitor(Monitor)。这几个产品分别满足业务流程的建模优化、组装实现、部署执行和指标监控四个流程管理关键的四个层次上的需求。他们之间依次输入输出,整体构成一个业务流程管理的闭合环路。通过这一个循环的反馈,企业能够根据自身业务流程特点,准确识别企业运行过程中存在的种种问题,并快速适应外界环境的变化。

  流程建模实质是业务人员用软件的形式描述企业的业务模型,包括业务活动之间的序列关系,定义流程涉及到的资源和人员,帮助业务分析人员识别流程中的瓶颈,从而为流程优化奠定良好基础。Modeler即是业务人员用来对业务流程进行建模的工具,它构建于Eclipse平台之上。业务人员通过Modeler对业务流程进行建模、仿真、优化并生成报表。Modeler可以看成是连接业务人员和IT人员的桥梁,更懂得企业的需求的业务人员设计并优化流程,然后在IT人员的帮助下将流程实现并部署在运行环境中。部署的过程有两种途径,一种是通过WID进一步实现再部署,另一种是Modeler直接部署。下图1.1即是一个各个产品相互连接构成BPM解决方案环路图。

IBM WebSphere BPM产品集成示意图

图1.1 IBM WebSphere BPM产品集成示意图   

  本篇文章重点介绍对运用WebSphere Business Modeler过程中的最佳实践。这些最佳实践和我们在帮助文档中的不一样,更多的是使用经验的总结,能够帮助业务人员很快地了解Modeler的产品定位和关键的功能点,并运用到实践中。本文以Modeler 6.2为介绍对象,引用一个银行信用卡申请处理流程为背景,讲解Modeler在信用卡申请的案例中的应用。

  本文主要从以下几个方面来介绍:

  1. 业务建模

  2. 仿真分析

  3. 报表功能

  4. 导入和导出

  5. 和开发工具WID的集成

  6. 流程向WPS的直接部署

  7. 和监控工具Monitor的集成

  2. 场景一:业务建模

  流程建模的过程就是将企业流程管理涉及的元素,比如流程、数据、角色、资源、组织等通过定义和图形的形式表示出来。Modeler通过使用标准化的元素,使所创建的业务流程保持一致性并且更加易于理解。常见流程建模对象包括流程,各种任务、循环、存储库、服务以及控制节点比如决策、合并等。Modeler流程建模的过程比较简单,主要操作从画板里拖拽出自己需要的元素即可,使用流程画板提供的基本元素即可以组装出用户常见的各种业务流程。

  Modeler根据用户不同角色提供了不同的建模视角,例如初级的视角为用户屏蔽掉很多技术的细节,高级的用户能够设置更多的流程和数据模型的技术细节。

  业务人员在设计流程的之前,推荐的方式是与企业IT架构师或咨询人员一起确定下来流程中哪些任务将来可以做成服务,或者利用企业已有的服务,在Modeler中设计成可以共享的全局任务或服务。IT人员可以将这些业务流程以Web Service的形式实现以供在运行时直接调用。

  为了使业务流程的各个属性更加直观易读,用户还可通过使用颜色、标签以及泳道布局能功能。

Modeler流程编辑图

  图2.1 Modeler流程编辑图  

  像很多常见的软件开发工具一样,Modeler对模型信息支持存储库和文件的多用户共享。通过连接CVS或ClearCase,可以进行共享、版本比较、跟踪报告、同步、更新等操作。

  除了支持常见的版本控制功能,Modeler同时提供丰富的企业内部建模相互合作的功能。Modeler发布包括一个Publishing Server版本,在用户安装好服务器端的Publishing Server以后,业务人员可以将建好的模型发布到网络中,其他的业务人员可以通过网页去浏览发布的流程,并发表评论。除此以外,Modeler也可以将流程通过RAM以Asset的形式在企业内部共享。

  Modeler流程可以模型化现实业务中形形色色的各种流程,有的时候需要利用工具的使用技巧去达到目的。比如,借助于本地存储库( Local repository)去实现外部流程和循环内流程之值传递,从而达到控制循环的流程。

  例如,在信用卡审批流程中,信用卡有一个征信的子流程要实现这样一个利用循环的场景。客服人员需要给客户打电话,当电话接通后,客服人员将客户的反馈记录下来,如果电话不通,客服人员隔四个小时再打。这可以借助于While Loop来实现。While Loop的循环条件是客户应答存储库的值不为真。父流程包括一个本地存储库,它包含了传递到循环内部的客户信息。循环里的第一个任务可以从存储库读取数据,客户应答任务的输出给存储库赋值。

信用卡通知客户循环子流程

图2.2 信用卡通知客户循环子流程

  3. 场景二:仿真分析

  流程优化是建模的主要目的之一,仿真分析是优化的前提,同时对于理解业务流程非常重要。仿真功能是Modeler一个很重要和有特色的功能。现实的情况是用户因为业务流程的复杂性,往往对自己建好的模型不够了解。比如流程分支一共有多少种可能性,每一个分支成本的差异等。仿真分析的功能让用户能从成本、时间、分支等多个角度验证流程,评估流程的性能,对流程的模拟执行生成统计分析,从而帮助用户找到流程中的瓶颈并加以优化。

  运用仿真比较典型的场景是用户首先创建一个现实中流程的现状模型(AS-IS Model),然后通过Modeler进行分析优化,针对已有流程的缺陷提出流程改进方案,得出一个期望部署实现的模型(To-Be Model)。Modeler提供了两个模型间的的对比分析功能。

  在用户使用仿真过程中,最大的困难是仿真之前工具提供的看起来纷繁复杂的设置项。以下就把主要设置项列表如下,对于其他设置,若没有特殊需求,可以保留默认值。

  表3.1 仿真主要设置表


 
  在进行仿真设定时,Modeler支持多种数据分布的设置作为数据输入,包括指数分布、Gamma分布、统一分布、加权和随机数列等。例如,本案例中可以采用概率论中的泊松分布来模拟信用卡中心每天收到的客户申请之间的延迟时间。

  Modeler的分析功能分析可以分为静态分析和动态分析。静态分析是对模型使用的原始数据进行归纳总结,例如比较建好模型中分析出资源的相关信息属性。而动态分析是从多次仿真运行的实例结果中进行分析,例如分析流程在多个数据项启动的多个实例中运行的平均成本的时间,流程的运行中的关键路径、最短路径等。基于仿真模拟运行结果的动态分析对各种业务流程提供了强大的分析计算功能。

  流程中使用数据驱动对用户使用仿真功能来说是比较困难的地方。所谓数据驱动,是用户在仿真过程中根据流程中数据项的属性使用表达式的驱动流程运行。仿真设置两个比较实用的技巧是对于Map任务节点的使用和Human Task节点。Map节点能够对两个不同数据类型的数据进行连接,用户可以定制连接的属性,这个节点在仿真是支持的,在实际的流程中会频繁用到。另一个是人工任务节点,在使用Form的情况下,它可以将数据项的输入展示出来,用户可以利用这个结点作为一个调试的功能来检查仿真时一些节点的输出是不是期待的结果。

  在本案例的信用卡审批流程中,对于一个用户资料是否完整的决策节点,我们即可以根据概率设置80%选择资料完整的分支,也可以设置表达式完全取决于决策节点输入数据的属性来决定分支。仿真的过程根据用户的选择对这两个设置进行取舍。

决策节点的概率和表达式设置

                          图3.1 决策节点的概率和表达式设置 
  
  仿真运行的结果以表格的形式显示出来,用户也可以将结果导成文本或Excel等格式。本例中的银行的信用卡审批流程,用户可以模拟用户在1000个卡申请请求发出后,所有可能的路径以及各种情况所消耗的平均处理时间和平均成本如下图3.2所示。

仿真动态分析流程可能性分析结果

                          图3.2 仿真动态分析流程可能性分析结果  
 
  在对已有流程进行分析后,用户会去试图对流程进行调整优化,比如调整节点的批卡率、应用新的自动业务规则以减少人工开支等。在相同输入的情况下,用Modeler重新仿真运行,并且和刚才的运行结果进行对比分析出平均成本和时间的变化,如下图3.3所示。

改进前后动态对比分析结果

图3.3 改进前后动态对比分析结果

  4. 场景三:报表

  报表是用户常见的一个需求,业务人员期望通过报表把流程和业务模型信息从不同的角度展示出来进行查看、分享和打印。Modeler为用户提供了丰富的多种预定义形式的报表模版,用户可以使用这些模版来生成基于某一个流程模型的报告,用户也可以设计自己的报表模版。

  报表功能使用的基本过程是用户首先定义一个报表的模版,报表模版的设计是通过报表模版设计器来完成,用户选择报表所需的数据源(Data Source)中的数据项(Data Field)并拖拽到模版中,再去绑定一个特定的项目对象来生成报表。用户最终可将报表导出pdf、docx等多种格式,也可以直接预览打印。此外,Modeler还集成了水晶报表(Crystal Reports)的功能,用户把Modeler提供的数据项导出成水晶报表所支持的数据对象,利用水晶报表强大的编辑能力完成模版定义,再在Modeler中与流程项目数据绑定,生成报表。

  Modeler中生成报表的位置可以在项目树上创建,也可以在流程图中,查询结果视图和仿真分析结果中生成。为了帮助您快速的设计美观,专业报表模版,下面是使用报表功能时常见的一些注意事项和技巧以供参考。

  (1)在开始编辑报表模版前,最好能提前好规划报表所需数据项的细节。可以先查找一下有没有合适的预定义报表模版可以借鉴。在创建报表的时候,把预定义的模版内容拷贝出来进行修改,可以起到事半功倍的效果。

  (2)许多企业都有统一的报表基本“框架”信息。例如,所有类型的报告中都需要包含一个一致的首页内容。用户通过构建包含这些共同元素的通用报告模版,在想要创建更具体的报表时,复制这个模版。如果用户期望多个报告模版中的所有页面使用相同的页眉和页脚信息,例如公司名称或页码信息等,那么可以创建一个包含这些信息的主报告样式(Style. Master),然后将这个主报告样式应用到相应的报告模版上。主报告样式其实可以被看作是一个报表模版的模版。

  (3)用过报表功能的用户,可能对于Data field复杂性有所了解,用户往往期望跨多个数据源的进行报表生成。用户可以利用报表导出成Word.docx格式的方法。用户可以先创建不同的报表利用不同的数据源,再将报表导出成.docx到Word中.然后就可以将报表内容进行合并了得到同一个报表.

  (4)报表编辑器中的组元素是在报表模版的编辑中是有个很有用的功能,它能够用来帮助用户对报表数据进行划定范围、组织和排序。

  例如,在本信用卡的流程中,为用户定制通用的报表模版,具有统一的包含页码和日期信息的页眉显示。用户想在一页的报表中显示出流程中用到的所有人工任务的信息,如下图4.1所示,在报表编辑器中将数据项的信息拖拽到报表中。同时将组(模版编辑器中红色框图显示)放到相应的数据项字段。对报表模版绑定流程对象并创建报告,发即可生成如下期望的报表页面。

报表编辑器和生成报表截图

图4.1 报表编辑器和生成报表截图

 

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

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

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

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • 在iBPM和BPM间做选择 不一定非此即彼

    大多数系统都有一样的能力,在很多人看来,除了BPM或者iBPM这两个标签以外,实际上它们之间并没有任何区别。

  • 用BPM策略对遗留应用现代化

    一些人提议把业务流程管理作为应用现代化的手段之一,但也有人对此提出质疑,但采用BPM策略可以成为现代化遗留应用的明智方式。Tom Nolle对此进行了解释。

  • RESTful API设计给开发人员带来怎样的未来?

    在模块化应用世界里,最为持久的争论莫过于面向服务架构和表述性状态转移之争了。本文探讨这样的争论带来了什么及其背后的原因。

  • 云BPM新常态解析

    云端业务流程管理已经不再是什么新鲜事,更不再是什么可怕的方法来管理重要的业务流程。现在,它已经普遍被认为是一种新常态。组织已经从这一技术中获益,使它来更有效地访问和管理企业信息。