Advanced Basic Key Terms Dependency Generalization Actor Stereotype <<include>> <<extends>> Use Case Name simple name path name Basic Actor association System Use Case Use Case Diagram
Notation and Semantics Dependency(依賴性) – 表達兩件事物(thing)之間的依賴性,當對T1(the independent thing)做修改時會影響符號另一端的T2(the dependent thing) 。 Generalization(一般化) – 一個一般化關係表示特定元件(child),可由一般元件(parent)來表示之關係。 T2 T1 General Use Case Dependency - A semantic relationship between two things in which a change to one thing (the independent thing)t may affect the semantics of the other thing (the dependent thing). Generalization - A specialization/generalization relationship, in which objects of the specialized element (the child) are substitutable for objects of the generalized element (the parent). Generalization Specialized Use Case
Notation and Semantics Stereotype (原型) –在UML字彙上的擴充,是允許使用現存的元件來推導創造出適合問題的新元件。 <<extends>> - 箭頭來源的Use Case表示只有在某種異常情況(Extension Point)發生時,才會被使用到的功能或行為。而這個異常情況的在箭頭所指的Use Case內部部表示, <<include>> - 被箭頭所指的Use Case代表一種共通的、常被使用到的功能或行為。 <<extends>> Stereotype - An extension of the vocabulary of the UML, which allows you to create new kinds of building blocks that are derived from existing ones but that are specific to your problem. <<extends>> - An extend relationship from use case A to use case B indicates that an instance of B may include (subject to specific conditions specified in the extension) the behavior specified by A. Behavior specified by several extenders of a single target use case may occur within a single use case instance.. <<include>> - An include relationship from use case A to use case B indicates that an instance of A will also include the behavior as specified by B. <<include>>
Examples 下訂單 要求目錄 Extension points additional requests 提供顧客資料 訂貨 安排付款 <<extends>> 要求目錄 Extension points additional requests <<include>> <<include>> <<include>> 來源:UML Notation Guide version 1.1, Page 79 Figure 34 本例中,提供顧客的資料、訂貨、安排付款都是經常用到而且是共用的Use Case,所以用<<uses>>,而要求目錄則是在異常情況(Extension Point)發生,時如訂新產品需要目錄時,才會使用的Use Case。 提供顧客資料 訂貨 安排付款
Notation and Semantics Use Case Name(使用個案圖名稱) Simple name ( 簡單名稱 ) path name ( 路徑名稱 ) - 包裹名稱::簡單名稱 Place order Sensors:: Calibrate location Use Case Name - The name of use case. Simple name - the name along. path name - use case name prefixed by the name of the package in which that use case lives. Validate user 簡單名稱 路徑名稱
Examples Credit Card Validation System Perform card transaction Customer Retail institution Process customer bill Reconcile transactions UML User Guide P237. Figure 17-2 Individual customer Corporate customer Sponsoring financial institution Manage customer account
Receive additional call Examples <<extends>> Place conference call Place phone call Cellular network <<extends>> Receive additional call Receive phone call UML User Guide P237. Figure 17-2 User User scheduler Cellular Telephone
Examples Telephone Catalog Salesperson Customer Supervisor Check status Salesperson Place order Customer Fill order <圖U-2>來源:物件導向雜誌1998 4-5月號「UML與軟體主架構--- 介紹Rational Rose的Use Case 觀點」,Page 53 圖27 顧客使用ATM系統主機連線到銀行主機來提款、轉帳、及查詢餘額。 ATM System方框表示ATM系統內相關功能的Use Case的集合 Shipping Clerk Establish credit Supervisor