UML使用案例圖總結

來源:互聯網
上載者:User

標籤:

UML使用案例圖總結作者: tianhai110  發布時間: 2012-01-30 15:33  閱讀: 100263 次  推薦: 57   原文連結   [收藏]  

  使用案例圖主要用來描述“使用者、需求、系統功能單元”之間的關係。它展示了一個外部使用者能夠觀察到的系統功能模型圖。

  【用途】:協助Team Dev以一種可視化的方式理解系統的功能需求。

  使用案例圖所包含的元素如下:

  1. 參與者(Actor)

  表示與您的應用程式或系統進行互動的使用者、組織或外部系統。用一個小人表示。

  2. 用例(Use Case)

   用例就是外部可見的系統功能,對系統提供的服務進行描述。用橢圓表示。

  3. 子系統(Subsystem)

  用來展示系統的一部分功能,這部分功能聯絡緊密。

  4. 關係

  使用案例圖中涉及的關係有:關聯、泛化、包含、擴充。

  如下表所示:

  a. 關聯(Association)

  表示參與者與用例之間的通訊,任何一方都可發送或接受訊息。

  【箭頭指向】:指向訊息接收方

  b. 泛化(Inheritance)

  就是通常理解的繼承關係,子用例和父用例相似,但表現出更特別的行為;子用例將繼承父用例的所有結構、行為和關係。子用例可以使用父用例的一段行為,也可以重載它。父用例通常是抽象的。

  【箭頭指向】:指向父用例

  c. 包含(Include)

  內含項目關聯性用來把一個較複雜用例所表示的功能分解成較小的步驟。

  【箭頭指向】:指向分解出來的功能用例

  d. 擴充(Extend)

  擴充關係是指用例功能的延伸,相當於為基礎用例提供一個附加功能。

  【箭頭指向】:指向基礎用例

  e. 依賴(Dependency)

  以上4種關係,是UML定義的標準關係。但VS2010的用例模型圖中,添加了依賴關係,用帶箭頭的虛線表示,表示源用例依賴於目標用例。

  【箭頭指向】:指向被依賴項


  5. 項目(Artifact)

  使用案例圖雖然是用來協助人們形象地理解功能需求,但卻沒多少人能夠通看懂它。很多時候跟使用者交流甚至用Excel都比使用案例圖強,VS2010中引入了“項目”這樣一個元素,以便讓開發人員能夠在使用案例圖中連結一個普通文檔。

  用依賴關係把某個用例依賴到項目上:

  然後把項目-》屬性 的Hyperlink設定到你的文檔上;

  這樣當你在使用案例圖上雙擊項目時,就會開啟相關聯的文檔。

  6. 注釋(Comment)

 

  包含(include)、擴充(extend)、泛化(Inheritance) 的區別:

  條件性:泛化中的子用例和include中的被包含的用例會無條件發生,而extend中的延伸用例的發生是有條件的;

  直接性:泛化中的子用例和extend中的延伸用例為參與者提供直接服務,而include中被包含的用例為參與者提供間接服務。

  對extend而言,延伸用例並不包含基礎用例的內容,基礎用例也不包含延伸用例的內容。

  對Inheritance而言,子用例包含基礎用例的所有內容及其和其他用例或參與者之間的關係;

  一個使用案例圖樣本:

 

  牢騷:

  感覺使用案例圖還不成熟,並不能很好地表達系統的需求, 沒有UML背景的使用者幾乎不知道畫的是些什麼。

  其次,內含項目關聯性、擴充關係的箭頭符號竟然是同樣的箭頭,僅靠上方寫個文字來加以區別,翻譯成其他語言的話,幾乎就不知道代表什麼意思。擴充關係的箭頭朝向也很難理解,為何要指向基用例,而不指向擴充用例。

  VS2010添加的“項目”元素,是個很好的創新,能夠在使用案例圖中關聯word, excel這些文檔。但為什麼不把這些功能直接整合到用例裡面,雙擊用例就彈出一份文檔豈不更容易理解,非要畫蛇添足地加一個元件,僅僅為了提供個連結功能。 

  用例描述表:

  鑒於用列圖並不能清楚地表達功能需求,開發中大家通常用描述表來補充某些不易表達的用例,的表給大家提供一個參考:

UML使用案例圖總結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.