.NET 工作流引擎:Slickflow

jopen 10年前發布 | 87K 次閱讀 Slickflow 工作流引擎

1. 項目描述

工作流系統通常是作為中間組件嵌入到企業業務系統應用中去,作為業務流程構造和重整的重要工具,工作流系統的實現主要要考慮以下幾點要素:1. 工作流模型要符合一些標準化模型的定義;2. 工作流管理系統的功能是否能夠滿足特定應用的需求,而同時不阻礙業務應用的整體性;3. 工作流技術是否跟SOA技術融合,可以作為服務總線的方式供外部調用。

Slickflow工作流引擎,選取BPMN模型作為工作流模型的語義表達,BPMN模型消除技術和業務之間的隔閡,注重業務人員對流程的需求和理解,而不是以技術為本位,相對來 說,更近一步體現技術服務于業務需求的概念。其次,由于工作流模型跟業務需求的緊密結合,還有新技術的出現,認為有必要構建新的工作流系統;鑒于以上認 識,總結了在構建獨立工作流系統的關鍵模型和算法,實現了Slickflow 工作流引擎,作為.NET平臺上的開源工作流引擎,希望能夠為企業應用開發人員提供借鑒和學習,也歡迎提出各種業務需求和修改建議。

2 功能介紹(已經實現的功能)

1) 參考BPMN標準的流程定義解析;
2) 遞歸解析實現的工作流引擎;

2.1). 順序流轉;
2.2). 分支/合并;
2.3). 條件表達式;
2.4). 自身循環;
2.5). 撤銷;
2.6). 退回;
2.7). 返簽;
2.8). 角色資源;
2.9). 子流程;
2.10). 串(并)行會簽任務節點;
2.11). 串(并)行會簽子流程節點;

2.12). 委托功能;

2.13). 部門組織機構信息的外部接口依賴獲取;

2.14). 流程流轉數據獲取;

2.15). 流程跳轉;

a) 預定義跳轉

b) 運行時動態跳轉

 

3) 集成嵌入Dapper MicroORMapping 框架, 性能接近原生SQL;

4) 流程定義BPMN文件的緩存讀取;

5) 異常日志記錄Wflog;
6) 工作流服務WebApi 接口示例;
7) Test 代碼示例。

3. 項目計劃

對工作流引擎項目有興趣參與的人員可以參閱項目技術及推動介紹

 4. 服務及授權

對于公司用戶或者個人用戶使用或集成Wf5到自己的項目中,為了提供一些技術上的支持,或者新功能的開發,更好服務大家,同時也保障Slickflow的品牌發展,特作出以下說明:

1). 技術咨詢或者新功能的開發,可以作為有償服務進行,社區將提供一些及時到位的咨詢服務或者新功能新需求的開發;即按需收取一定的服務費;

2). 對于公司用戶使用Slickflow提供自有客戶使用,為了避免開源項目開源協議(LGPL)的限制,可以允許商業授權,使得公司用戶用于自己的商業運 營。即Slickflow遵循開源協議,同時也允許商業授權。獲取商業授權之后可以享受技術支持和版本升級服務,商業授權的獲取請按下面的聯系方式聯系我 們。

項目主頁:http://www.baiduhome.net/lib/view/home/1415064473461

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!