轉自:http://www.cnblogs.com/wolf-sun/p/3411175.html
用例圖的概念
用例圖是描述用例、參與者以及它們之間關係的圖。
用例圖的作用
- 用例圖是從用戶的角度來描述對信息系統的需求,分析產品的功能和行爲。
- 用例圖定義和描述了系統的外部可見行爲,是分析、設計直至組裝測試的重要依據。
- 讓用戶參與前期的系統分析與設計。
參與者的概念(actor,執行者,活動者)
參與者是指在系統之外,但與系統直接交互的對象。先舉個例子,對參與者有個具體的概念,如圖:
參與者用人形符號表示,在人形符號下面標出參與者的角色名(不是人名)例如:
參與者的類型
- 人員
- 信息系統
- 設備
實例:在線選課管理系統
•教師選擇本學期要教授的課程,每位教師最多隻能上報4門課程。
•教師選課結束後,教務管理人員進行協調和確認教師的課程,並創建本學期的課程目錄表,向學生公佈。
•學生填寫課程選修表,每個學生最多選修4門課程;每門選修課程的學生數最多爲10人,最少爲3人。人數達到10人時,停止學生登記註冊此門課程;
•學生選課結束後,系統自動取消人數少於三人的課程。
•財務處的財務管理系統讀取最終的課程表,並辦理收費手續。
•教師可查詢所教課程的學生花名冊(roster)。
•教務管理人員維護學生、教師和課程的信息。
通過該實例可以分析出有哪些參與者?
識別參與者的方法
人:
-
- 系統的主要客戶是誰?
- 誰藉助於系統完成日常工作?
- 誰來維護管理系統,保證系統正常運行?
設備:系統控制的硬件有哪些?
信息系統:系統需要與哪些其他系統進行交互?
注意:與系統進行交互、從系統中獲取信息或向系統輸入信息的人或事物。
實例:飲料自動售貨機的參與者有哪些?
分析結果:
用例的概念
用例是用戶期望系統具備的功能,每一個用例說明一個系統提供給它的使用者的一種服務或功能。
用例的目標是要定義系統的一個行爲,但並不顯示系統的內部結構。
用例的符號
用例名一般爲動賓短語。上圖分別爲Rational Rose和Visio兩種不同的畫法。
識別用例的方法
識別用例的策略:對於已經識別的參與者,通過考慮每個參與者是如何使用系統的,以及系統對事件的相應來識別用例。
可以從以下幾個角度來尋找和確定用例:
- 參與者需要從系統中獲取哪種功能?
- 參與者是否需要讀取、產生、刪除、修改或存儲系統中的某種信息?
- 系統的狀態改變時,是否通知參與者?
- 是否存在影響系統的外部事件?
- 系統需要什麼樣的輸入與輸出?
實例:識別用例
Email客戶端(如Outlook express):A在北京發郵件給上海的B,系統提醒B您有“新郵件”,B收郵件。
參與者A執行的用例有哪些?
參與者B執行的用例有哪些?
描述用例
用例圖沒有描述系統行爲的細節,所以需要以書面文檔的形式對用例進行描述。至少包括:
1、名稱
與用例圖中的名稱保持一致
2、標識符
用例的代碼或編號
3、基本操作流程
描述各項工作都正常進行時用例的工作方式。
4、可選操作流程
很少使用、異常情況、發出錯誤的情況。
如:
用例名稱 |
歸還圖書 |
標識符 |
UC0002 |
基本操作流程 |
1.圖書管理員輸入圖書信息 2.檢索借閱該圖書的借閱者的信息 3.刪除與該圖書相關的借閱記錄 |
可選操作流程 |
1a.圖書管理員發現圖書被損壞,進行損壞處罰 1b.輸入的圖書不存在時,進行確認 2a.借閱者有超期的借閱信息時,進行超期處理 |
總結
該文主要介紹了參與者與用例圖的概念及在Rose中的畫法,下篇將着重介紹用例圖中的各種關係。
若想詳細瞭解,推薦閱讀《UML基礎與Rose建模教程》 這本書,這是大學四年留下幾本書中的其中一本(其他的書......你懂得!),參考着課件複習一下。