999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

教研視野下主流開源工作流引擎對比分析

2014-01-26 21:21:32馬亞鋒張玉扣
成才之路 2014年1期

馬亞鋒 張玉扣

摘 要:(目的)了解當前主流開源工作流引擎,對比各自特點,為進行工作流系統開發者提供一個客觀的評價,提高學生綜合能力。(方法)針對三個最為常用的引擎進行具體分析,分析各自的背景、架構、實現方法及優缺點。(結果)三大主流開源工作流引擎分別是shark、osworkflow和jbpm。shark靠的是Enhydra,osworkflow靠的是opensymphony,而jbpm靠的是jboss。(結論)osworkflow實現起來簡單靈活,但是功能匱乏,數據維護較為復雜;shark的jawe圖形化功能較強,但是表現一般;jbpm基于狀態圖,提供靈活的表達機制,學生學習起來容易上手。

關鍵詞:教研;開源;工作流;shark;osworkflow;jbpm

工作流最早是在生產和辦公領域中針對日常生活工作中固定有序的活動提出的一個概念,主要就是為了將一個工作分解成多個任務和角色,依據特定的規則來執行,針對這些任務對其進行監控,從而能夠達到提高工作效率、有效合理地管理業務等目的。而所謂的工作流引擎,就是在工作流系統中為其提供各種不同信息的傳遞、角色分工等解決方案。由于工作流沒有統一的規范,因此工作流引擎比較多,而且較雜,大家普遍應用得比較多的三種工作流引擎分別是shark、osworkflow和jbpm。下面,我們針對這三種引擎從它們的持久層、定義語言、穩定性和可維護性等多個方面進行對比,以期更多的讀者對這三種引擎有一個全面、客觀的認識,對他們的工作能有一些幫助。

一、主流工作流引擎簡介

(1)Shark。Shark是一個完全基于WFMC和OMG規范的工作流引擎,使用 XPDL作為工作流定義語言。流程和活動的存儲使用Enhydra DODS(一個開源OR映射工具)。ToolAgents可以用JavaScript、JDBC、EJB訪問、純 Java 類、Email調用等等。Shark的建模工具是jawe。Jawe是一種基于形式化的過程定義的建模工具,是Enhydra的一個開源產品,符合WMFC規則,提供了圖形化的界面來進行流程繪制、屬性添加等,能自動將流程定義轉化為相應的能夠被工作流引擎解釋的過程定義文件。第一就是過程定義的圖形化表示,第二就是將過程定義輸出到xpdl,最后就是可以將有效的xpdl文件進行導入和圖形化表示。Shark的內部調度機制比較簡單,基本上是基于WfprocessImpl類的run算法,采用的是遍歷循環的方式,效率較高、直觀易懂,但是很難支持比較復雜的運行模型。

(2)Osworkflow。Osworkflow是純java語言編寫,開放源代碼。它主要面向的用戶群是具有一定技術背景的軟件開發人員,用戶可以根據自己的實際需求,用XML配置出完全符合自身業務邏輯的流程。OSWorkflow適用于任何Java平臺,在企業ERP開發中得到了廣泛的應用。Osworkflow最大的特點,就是其顯著的靈活性和完全面向軟件開發人員。

(3)jbpm。Jbpm采用jpdl來定義工作流。jPDL(JBoss jBPM Process Definition Language)是基于jBPM框架的流程定義語言之一。Jpdl采用圖形化的流程定義,將每個任務定義為一個uml狀態圖,每個狀態圖均有起始狀態、結束狀態以及狀態的轉換。Jbpm還有一個特點,就是它采用Hibernate來進行數據庫的管理。Hibernate是一個開源的映射框架,既可以在java客戶端使用,也可以在web應用中使用,支持目前大部分的數據庫。

二、三種工作流引擎對比

Shark的體系和功能最為復雜,遵循WfMC的XPDL標準。它有兩個特點,一個就是 XPDL中的Activity基于UML活動圖。活動圖最大的優勢就是容易進行分叉控制,即可以控制并發線程同時執行或順序執行。另一個特點就是采用了泳道來控制工作流引擎中任務的產生,采用“模塊化”思路,容易擴展。OSWorkflow也是一款非常靈活、定位低級別的工作流引擎框架。OSWorkflow在國內項目用的較多,很多簡易審批流程項目都是基于此。OSWorkflow在可視化流程定義工具大行其道的今天,逆流而行,反對可視化定義工具的使用,它希望用戶靠XML去手動寫流程,這點我很難理解。同時,持久化配置方式不唯一,差別比較大。有內存方式、JDBC方式、SpringHibernate聯合方式、JDBCTemplate方式、Hibernate方式。

本人覺得,同學們如果想要學習Spring的源碼的話,不妨先看看JBPM的Bean管理模塊,這樣能非常容易理解 Spring的核心代碼,但卻比直接看Spring源碼簡單了許多。JBPM完全使用Hibernate作為持久化工具,并不強制大家一定只能在JBOSS上使用jbpm,TOMCAT上也能跑。我想,這個工作流引擎既然是 JBOSS主推的,而且很多開源項目上也采用它來做底層組件,那么它的未來一定很光明。

參考文獻:

[1]百度百科.osworkflow[DB/OL].http://baike.baidu.com/view/

674080.htm.

[2]百度百科.jbpm[DB/OL].http://baike.baidu.com/view/10875

11.htm.

[3]王海軍,樊留群,楊力鋒.等.基于Shark的工作流流程的實現

方式研究[J].機械工程與自動化,2005(4).

主站蜘蛛池模板: 欧美精品高清| 久久女人网| 一级毛片无毒不卡直接观看 | 亚洲精品va| 在线99视频| 久久99国产精品成人欧美| 天天综合网在线| 亚洲欧美成人在线视频| 91啦中文字幕| 高清不卡毛片| 无码中文字幕精品推荐| 色综合a怡红院怡红院首页| 就去吻亚洲精品国产欧美| 青草视频免费在线观看| 午夜欧美在线| 欧美国产精品不卡在线观看| 国产a在视频线精品视频下载| 国产欧美日韩视频一区二区三区| 国产精品专区第1页| 中文无码日韩精品| 亚洲第一成网站| 国产成人久久777777| 国产va视频| 91无码视频在线观看| 免费激情网址| 97在线国产视频| 自偷自拍三级全三级视频| 国产精品流白浆在线观看| 青青草原国产免费av观看| 亚洲国产日韩一区| 中文字幕无码av专区久久| 日韩小视频在线观看| 亚洲综合精品第一页| 亚洲国产欧美目韩成人综合| 人妻无码一区二区视频| 亚洲成年人网| 一区二区三区国产精品视频| 19国产精品麻豆免费观看| 青青青国产视频手机| 国产黑丝一区| 日本手机在线视频| 丁香综合在线| 亚洲男人的天堂在线观看| 日韩黄色精品| 欧美成人日韩| 制服丝袜国产精品| 日韩色图在线观看| 国产精品永久不卡免费视频| 国禁国产you女视频网站| 中文字幕伦视频| 激情無極限的亚洲一区免费| jizz在线免费播放| 看你懂的巨臀中文字幕一区二区| 国产精品久久久久无码网站| 日韩资源站| 在线a视频免费观看| 欧美在线网| 亚洲一区二区精品无码久久久| 成人精品亚洲| 激情五月婷婷综合网| 亚洲综合久久成人AV| 亚洲精品不卡午夜精品| 天天操精品| 精品综合久久久久久97| 日日碰狠狠添天天爽| 1769国产精品视频免费观看| 久久久无码人妻精品无码| 久久婷婷六月| 免费毛片全部不收费的| 欧美黄网在线| 香蕉伊思人视频| 亚洲国内精品自在自线官| 免费观看国产小粉嫩喷水| 国产亚洲精| 国产99热| 日韩无码黄色| 91小视频在线观看| 国产经典在线观看一区| 亚洲人成影院在线观看| 国产福利影院在线观看| 国产极品美女在线观看| 欧美日韩高清在线|