
在UML中,用例表示為一個橢圓。
圖1顯示了一個金融貿易系統的用例圖。其中,"風險 分析","交易估價","進行交易","設置邊界","超越邊界的交易","評價貿易","更新帳目 "等都是用例的實例。
概括地說,用例有以下特點:
·用例捕獲某些用戶可見的需求,實現一個具體的用戶目標。
·用例由執行者激活,并提供確切的值給執行者。
·用例可大可小,但它必須是對一個具體的用戶目標實現的完整描述。
(3) 執行者(Actor) 執行者是指用戶在系統中所扮演的角色。其圖形化的表示是一個小人。
圖1中有四個 執行者:貿易經理、營銷人員、售貨員和記帳系統。在某些組織中很可能有許多營銷人員 ,但就該系統而言,他們均起著同一種作用,扮演著相同的角色,所以用一個執行者表示。
一個用戶也可以扮演多種角色(執行者)。例如,一個高級營銷人員既可以是貿易經理,也 可以是普通的營銷人員;一個營銷人員也可以是售貨員。在處理執行者時,應考慮其作用 ,而不是人或工作名稱,這一點是很重要的。
圖1中,不帶箭頭的線段將執行者與用例連接到一起,表示兩者之間交換信息,稱之為 通信聯系。執行者觸發用例,并與用例進行信息交換。單個執行者可與多個用例聯系;反 過來,一個用例可與多個執行者聯系。對同一個用例而言,不同執行者有著不同的作用:他 們可以從用例中取值,也可以參與到用例中。
需要注意的是,盡管執行者在用例圖中是用類似人的圖形來表示的,但執行者未必是 人。例如,執行者也可以是一個外界系統,該外界系統可能需要從當前系統中獲取信息,與 當前系統有進行交互。在圖1中,我們可以看到,記帳系統是一個外界系統,它需要更新帳 目。
通過實踐,我們發現執行者對提供用例是非常有用的。面對一個大系統,要列出用例 清單常常是十分困難。這時可先列出執行者清單,再對每個執行者列出它的用例,問題就 會變得容易很多。
(4) 使用和擴展(Use and Extend) 圖1中除了包含執行者與用例之間的連接外,還有另外兩種類型的連接,用以表示用例 之間的使用和擴展關系。使用和擴展是兩種不同形式的繼承關系。 當一個用例與另一個用例相似,但所做的動作多一些,就可以用到擴展關系。
例如圖 1中,基本的用例是"進行交易"。 交易中可能一切都進行得很順利,但也可能存在擾亂順 利進行交易的因素。
其中之一便是超出某些邊界值的情況。例如,貿易組織會對某個特定 客戶規定最大貿易量,這時不能執行給定用例提供的常規動作,而要做些改動。我們可在 "進行交易"用例中做改動。但是,這將把該用例與一大堆特殊的判斷和邏輯混雜在一起, 使正常的流程晦澀不堪。
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/