BPM introduction

news/2023/12/1 12:06:51

以往, 大家對於流程控管, 似乎都是稱之為 Workflow, 然而, 專門控制流程的會稱之為 FlowEngine. 所以想要了解接下來我所引導介紹的章節, 大家可以先行閱讀 TSS 的這篇文章. BPEL and Java .

在 Java Opensource 的流程控管系統中, 當中有幾個重要的 flow engine .

  1.  jBPM ( http://www.jboss.com/products/jbpm ) LGPL ( Live )
  2. OpenFlow ( http://www.openflow.it/wwwopenflow/EN/Overview/index_html ) GPL
  3. OSWorkflow ( http://www.opensymphony.com/osworkflow/ ) OpenSymphony Software License ( apache-like )
  4. Open Business Engine ( http://www.openbusinessengine.org ) apache-like
  5. OfBiz ( http://incubator.apache.org/ofbiz/ ) apache
  6. WFTK ( http://www.vivtek.com/wftk/ ) GPL ( - 2003 ? )
  7. jFolder (PowerFolder)( http://www.jfolder.com ) LGPL

其實, 你要用哪個 flow-engine 的重點應該考量很多東西, 最重要的影響關鍵, 我個人認為有

  • 圖形化的流程設計介面
  • 標準的支援度
  • 擴充的彈性及 License 的取得

目前來說, Java 的商業廠商大多支援 BPEL ( http://www-106.ibm.com/developerworks/webservices/library/ws-bpel/ ), 尤其這是由 IBM, BEA 及 Microsoft 所推廣的, 目前實作出來的有 BEA AquaLogic BPM(http://www.bea.com/framework.jsp?CNT=index.htm&FP=/content/products/aqualogic/business/ )  , ORacle BPEL Process Manager ( http://www.oracle.com/technology/products/ias/bpel/index.html ) 等等..

因此, 我將以 BPEL 視為現今與未來的主流. 雖然目前的功能無法涵蓋各式各樣的需求, 搭配各廠商自行定義的特殊 tag, 或是開發者所設計獨特的 tag, 應該可以解決標準推動之外的另一波高潮. 目前來說, Opensource 之中, JBoss jBPM 也有支援 BPEL 的標準, 加上豐富的文檔與 Eclipse Designer 的支援, 我認為, JBoss 對於 Middleware solution provider 的野心, 路人皆知 !

目前大多都採用 XML 為設定檔案, 因為 xml 可以方便地代表圖形的相關性以及設定相關數值, 更可以代表資料的整合, 商業邏輯的整合, 商業流程的整合以及使用者權限的整合. 為了未來成為 SOA 核心的一環, 如何嵌入到 ESB 之中, BPM 也必須要能夠與 WebServices 等標準規格串接, 這就是 Process Orchestration ( http://www.serviceoriented.org/process_orchestration.html ) 所要討論的事情.

將來我會以 jBPM 為主軸, 來分析如何進行 BPM 設計.

 

 





http://www.niftyadmin.cn/n/3653811.html

相关文章

開始來玩 jBPM

如果沒有特別的需求,可以直接下載 JBoss jBPM Starters Kit. 裡面其實就包含了 JBoss Application Server 以及 JBoss jBPM. 因為 jBPM 是採用 Hibernate 存取資料庫, 所以裡面也有 Hibernate 等元件. 如果你已經要將 jBPM 部署在其他的 Application Server 之上, 僅…

zabbix3 0 2 使用percona mysql插件来监控mysql5 7的详细实现过程

--前言上次用了zabbix自带的mysql插件来监控mysql数据库,但是太过简陋了,对于我们dba来说,基本没有啥作用,所以需要做更详细的监控,而percona就有这个详细监控的模版以及脚本,正好拿过来用。1, …

Lesson1:透過 commons-configuration 存取設定檔

在我們撰寫一些系統的時候,往往需要設定一些基本的屬性,在使用 Java 進行 Web 開發之中,可以將相關設定放在 JNDI Server 再透過 context lookup 重量級的方式來取得相關的屬性。不過,有時候簡單的環境,不必耗時耗力去…

MySQL 用户权限详细汇总

1,MySQL权限体系mysql 的权限体系大致分为5个层级: 全局层级: 全局权限适用于一个给定服务器中的所有数据库。这些权限存储在mysql.user表中。GRANT ALL ON .和REVOKE ALL ON .只授予和撤销全局权限。 数据库层级: 数据库权限适用于一个给定数…

MySQL 5 7 10最新版本源代码安装详细过程

1,下载地址:安装包下载地址:http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.10.tar.gz可以wget下载,也可以在pc本地网页上下载完再远程传到linux上面去。 安装文档地址:http://dev.mysql.com/doc/refman/5.7…

ERROR 1227 42000 Access denied you need at least one of

1 用以往的mysql登陆模式登陆[mysqleanintmydbc002db1 mysqllog]$ mysql Enter password: Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 3157186Server version: 5.5.25a-log MySQL EA ReleaseCopyright (c) 2000, 2011, Oracle an…

Web Development by Java Opensources (目錄)

這些是我曾經發表在台灣中央研究院-自由軟體鑄造場的電子報文章, 整理之後放在這裡. 以我的目標將分為三個 Milestone , M1 為 JSP/Servlet POJO solutions 的介紹, M2 為 WebServices/XML solutions 的介紹, M3 為完整的系統或是框架來介紹 !目錄PART1: 嘗試使用來自 Opensour…

zabbix3 0 2 实现发送email报警的详细过程

1,安装mail基础组件安装mail的基础组件:yum install sendmail -y …

Lession 2 : 跨越 IDE 的 Apache Ant

Java 最基礎的編譯工具就是 JDK 之中的 javac 這個編譯器,但是往往在開發一個大型的專案之時,我們通常會利用 IDE 來完成相關的程式開發、除錯、編譯及包裝的動作,進而與一些應用伺服器或是資料庫做相關的整合。但是,往往開發習慣…

Zabbix 如何实现邮件报警通知以及免费短信报警通知

前提条件:(1) zabbix服务器端已经成功安装并且运行。(2) zabbix客户端已经成功建立并且运行。1 下载并且安装msmtp软件Wget http://sourceforge.net/projects/msmtp/files/msmtp/1.4.32/msmtp-1.4.32.tar.bz2/downloadtar jxvf msmtp-1.4.32.tar.bz2cd msmtp-1.4.32…

台灣的 Web 2.0

自從無名小站 ( wretch.cc ) 被 Yahoo! 收購後, 投資客紛紛開始尋找下個標的, 有技術有抱負的團隊也紛紛提出許多有趣且前衛的 Web 2.0 網站.台灣經濟部技術處與資策會都提出有關 Web2.0 的補助方案. http://www.web20.org.tw/wp/ideas/index.htm 只要有創意點子, 就可以透過輔…

Struts 原理与应用(一)

本文是俺在公司技术会议上的演讲提纲算是一个小教程吧。Struts 原理与应用 2003年12月1日Chapter 1: MVC Architecture 介绍Struts的理论基础,MVC架构Chapter 2: J2EE N-tiers Structure介绍J2EE的n层结构以及Struts所处的位置Chapter 3: Struts Configuration Stru…

Struts原理与应用(三)

Chapter 5: Struts Work Flow Struts principle and practice 上图是Struts的工作流程,前边我们提到,所有的请求都提交给ActionServlet来处理。 ActionServlet是一个FrontController,它是一个标准的Servlet,它将request转发给Req…

mycat 瑞士军刀mycat-web详解

引言mycat从定义和分类来看,它是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服务器通信…

JAAS 基本概念 (1/3)

JAAS ( Java Authentication and Authorization Services )簡單來說就是專門處理 身份驗證 ( authentication ) 及 權限管控 ( authorization ) 的標準服務目前已經納入 j2sdk 1.4 正式成為標準的安全性模組 主要的幾個元件有分為 通用性 ( common ), 身份驗證 ( authenticatio…

web.xml 中的 security-role 的運作剖析

如果在 tomcat 之上執行程式你撰寫的 security-role 到底有沒有用呢 ?當呼叫 isUserInRole 其實是去呼叫 RealmBase 中的 hasRole 透過 GenericPrincipal 去檢查GenericPrincipal gp (GenericPrincipal) principal;boolean result gp.hasRole(role);return result;而 Princi…
最新文章