time 
设为首页】【收藏本站
当前位置: 主页 > 软件工程 > 分析与建模 > 面向大众的业务流程管理

面向大众的业务流程管理

时间:2009-12-01 20:27 点击:441次 字体:[ ]




  摘要:业务流程是一个组织及其合作伙伴的人员及系统所完成的工作的一种正式表达, 它旨在给内部或外部客户提供产品或服务。业务流程管理(BPM)是正式化和自动化业务流程的技术。AquaLogic BPM Suite(ALBPM)是一个完全允许端到端业务流程管理的业务流程管理系统。

   这篇文章将介绍该产品的功能, 以及转用BPM时需要考虑的一些重要事项。本文未对BPM的概念进行完整的描述, 但将给出AquaLogic产品提出的BPM愿景。

  本文适合想初步了解此产品及技术的读者,也为解决方案架构师和负责设计准备转移到基于BPM的解决方案的软件系统的人员提供了重要信息。同时,开发人员和高层管理人员也能在本文中受益。

  准备工作 (开始之前)

  开始之前,希望您先问一下自己以下问题:

  什么是BPM?

  您认为业务流程在现实中应怎样实现?
  您是否认为您的组织中的流程在应用程序中得到了很好的反映?
  您能够很轻松跟踪组织内部的流程吗?
  使用BPM是否能够改变组织中人员的工作方式?

  读完这篇文章时,再问自己一遍同样的问题。然后对比答案,看看您是否能够有解决这些问题的更好方法。 这篇文章的目的并非回答这些问题,而是让您自己能够很好地阐述这些问题,并得出自己的结论。

  理论介绍(一些定义)

  业务流程是一个组织及其合作伙伴的人员及系统所完成的工作的一种正式表达, 它旨在给内部或外部客户提供产品或服务。业务流程最简单的表达形式就是一组活动,它们表示流程的不同步骤,通过一些转换连接在一起。活动可能需要人为干预,也可能是全自动的。对于需要人为交互的活动,可以在流程中定义一个角色,标识允许谁在这里与流程交互。流程起到定义的作用,而流程中的实例就是完成整个流程的实际项目,从一个活动转换到另一个活动。实例总是开始于流程的Begin活动,而结束于流程的End活动。实例的路径完全取决于实例的数据以及外部环境。

  转换是活动之间的直接连接, 许多的转换进出一个活动.。一旦某个实例完成了一项活动件,外发转换将被评估, 其中之一被选中,以使实例转向下一活动。条件转换包含一个布尔表达式,该表达式将被计算,要使实例继续沿流程前进,结果必须为true。有些转换是基于时间的,这就意味着如果到了预期时间,实例还在那里,这些转换将会触发到目标活动的自动路由。流程也可以有状态:可为流程定义属性,接受每个实例的一个值,这能帮助您保持实例状态,以转换到不同的活动(例如,报价总数>X,那么就执行该活动)。

  从纯建模的角度看,这就是BPM。但要执行流程,这里的定义是不够的;您还需要与其他系统沟通,将流程反映到基础架构中。这就是集成发挥作用的地方了。对于流程中的每一个活动,您都可以定义任务,这些任务基本上是由一个实例抵达该活动时所执行的代码组成的。任务可以通过多种方式实现。当某个实例抵达一个自动活动时,为该活动定义的任务就会被执行,实例将根据执行结果移动到下一活动。

  对于人为交互的活动,任务的执行是由最终用户通过客户端工作空间触发的。AquaLogic产品内置了集成功能,可以应用于任务代码之中(这一特性将在以后的文章中更全面地加以介绍,它也是本产品最重要的特性)。任务更新流程状态、访问和更改外部系统,并与最终用户交互等等。任务就是将一个简单的流程模型转变为一个流程驱动的应用程序。

   业务流程管理是正式化和自动化业务流程的技术。要想成功地进化为一个面向流程的组织,您必须使用合适的工具来设计、执行和监控业务流程。这就是业务流程管理系统的构建目的。也是AquaLogic BPM设计的目的所在。

  时间问题(转移到BPM之前)

  如果组织想要获得更高的敏捷性,就需要适应业务运转所用到的软件。从概念的角度来看,变化最频繁的不是后台应用程序、不是访问客户的web服务定义、不是EJB的位置,也不是它们所基于的ERP的版本。业务需要适应的最重要的变化就是流程本身:业务必须以某些标准为依据,添加一条更快捷的途径,来自动地认可顺序,从而修改提高或降低认可率的参考值。组织需要处理认可,并平行地检查活动;需要改变执行某项活动的角色;需要手动处理一些异常;需要实施新的业务规则。处理此类变更是BPM的核心内容,允许在不更改任何底层组件的情况修改业务流程。

  下节将介绍一些我认为对于理解BPM的真正价值十分重要的东西。

  业务流程管理背后(流程尽在控制之中)

  通过接纳BPM,也就具体化了业务中的一个重要片段。问题是,如果用户的流程模型不可执行(即它只是纯粹的模型),那么最终您是不得不将其映射到一个应用程序、转换它,就像从“分析”到“设计”再到“实现”时的转换一样。这使得将业务流程映射到生产中真正运行的部分非常困难。采用AquaLogic BPM Suite,您可以构建出一个完整的流程驱动的应用程序,将任务附加到活动,而这些活动就是业务流程内部发生的真实操作。任务是流程的代码,既可以是用户驱动的,也可以是系统驱动的。任务的执行是流程中状态改变的主要驱动力。因此,这个流程切实地驱动了应用程序,直接实施了流程中允许的流、任务和操作。

  编写流程驱动的应用程序并不会改变您编写代码或实现服务的方式,您仍然是在以相同的方式编写Java类、Web services和JSP。主要的差异在于这个应用程序是流程驱动的。也就是说,所有的代码是通过活动任务触发的,所以您只需专注于这些任务的代码即可,剩下的事情都可由AquaLogic BPM Suite处理。用户工作空间中提供了一些开箱即用的基本流程操作。



本文地址 : http://www.fengfly.com/plus/view-158719-1.html
标签: 流程 管理 大众 活动 面向
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码: