工作流(Workflow),就是“業務過程的部分或整體在計算機應用環境下的自動化”,它主要解決的是“使在多個參與者之間按照某種預定義的規則傳遞文檔、信息或任務的過程自動進行,從而實現某個預期的業務目標,或者促使此目標的實現”。jBPM 即java Business Process Management,是基于java的業務流程管理系統。jBPM是市面上相當流行的一款開源工作流引擎,引擎底層基于Active Diagram模型。jBPM4.4使用了hibernate(3.3.1版),因此可以很好的支持主流數據庫。jBPM4.4共有18張表。
JBPM4工作流介紹。流程整合的模型,已經超越了“流程運轉模型”的概念范疇。但是作為目前“系統整合”的一個比較流行的趨勢,拿到這里順便提一下。現在的業務越來越復雜,跨區域,跨部門之間信息交互方式的需要越來越明顯,而且跨區域,跨部門之間業務配合也越來越多。從信息整合的發展來看,“面向應用的數據層整合”和“面向服務的接口層整合”都逐漸走向“BMP”模式:由中央主流程控制多個子流程(分布在不同地域或不同部門,各自獨立的流程)協同運行,以達到整個業務邏輯的運行。 其實在第二章“流程的激活模型”的“外界消息激活”模型中,我已經簡單提到了一些,只是不太明確。那么現在讓我們來看看一個普通的“流程整合”大概是什么樣子的,請參看下圖。 實際的整合要比這張圖上的復雜很多,也許還會有一些JMS/WebService 等的信息交換接口,可能用到不同廠家的數據交換平臺,或消息中間件等等;當然那些安全措施也必不可少了。 簡單的整合模型,基本上都是采用“主流程控制”的方式:由一個主流程控制整個流程的運行,由各個子流程具體完成某項任務,并向主流程返回處理結果。主流程在確定子流程正確運行/處理完后,并得到處理完的信息后,會繼續按照預定的流程路線,激活另一個子流程。
Spring框架(http://www.springframework.org)是一個基于POJO的輕量級J2EE應用框架,它支持一種比較新的編程方法:控制反轉(Inversion of Control)。本文介紹如何把后端處理任務組織成易于使用、基于Spring的工作流。?
什么是jBPM?jBPM是一個可擴展、靈活的流程引擎, 它可以運行在獨立的服務器上或者嵌入任何Java應用中。 文檔內容:在這個用戶指南里,我們將介紹在持久執行模式下的jPDL流程語言。 持久執行模式是指流程定義、 流程執行以及流程歷史都保存在關系數據庫中, 這是jBPM通常使用的方式。這個用戶指南介紹了jBPM中支持的使用方式。 開發指南介紹了更多的、高級的、定制的、 沒有被支持的選項。
在這篇文章里,我們將一起回顧jBPM從jBPM3到jBPM5以及Activiti5的發展歷程,我們可以清晰的看見jBPM(包括Activiti)設計所遵循的一致原則:強調流程服務的可嵌入性和可擴展性。同時,從各個版本之間的變化我們也能看見產品設計思路的變化:更加強調面向業務人員,增加BPMS(業務流程管理系統)特性。
這篇文章主要是介紹了jBPM4.0的基礎架構,以及通過一個簡單的例子來讓大家知道怎么應用jBPM. 為什么選擇4.0版本呢?以后的主流版本應該是4.0版本的,所以直接寫4.0版本的了.
工作流是一類能夠完全或者部分自動執行的經營過程,根據一系列過程規則、文檔、信息或任務能夠在不同的執行者之間傳遞執行。(工作流管理聯盟)工作流是經營過程中的一種計算機化的表示模型,定義了完成整個過程所需用的各種參數.這些參數包括對過程中每一個單獨步驟的定義、步驟間的執行順序、條件以及數據流的建立、每一步驟由誰負責以及每個活動所需要的應用程序。(IBM)
工作流引擎是控制中心:引擎控制器是工作流引擎在運行時的控制中心,引擎控制器結構圖給出了引擎控制器的控制結構圖。
工作流引擎結構工作流引擎主要包括數據模型和控制模型。工作流技術標準引擎標準:基于純XML技術1、XPDL(Xml Process Definition Language)在工作流領域第一個致力于標準化工作的是Workflow Management Coalition(WfMC),它成立于1993年。1994年11月,wfmc發布了工作流管理系統的參考模型。參考模型提出了五類接口,有關過程模型的定義則構成了接口一的核心內容。接口一早期的標準為WPDL(Workflow Process Definition Language),后來,這一接口的規范變更為XPDL。XPDL是至今工作流領域最為重要的一個標準,目前大多數工作流引擎是依據該標準設計開發的。
Open for Business Workflow引擎是基于WfMC和OMG規范的.工作流引擎是一組服務框架.??它和EntityEngine緊密集成在一起.可以在entitymodel_workflow.xml文件里找到它使用的實體,entitymodel_workflow.xml文件是用來定義信息,而entitymode_workeffort是用來運行時存儲的.??一個過程或者活動的所有改變都是實時的.所以工作流引擎不在一個線程里運行,它只是一組處理流程的通用對象和API。
談這里說的三大主流開源工作流引擎:Shark、osworkflow、jbpm。
工作流業務流程管理技術是基于SOA技術實現的一個核心部分。使用工作流能夠在軟件開發和業務兩個層次受益。jBPM,全稱是Java Business Process Management,是一種基于J2EE的輕量級工作流管理系統。jBPM是公開源代碼項目,它使用要遵循Apache License。jBPM在2004年10月18日,發布了2.0版本,并在同一天加入了JBoss,成為了JBoss企業中間件平臺的一個組成部分,它的名稱也改成JBossjBPM.隨著jBPM加入JBoss組織,jBPM也將進入一個全新的發展時代,它的前景是十分光明的。JBossjBPM只有最小的倚賴性,它可以很容易的作為java庫來使用。
目的這篇指導資料的目的是介紹OSWorkflow的所有概念,指導你如何使用它,并且保證你逐步理解OSWorkflow的關鍵內容。本指導資料假定你已經部署OSWorkflow的范例應用在你的container上。范例應用部署是使用基于內存的數據存儲,這樣你不需要擔心如何配置其他持久化的例子。范例應用的目的是為了說明如何應用OSWorkflow,一旦你精通了OSWorkflow的流程定義描述符概念和要素,應該能通過閱讀這些流程定義文件而了解實際的流程。
JBPM是一個擴展性很強的工作流系統,百分百用JAVA語言開發,持久層采用Hibernate實現,理論上說,只要Hibernate支持的數據庫JBPM都支持。同時它還能被部署在任何一款JAVA應用服務器上。
WooW工作流是基于現在開源項目中做的比較出類拔萃的JBoss jBPM作為其工作流引擎的內核,當然前者在設計上并非與后者之間是緊藕合的。它可以適用與任何其它工作流引擎相集成,并且其自身自帶有一個工作流引擎的內核以方便采用非開源框架項目使用。
軟件簡介JaWE(Java工作流編輯器)是一個用來進行過程定義建模的Java程序。目前支持的XPDL版本:1.0102502。這個過程建模的最終輸出是一個XPDL輸出文件,該文件在運行時能夠被工作流引擎解釋。
介紹JBOSS jBPM是一個靈活的、可擴展的工作流管理系統。JBOSS jBPM擁有直觀的流程語言,用任務、異步的等待狀態、定時器、自動化動作…等來表示業務流程圖,把這些操作綁定在一起,JBOSS jBPM就擁有了非常強大和可擴展的控制流機制。JBOSS jBPM只有最小的依賴,可以象使用java庫一樣非常容易的使用它。另外,也可以通過把它部署在J2EE集群應用服務器中,用在吞吐量極為關鍵的環境中。JBOSS jBPM可被配置為任何數據庫,并且可以部署到任何應用服務器。