在系統開發的需求捕捉階段時,一般我們會利用活動圖(Activity Diagram)來記錄企業流程(Business Process)。
例如,範例圖一是利用活動圖來表達 "XX醫院" 的掛號就診流程(圖一僅為範例,並非是完整正確的就診業務流程)。
圖一、利用活動圖表達業務流程
利用活動圖可以記錄詳細的業務流程,也可以看出哪些活動(Activity)是由哪些人或角色所負責的(利用 Partition 區分責任區塊)。
活動圖表達了企業內部的組織運作,但不容易表達出與該業務流程相關的外部主要參與者(Primary Actor),企業是如何滿足其目標。亦即,若想明確區分企業的 "內" 與 "外",我們可以利用 "企業使用案例圖(Business Use Case Diagram)" 來表達。
表達企業層次的使用案例圖(Business level UCD) ,有幾點要注意的:
- 系統的設計範圍一般以企業、部門等組織為單位,而非單指軟體應用系統。
- 會著重於描述企業內部的流程;而非系統功能面的行為描述。
- 通常會以白箱式(Whie-box)的作法打開企業使用案例(Business Use case)內部,以瞭解內部工作者(internal worker)互動合作的流程。
- 目標讀者(Target audience)會偏於企業決策層級的管理者、IT高階主管、系統開發的架構師(Architect)等,可以藉由企業層級的使用案例圖來辨別出組織的核心業務。
- 可以協助從企業流程往技術層面來思考,以定義出適合採用新技術的業務流程。例如,有些人工作業流程,可以藉由電腦資訊化以增加作業效率與成本因素等考量。
延續範例圖一,我們可以利用 "Business level UCD" 來定義系統範圍、找出主要的外部參與者,如下圖二。
圖二、利用企業使用案例圖表達外部參與者的目的
圖二, 系統範圍為 "信仁慈善醫院",主要的參與者為 "病人","病人" 來到醫院的主要目的為 "看病"。
"看病" 為該醫院的核心業務流程,也是 "醫院" 為了滿足主要參與者的 "目的"。為了瞭解其業務流程的內部是如何運作,我們可以以白箱式的表達來剖開 "看病" 這一個企業使用案例,如下圖三。
圖三、用白箱的手法呈現企業內部運作流程
企業使用案例圖,可以成為系統開發者在寫出黑箱式(Black-box)的系統使用案例前很好的前導參考依據。
當系統開發的範圍是 "看診系統" 時,我們可以參考圖三而很輕易地找出使用該系統的主要(Primary)及支援(Support)的參與者,如下圖四。
圖四、系統層次的使用案例圖-看診系統
寫企業使用案例圖,可能會耗費許多的時間與精力。若非與企業流程有直接利益關係的關係人,或者是擔負企業內部多個系統整合與建構的架構師,欲對企業整體流程、企業與系統、系統與系統之間有一番全貌的認識,所以有必要藉由畫企業使用案例圖來協助瞭解。
若只是專注於單一個軟體應用系統的開發,對系統的設計範圍及參與者已有明確的資訊,那麼,可能可以略過寫企業層次的使用案例圖,以避免專案開發期間,耗費過多的時間與成本。
訂閱 RSS (by FeedBurner)
訂閱 RSS (by Wordpress)


看了你的介紹,的確受益良多!. 但是我想請教一個問題. 一個Business level UCD,是否等於多個system level UCD,一個system level UCD ,是否等於一個activity diagram 呢? 那若我們有做UI ,是否也等於一個UI介面呢? 而system level UCD,為系統範圍,通常也是和user討論scope,所以在system level UCD,如何表現很底層之business rule及UI定義呢? 因為我們在和印度軟體公司定義SCOPE時,卻因為system level UCD沒有定義很detail,現在任何沒有寫在system level UCD內容,都無法修改了!
Hi apple:
你所問的問題,是牽涉到 "廣度(範圍)" 與 "深度(層次)" 。
所以,很難用 Business UCD 等於多個 System UCD 這樣來比較。
又,activity 與 System UCD 一個是描述業務流程;另一是描述系統功能,也不應如此來比較(通常一個 activity diag. 內的活動往往會轉為 System UC,要看該活動是否會以軟體系統取代人工作業)。
你的問題,工程化意味蠻重的,若偏向於找 "公式"、"solution" 等,上述這些問題仍然會持續發生的。
建議回到原點,從本質性的思維來瞭解什麼是 UC 的 "廣度" 與 "深度" ,再更進一步,整個 UC 的思維是源自於對 "封裝(Encapsulation)" 的觀念,若能對封裝有更透徹的體會,相信會對你有更大的協助(而非藉由找solution,治標而無法治本)。