UML通過事件流描述的辦法來記錄(設計)客戶在服務項目上的交互過程。此時,我們需要把業務系統看成是一個"黑箱",要想象客戶與業務系統的交互過程發生在"黑箱"的某個對外開放的"窗口"上,這個窗口就代表一個服務項目,我們只能看到客戶以及業務系統在這個窗口上所發生的全部事件,窗口里面所發生的一切,我們暫時不去細究。
這個"窗口",實際上就是客戶和業務系統進行交互活動的一個"界面"。UML事件流描述的方法從界面交互的細節為切入點,能抓住業務系統為了滿足客戶的體驗需求而必須做出的所有活動,從而為下一步在設計業務系統內部運作過程時提供了目標每一個業務系統內部的活動都必須是以滿足界面上必須表現的行為為目標的,而且每一個界面上所發生的業務系統的響應事件,都必需要有內部活動來支持。在"窗口"上所作的事件流記錄,集中體現了以下重要的模型價值:
對客戶行為和業務系統的行為進行了耦合;
對客戶提供了過程清晰,價值明確的服務向導和指南;
對客戶的體驗進行了直接和真實的記錄,以利于和客戶溝通,發現問題及時改進;
對客戶的需求與業務系統的功能提供了良好的匹配;
通過"近距離"觀察客戶和業務系統交互的界面,業務建模的焦點從客戶逐漸轉移到業務系統身上來了,為接下來進入業務系統內部探究找到了可以跟蹤返回的入口。
對業務系統的邊界(即對外功能范圍)提供了詳盡的描述;
對業務系統的服務項目的服務功能和性能提供了測試的詳細依據。
如何來描述一個服務項目的事件流呢?
事件流的描述,實際上就是對觀察到的現實的或者設計想象的虛擬的客戶體驗過程進行詳細的文字錄像。把客戶在什么樣的背景條件下,啟動業務系統的某個服務項目,向業務系統提出怎樣的服務請求,業務系統又如何回應,要了解客戶的哪些信息,要客戶做出什么配合行動,要為客戶做出什么行動,要交付客戶什么物品,要在多長時間內完成等等,按先后順序和邏輯過程詳細地用文字一句一句地記錄下來。
相信大多數讀者有到食堂吃飯的經歷,下面,我們就以食堂的客戶的身份,來考察一下"食堂"這個業務系統的"賣飯"這個服務項目,看看它的事件流表達是怎樣的。