Author:Anders小明
(2008-1-12更新)
業務流程依據不同層次分為3個
0. 領域流程
領域流程即領域對象生命周期,是流程中的核心;
1. 工作流程
工作流是處理多人協同工作,三權分立的過程;該過程是建立在領域對象生命周期上;生命周期的不同狀態在工作流中都有映射;工作流處理的是領域中Request對象的生命周期;
2. 頁面流程
頁面流是處理工作中一個工作請求的分步申請;該過程建立在工作流上,是其人工節點的UI代理;
這3個不同層次的流程,關注各自處理不同類型的領域對象;頁面流在最外層關注于Request對象的數據收集,而工作流則負責Request對象的生命周期,在不同工作節點的流轉;而處于核心的領域服務,則負責核心(長生命)領域對象的生命周期,輸入Request對象,同時返回Response對象,以及產生Transition對象;對于同一業務對象的并發處理,應該通過業務來控制;
但并非所有系統流程都是如此,對于沒有顯著長生命周期領域對象的業務系統,由于沒有明確的增量變更操作類型及其規則,業務操作是直接更新業務對象,也就沒有Request以及Response對象,因此其領域流程和工作流程趨于一致,合并更有效率,而頁面流程也是直接處理核心領域對象,但這樣的系統可能需要支持領域對象的多版本能力。