2009-05-26

BPM软件调研

Views: 19404 | 3 Comments

BPM软件调研

作者: ideawu

http://www.ideawu.net

2009年5月25日

本文调研了两套BPM软件, 商业化的Oracle BPM软件套件, 和开源的JBoss JBPM框架.

BPM软件可以做得很薄, 也可以做得很厚. 如果做得很薄, BPM软件只是一个流程引擎, 流程引擎只负责生成流程实例和任务实例并执行, 流程引擎只关心任务的执行顺序.

显然, 如此原始的BPM软件(工作流引擎)根本卖不了一分钱. 所以, 软件商在提供BPM软件时, 工作流引擎的外围工具都是卖点. 所以说,

BPM软件 = 流程引擎 + 接口 + 外围工具

流程引擎提供了一种机制, 用于创建, 执行和监控流程. 所以, 创建什么样的流程, 接受什么样的输入以及并执行什么操作和产生什么样的输出, 如何统计要监控的数据, 这些都留给了BPM软件的使用者, 这也是工作难度和工作量的所在. BPM软件提供了一些工具, 可以改善这些工作, 但是, 从实际来看, 只减少了极少的工作难度和工作量. BPM提供的工具的使用门坎, 工具的智能程度和对业务的抽象水平, 共同造成了这种结果.

所以说, “工作流自动化不仅涉及到流程建模,还需要建立电子化表单,及定制各种报表。所以对于工作流系统,如果只有流程建模工具,没有表单设计器及报表设计器,或是这方面的功能不够强大,就需要编写程序来完成表单及报表的功能。这就意味着必须依赖供应商来完成流程系统的实施,或是在公司内有专业的IT人员来完成这些工作。”


Oracle BPM

Oracle BPM是一款商业的BPM软件套件, 包含Oracle BPM Suite Oracle BPA Suite, 提供了许多实用的外围开发工具. Oracle买来之后并不能立即使用, 还需要大量的业务和编码开发(包括业务分析, 界面设计, 代码编写)工作.

业务流程模型

Oracle BPM认为, 流程是任务和活动的序列.

活动

流程中的逻辑步骤叫做活动(Activity), 每个步骤会产生一个或者多个任务. 活动分为两种: 自动形和交互形. 自动形活动被自动地被流程引擎执行, 而交互形需要人类的输入.

角色与参与者

活动属于某个角色(Role), 角色可以是审核人, 经理. 参与者是参与流程执行的个人, 参与某个活动的参与者必须属于该活动的角色.

流程对象

流程对象是流程中的一个步骤所使用的数据的集合, 包括数据库中的业务数据, 表单数据, 界面定义等.

在Oracle BPM中开发一个流程

流程建模

Oracle BPM提供了图形化的拖拽工具用于定义流程. 对于开发者, 流程建模不是工作量和工作难度的所在.

用户界面

在创建用户界面时, 除了要定义界面的外观, 还要定义界面所使用的数据. 数据分为静态和动态, 静态数据在开发时便可确定, 动态数据需要写脚本代码从数据库或者其它系统获取, 其它系统可能需要为BPM提供一些新接口. 当界面的数据主要是动态数据时, 界面的开发将成为工作量的重点之一, 增加的工作量根据数据的复杂度来决定. 使用的脚本语言是Oracle BPM独有的.

提供的工具使得可以使用类似”添加一个文本框”, “添加一个下拉框”这样的语言来描述开发过程, 但仍然是底层的技术.

业务数据操作代码

BPM不关心如何进行业务数据的操作, 例如, 如果需要在流程进行的过程中增加或者减少商品的库存量, 则需要编写代码与其它系统交互. 由于业务数据很可能处在BPM之外的一个异构的系统, 所以, 业务数据操作的方式没有定式, Web Service, 直接访问数据库等方式都可被使用, 主要的工作还是由开发者来实现. 另外, BPM和其它系统之间的交互导致了事务的复杂性.

流程监控和报表开发

售价

链接: http://www.oracle.com/technologies/bpm/index.html

Oracle BPM的销售方式和售价不明.

JBoss JBPM

JBPM是JBoss唯一的官方工作流产品, 还不是一个BPM软件, 而是一个BPM框架. 提供了流程引擎, 虽然提供的外围工具较少, 但其提供Java API作为开发工具. JBPM只是一个BPM框架. JBPM是开源的, 使用LGPL协议, 如果基于它来开发自己的BPM系统, 也是可行的.

JBoss JBPM的主要开发方式是编写Java代码.

链接: http://www.jboss.org/jbossjbpm/

Related posts:

  1. 学习Linux有什么立即可见的好处?
  2. 更新了简历, Google百度搜索引擎快来啊
  3. ANTRL的editplus语法文件
  4. 请各位朋友修改RSS地址
  5. 学习,用C++语言手工编写编译器
Posted by ideawu at 2009-05-26 17:52:50

3 Responses to "BPM软件调研"

Leave a Comment