工作流參考模型
工作流參考模型由國際"工作流管理聯盟wfmc"給出,它定義了工作流管理系統的一些標準規範,工作流管理工具的應用程式設計介面,使工作流應用間可以更好的整合和互動。
參考模型中提供了五類介面,有關過程模型的定義則構成了介面一的核心內容。介面一早期的標準為wpdl(workflow process definition language),後來,這一介面的規範變更為xpdl。xpdl是至今工作流領域最為重要的乙個標準,目前大多數工作流引擎是依據該標準設計開發的。
工作流的中的三類資料:
1.工作流控制資料(workflow control data):工作流引擎通過控制資料來辨別每個過程或活動例項的狀態。這些資料決定了工作流具體的流程處理邏輯,任務分派和流轉邏輯。因此在工作流建模中定義的關於工作流,任務,分支和連線弧,轉變規則和條件,許可權,角色和參與人等資訊都是工作流的控制資料。
2.工作流相關資料(workflow relevant data):這塊實際指工作流的例項資料,這是根據實現定義的工作流模型產生出來的例項資料,包括工作流例項,任務例項,活動例項,連線弧例項等。
3.工作流應用資料:這裡指業務物件的例項資料,如訂單物件,合同物件的例項資料。業務物件的例項資料部分也是工作流的控制資料,需要控制到工作流流程的轉換。
工作流的建模
工作流模型描述了乙個工作流應用在執行階段所需要的所有引數資訊和控制資訊。這些規則包括了過程的開始和完成條件,構成過程的活動以及活動間的轉變規則,使用者所需要完成的任務,可能呼叫的應用,工作流機的引用關係,以及所有工作流相關資料的定義。
過程定義中需要引用組織/角色模型中關於組織結構,組織中的角色等資訊。這樣工作流過程活動中的參與者就不僅僅可以定義具體的使用者,還可以和組織實體和角色物件相關聯,這種定義將大大增加工作流模型執行任務的靈活性。
對於工作流建模,wfmc開展了兩方面的工作
1.定義了乙個元模型:用於描述工作流模型內部包含的各個物件,物件間的關係和重要屬性。
2.定義了一套可以在工作流管理系統之間,管理系統與建模工具之間互動的應用程式設計介面api。
工作流定義:包含工作流模型名稱,過程啟動、中止條件,系統安全、監控和控制資訊等基本屬性。表明了此過程最終需要實現的目的和目標;
活動(任務):主要有名稱,型別,前後條件,約束條件/引數,工作流引擎位置等屬性。此實體就是過程中的任務,反映了乙個工作過程中需要的功能操作;
轉換條件:驅動工作流例項的依據,主要引數有:過程條件,執行條件,通知條件。轉換條件對應於乙個工作過程中的業務規則和操作順序;
工作流相關資料:工作流引擎將根據工作流相關資料和轉換條件進行推進。工作流相關資料的主要元屬有:資料名稱,資料型別,資料值,等。其為工作流引擎推進工作流程的依據,
角色:角色是參與某個過程的實體,角色可以是人,某個組織機構,或某個應用程式,其主要屬性有:名稱,組織實體,角色能力,等。它描述的是乙個工作流程中參與操作的一切實體;
工作流相關應用:主要包含以下資訊:應用型別,名稱,儲存位置,執行引數,等;其表明了完成乙個工作過程所採用的工具和手段。
工作流授權控制模型
一般採用基於角色的的rbac 模型,我們稱為「core rbac」。參看下圖在基本的 rbac模型中,包含五個基本元素:使用者(users)、角色(roles)、許可(permissions)、資源客體(objects(obs))、操作(operations(ops))。當然,額外的還包含了兩個概念:分配(assigment)和會話(session)。
工作流系統應該具備的基本功能
流轉的基本功能
序列/並行/回退/分支/聚合/條件路由/抄送路由/自動節點
流轉的擴充套件功能
關係路由/動態路由/子流程/異常終止/定時路由
監控功能
主流程/子流程/時間監控/成本監控/超時統計
許可權控制功能
組織模型/角色/參與人/表單許可權/表單資料項許可權/委派或**
通用功能
任務列表/擴充套件介面/指令碼支援/表單功能(這個歸到快速平台的介面建模中)
常用擴充套件功能
其他說明
1.業務物件根據類別的不同來關聯不同的工作流模版,啟動不同流程
2.工作流模版定義中的參與人可以是具體使用者,也可以是角色,當選擇的是角色的時候通過角色-組織-使用者組-人員關聯來解析出角色對應的具體人員
3.工作流必須支援自定義指令碼的擴充套件,否則很難滿足複雜的應用。
4.許可權方面採用rbac時候必須能夠控制到業務物件的資料項的粒度。
快速開發平台 web快速開發平台 Jxstar介紹
jxstar支援面向業務構件的開發思想,支援各種標準應用構件 行業應用構件 整合應用構件開發 維護,最大限度的提高業務構件的重用,提高軟體企業的資產價值與市場競爭力。通過平台配置完成大部分開發工作量,提高開發效率與開發質量 規範企業軟體開發過程,降低軟體後期維護的時間和成本 通過平台積累可重用軟體構...
快速開發平台
快速開發平台,就是可以使得開發更為快速的開發平台。當開發平台產生之後,雖然減少了程式設計人員大量的程式設計時間,但是很多開發平台的效果並不是很理想,比如說某些開發平台比較複雜 難以掌握 有的開發平台通用性比較差 有的開發平台在時間上並沒有得到改善 還有的依然還是需要寫很多 等等。這些問題的存在促使開...
TT快速開發平台
之前本來打算寫的tt隨筆,由於接了個外單關係,沒時間慢慢寫,就停了。現在基本功能都已實現,並放到了github上了,有興趣的童鞋可以看看。tt快速開發平台 前台 jquery easyui 後台 nutz tui主要是基於easyui所進行拓展的一套前台快速開發框架,目的在於盡量簡化常見的開發編寫的...