openwebflow基于 Activiti 的工作流引擎
OpenWebFlow是基于Activiti(官方網(wǎng)站http://activiti.org/)擴展的工作流引擎,它擴展的功能包括:
完全接管了Activiti對活動(activity)權(quán)限的管理。Activiti允許在設(shè)計model的時候指定每個活動的執(zhí)行權(quán)限,但是,業(yè)務(wù)系統(tǒng)可能需要根據(jù)實際情況動態(tài)設(shè)置這些任務(wù)的執(zhí)行權(quán)限(如:動態(tài)的Group)。OpenWebFlow完全實現(xiàn)了與流程定義時期的解耦,即用戶對活動的訪問控制信息單獨管理(而不是在流程定義中預(yù)先寫死),這樣有利于動態(tài)調(diào)整權(quán)限,詳見自定義活動權(quán)限管理;
完全接管了Activiti對用戶表(IDENTITY_XXX表)的管理。在標(biāo)準(zhǔn)的工作流定義中,每個節(jié)點可以指定其候選人和候選用戶組,但是比較慘的是,Activiti綁架了用戶信息表的設(shè)計!這個是真正致命的,因為幾乎每個業(yè)務(wù)系統(tǒng)都會屬于自己的用戶信息結(jié)構(gòu)(包括User/Group/Membership),但不一定它存儲在Activiti喜歡的那個庫中,表的結(jié)構(gòu)也不一定一樣,有的時候,某些信息(如:動態(tài)的Group)壓根兒就不采用表來存儲。OpenWebFlow剝離了用戶信息表的統(tǒng)一管理,客戶程序可以忘掉Activiti的用戶表、群組表、成員關(guān)系表,詳見自定義用戶成員關(guān)系管理;
允許運行時定義activity!徹底滿足“中國特色”,并提供了安全的(同時也是優(yōu)雅的)催辦、代辦、加簽(包括前加簽/后加簽)、自由跳轉(zhuǎn)(包括前進/后)、分裂節(jié)點等功能;
支持與致謝
