工作流程系統中增加“商務活動”這一概念的想法

來源:互聯網
上載者:User
    什麼是“商務活動”,我認為是對活動在業務層面上的更高的抽象,就好像我們提物件導向時將子類的公用方法提取到抽象類別中一樣,我們將活動在業務上的公用提取到“商務活動”上。“商務活動”建立在“商務程序”之下,是對流程更細一層的業務抽象。一個“商務活動”可以對應一個具體流程中的多個相同業務概念的活動,也可以對應在同一“商務程序”下的多個具體流程中同一業務環節的多個活動。

這樣我們在為商務程序建模時,首先是定義“商務程序”,其次應該是識別流程中有哪些“商務活動”,並為“商務活動”定製一些屬性,最後才是定義具體的流程。使用一套已經建立好了的“商務程序”來定製流程就變得非常的輕鬆,流程上關聯商務程序,活動上關聯商務活動,這樣所有與業務相關的屬性就都可以設定好。

先前版本的工作流程將活動上不管是與業務相關的,還是與流程相關的屬性一齊混雜在流程設計器上。這種實現方式有幾大弊端:1、無法實現同一業務概念的複用,在一個活動上定的業務概念,需要在另一個相同業務意義的活動上原封不同的重定一遍。雖然我們實現了活動的複製,但我認為這種複製不是解決這種業務意義複用的很好方式。2、所有的與業務相關的實體都是獨立於工作流程系統之外的,在定義流程時將這些業務實體的設定記錄在流程定義中。由於流程的版本控制,先前已經啟動並執行流程定義是無法改變的,而業務實體又可能是會發生變化的,如單據的欄位許可權變化了(對於自訂表格單這樣生來就是為適應變化的,就更容易發生變化了),構件的參數又增加了一個等等,致使流程運行時業務上的改變得不到及時的體現,甚至運行不下去。3、流程運行結果,更通俗的講可能是審批的結論、意見不能根據業務意義進行分類,明顯的體現是審批結果列印時,所有的意見結論都羅列在一起(這個需求來源於OA項目組)。

       哪些活動屬性應該放到“商務活動”上,我認為表單定義、表單使用權限設定(動作許可權、欄位許可權),其他象外部工具、規則等也可以考慮放進來。

       工作流程可以無區別的對待普通流程和OA使用的動態流程的使用權限設定,都包括表單參數設定、表單動作許可權的設定、表單欄位許可權的設定。

       值得一提的是,像加簽、會簽、跳轉等許可權,我認為是純粹的流程許可權,不應該去表單的許可權混為一談,可以強制識別這些的流程引擎提供了的流程動態功能,並為其設定許可權。

       對特殊性、向下相容的考慮,在流程定義上仍然保留這些在“商務活動”添加的屬性,在使用時首先尋找具體活動上的定義,再尋找商務活動上的定義。這樣的同一“商務活動”對應的活動也可以有完全不同的特性,而且對於老版本的流程定義,即使沒有在活動上關聯商務活動,仍可以正常運行。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.