一步一步學JBPM(1)——JBPM簡介

研究JBPM,已經有一段時間了,從開始的一無所知,到逐漸的瞭解,讓自己獲得了很多東西。學習JBPM是從學習OA開始的,當時看的是李騰飛的OA視頻,看起來很吃力,視頻錄製的質量不是很高。看完OA以後,對JBPM有了一定的瞭解,開始做一些demo。現在做了幾個demo,大體掌握了JBPM的工作流程和基本原理。現在正在設計教務工作流管理系統。

 

本文首先介紹一下JBPM的基本知識。

JBPM,全稱是Java Business Process Management(業務流程管理),JBoss公司一個工作流中間件產品,它是覆蓋了業務流程管理、工作流、服務協作等領域的一個開源的、靈活的、易擴展的可執行流程語言框架。jBPM是公開源代碼項目,它使用要遵循ASL(Apache License Version 2.0)和EULA(JBoss End User License Agreement)協議。

JBPM使用Hibernate進行數據庫操作,也就是說只要Hibernate支持的數據庫它都可以使用,數據庫主要是存放流程的定義,流程實例的信息,還有用戶的信息等。

工作流

JBPM是一個工作流管理系統,那麼什麼是工作流呢?工作流通俗的說就是多個人在一起合作完成某項工作的技術,把這些步驟定義一個標準,變成計算機能夠理解的方式。它解決的問題就是一個組織之間協作完成一個業務,這個業務要利用計算機傳遞和控制信息,文檔,任務的走向和規則。

 

工作流管理系統

工作流管理系統就是基於JBPM開發的系統,最典型的就是OA裏面的工作流管理。我們這次的目的就是開發一個工作流管理系統,工作流管理系統的功能一般包括:定義流程,發佈流程,控制公文流轉等。

 

JBPM的結構

JBPM的頂層結構圖如下:


 

從頂層服務圖中我麼可以看出,JBPM主要是爲三種角色服務:

第一個是Actor,這個角色可以是組織、個人、也可以使系統。Actor負責選擇相應的流程並定義公文,啓動流程實例。

第二個是Process Desinger即流程定義人員,這個可以是開發人員在開發設計的時候設計,也可以是客戶的系統管理員,這就要求提供供客戶定義流程的客戶端,這個客戶端一般是web方式的。我們這次也就是要實現這個功能,這個功能在jbpm中沒有實現,但是底層接口都已經給出。

第三個是Business Analyst,業務邏輯分析師,他主要負責分析業務邏輯,輔助對流程的定義和優化。

 

這三個角色的工作順序一般是先分析業務邏輯,然後再定義流程,最後用戶使用流程。

總體說來jbpm給人的感覺就是結構輕巧,但是功能強大,工作流是OA的核心,jbpm是工作流的核心。jbpm目前已經有jbpm5版本,因爲考慮到兼容性等原因,我麼這次採用的是jbpm4.4。接下來會一步一步的介紹JBPM和我們的教務工作流管理系統。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章