UML實踐--UML用例圖和類圖解析

2020-12-12 51CTO

UML實踐--UML用例圖和類圖解析

UML統一建模語言相信大家應該有所了解,你對UML實踐是否熟悉,這裡就向大家介紹一下UML實踐中的用例圖和類圖,相信通過本文的介紹你對UML實踐有一定的認識。

作者:RandyMiller來源:csdn.net|2010-06-13 14:37

本節向大家介紹一下UML實踐方面的內容,主要包括UML介紹,用例圖和類圖等內容,希望通過本節的學習你對UML實踐有一定的理解。下面就讓我們一起來看一下詳細介紹吧。

UML實踐----用例圖、類圖:

 面向對象的問題的處理的關鍵是建模問題。建模可以把在複雜世界的許多重要的細節給抽象出。許多建模工具封裝了UML(也就是UnifiedModelingLanguage™),這篇課程的目的是展示出UML的精彩之處。
UML中有九種建模的圖標,即:

用例圖
類圖
對象圖
順序圖
協作圖
狀態圖
活動圖
組件圖
配置圖
本課程中的某些部分包含了這些圖的細節信息的頁面連結。而且每個部分都有一個小問題,測試一下你對這個部分的理解。

為什麼UML很重要?

為了回答這個問題,我們看看建築行業。設計師設計出房子。施工人員使用這個設計來建造房子。建築越複雜,設計師和施工人員之間的交流就越重要。藍圖就成為了這個行業中的設計師和施工人員的必修課。寫軟體就好像建造建築物一樣。系統越複雜,參與編寫與配置軟體的人員之間的交流也就越重要。在過去十年裡UML就成為分析師,設計師和程式設計師之間的「建築藍圖」。現在它已經成為了軟體行業的一部分了。UML提供了分析師,設計師和程式設計師之間在軟體設計時的通用語言。

UML被應用到面向對象的問題的解決上。想要學習UML必須熟悉面向對象解決問題的根本原則――都是從模型的建造開始的。一個模型model就是根本問題的抽象。域domain就是問題所處的真實世界。
模型是由對象objects組成的,它們之間通過相互發送消息messages來相互作用的。記住把一個對象想像成「活著的」。對象有他們知道的事(屬性attributes)和他們可以做的事(行為或操作behaviorsoroperations)。對象的屬性的值決定了它的狀態state。
類Classes是對象的「藍圖」。一個類在一個單獨的實體中封裝了屬性(數據)和行為(方法或函數)。對象是類的實例instances。

用例圖

UML實踐中用例圖Usecasediagrams描述了作為一個外部的觀察者的視角對系統的印象。強調這個系統是什麼而不是這個系統怎麼工作。
用例圖與情節緊緊相關的。情節scenario是指當某個人與系統進行互動時發生的情況。下面是一個醫院門診部的情節。
「一個病人打電話給門診部預約一年一次的身體檢查。接待員找出在預約記錄本上找出最近的沒有預約過的時間,並記上那個時間的預約記錄。」
用例Usecase是為了完成一個工作或者達到一個目的的一系列情節的總和。角色actor是發動與這個工作有關的事件的人或者事情。角色簡單的扮演著人或者對象的作用。下面的圖是一個門診部MakeAppointment用例。角色是病人。角色與用例的聯繫是通訊聯繫communicationassociation(或簡稱通訊communication)
角色是人狀的圖標,用例是一個橢圓,通訊是連接角色和用例的線。
一個用例圖是角色,用例,和它們之間的聯繫的集合。我們已經把MakeAppointment作為一個含有四個角色和四個用例的圖的一部分。注意一個單獨的用例可以有多個角色。

UML實踐中用例圖在三個領域很有作用:

決定特徵(需求)。當系統已經分析好並且設計成型時,新的用例產生新的需求
客戶通訊。使用用例圖很容易表示開發者與客戶之間的聯繫。
產生測試用例。一個用例的情節可能產生這些情節的一批測試用例。

類圖

UML實踐中類圖Classdiagram通過顯示出系統的類以及這些類之間的關係來表示系統。類圖是靜態的-它們顯示出什麼可以產生影響但不會告訴你什麼時候產生影響。

下面是一個顧客從零售商處預定商品的模型的類圖。中心的類是Order。連接它的是購買貨物的Customer和Payment。Payment有三種形式:Cash,Check,或者Credit。訂單包括OrderDetails(lineitem),每個這種類都連著Item。


UML類的符號是一個被劃分成三塊的方框:類名,屬性,和操作。抽象類的名字,像Payment是斜體的。類之間的關係是連接線。

UML實踐中類圖有三種關係:

關聯association-表示兩種類的實例間的關係。如果一個類的實例必須要用另一個類的實例才能完成工作時就要用關聯。在圖中,關聯用兩個類之間的連線表示。
聚合aggregation-當一個類屬於一個容器是的一種特殊關係。聚合用一個帶菱形的連線,菱形指向具有整體性質的類。在我們的圖裡,Order是OrderDetails的容器。
泛化generalization-一個指向以其他類作為超類的繼承連線。泛化關係用一個三角形指向超類。Payment是Cash,Check和Credit的超類。
一個關聯有兩個尾端。每個尾端可以有一個角色名rolename來說明關聯的作用。比如,一個OrderDetail實例是一個Order實例的項目。

關聯上的方向性navigability箭頭表示該關聯傳遞或查詢的方向。OrderDetail類可以查詢他的Item,但不可以反過來查詢。箭頭方向同樣可以告訴你哪個類擁有這個關聯的實現;也就是,OrderDetail擁有Item。沒有方向性的箭頭的關聯是雙向。
關聯尾端的數字表示該關聯另一邊的一個實例可以對應的數字端的實例的格數,通過這種方式表達關聯的多樣性multiplicity。多樣性的數字可以是一個單獨的數字或者是一個數字的範圍。在例子中,每個Order只有一個Customer,但一個Customer可以有任意多個Order。

下面這個表給出了最普遍的多樣性示例。

多樣性意義
0..10或1個實例.n..m符號表示有n到m個實例
0..*or*沒有實例格數的限制(包括沒有).
1隻有一個實例
1..*最少一個實例
每個類圖包括類,關聯和多樣性表示。方向性和角色是為了使圖示得更清楚時可選的項目。

【編輯推薦】

  1. 經驗總結 UML實踐指南
  2. UML關聯符號用法剖析
  3. UML組成及其全稱解析
  4. 解析UML類圖符號意義
  5. 九大UML視圖專家解析


【責任編輯:

程華權

TEL:(010)68476606】

點讚 0

相關焦點

  • UML用例圖三大關係揭秘
    UML用例圖三大關係揭秘 UML用例圖就是軟體產品外部特性描述的視圖,他從用戶的角度而不是開發者的角度來描述軟體產品的需求,分析軟體產品所需的功能和行為.
  • UML實踐---UML活動圖、順序圖、狀態圖、協作圖
    UML實踐----UML活動圖、順序圖、狀態圖、協作圖 本文向大家介紹一下UML實踐,UML中有九種建模的圖標,即用例圖、類圖、對象圖、順序圖等,這裡就向大家介紹一下UML實踐中UML活動圖,順序圖,狀態圖花費協作圖。
  • UML科普文,一文章掌握14種UML圖!
    支持更高層次的開發概念,如協作,框架,模式和組件。整合最佳的工作方法 (Best Practices)。UML圖有哪些?結構圖分為類圖、輪廓圖、組件圖、組合結構圖、對象圖、部署圖、包圖。UML圖概覽什麼是類圖?【概念】類圖是一切面向對象方法的核心建模工具。類圖描述了系統中對象的類型以及它們之間存在的各種靜態關係。【目的】用來表示類、接口以及它們之間的靜態結構和關係。
  • UML建模中繪製UML用例圖行之有效的辦法
    UML用例圖的畫法,主要包括UML用例圖三要素和用例圖之間的關係等內容,相信通過本節的學習你對UML用例圖的畫法一定會有所認識。UML建模中UML用例圖的畫法最近在用RationalRose畫功能的用例圖,總結一下用例圖的畫法吧,其中的線條都是有特定含義的。UML用例圖設計三要素1,參與者2,用例3,關係參與者和用例都沒有啥好說的,我們就說關係吧。
  • 學習筆記 UML圖類型解析
    學習筆記 UML圖類型解析 UML中有五類圖,共有九種圖形每種圖形都有各自的特點,你對它們是否比較熟悉,這裡就向大家簡單介紹一下UML圖類型,希望對大家學習有所幫助。
  • 產品經理需要使用的UML繪圖流程圖是什麼?
    3.順序圖/時序圖/順序圖:涉及多個角色。期間通過多個步驟,工作過程結束..例如,客戶在一個APP點畫中有三個小人物,每個小人代表一個角色。角色和角色之間有一個線連接,指示角色是如何交互的。客戶訂單提取涉及多個角色、多個過程,如果發生這種情況,可以考慮使用uml序列圖。
  • 產品經理必學UML(二):用例圖
    上一篇中介紹了UML中的類圖,本篇筆者將與大家介紹UML中的用例圖的三個方面內容:用例(Use Case); 參與者(Actor); 參與者、用例之間的關係。
  • 程序猿都應學習的語言:看25張圖學UML
    UML目前的官方組織是https://www.uml.org/宏觀看UML UML用圖去描述一個軟體系統,從需求、設計、到部署的方方面面都以及覆蓋。那麼從總體上先來看看UML有哪些圖呢?:具有相同屬性相同操作 相同關係相同語義的對象的描述接口:描述元素的外部可見行為,即服務集合的定義說明用例:代表一個系統或系統的一部分行為,是一組動作序列的集合另外,參與者、信號應用、文檔庫、頁表等都是上述基本事物的變體行為事物:UML模型圖的動態部分,描述跨越空間和時間的行為狀態機:描述事物或交互在生命周期內響應事件所經歷的狀態序列交互:實現某功能的一組構件事物之間的消息的集合,涉及消息、動作序列
  • 需求分析——掌握UML建模語言的用例圖
    UML是面向對象開發的建模語言,由OMG(OMG是一個世界性的計算機標準協會),該協會致力於發展和傳播面向對象系統,OMG在1997年公布了UML建模語言標準。UML定義了9種模型圖,為軟體開發過程的需求分析、系統設計、系統部署階段提供建模支持,這9種模型圖分別是用例圖、類圖、對象圖、狀態圖、活動圖、序列圖、協作圖、構件圖和部署圖。這些模型圖從不同的側面對系統進行建模。
  • UML精粹 UML類圖全面剖析
    UML精粹 UML類圖全面剖析 UML有很多值得學習的地方,你對UML精粹中類圖是否熟悉,這裡就向大家介紹一下有關類圖方面的內容,相信通過本文的介紹你對類圖一定會有全面的認識。
  • 程序猿都應學習的語言:看 25 張圖學 UML
    /關係/圖事物(Things)構件事物:UML模型的靜態部分,描述概念或物理元素類:具有相同屬性相同操作 相同關係相同語義的對象的描述接口:描述元素的外部可見行為,即服務集合的定義說明用例:代表一個系統或系統的一部分行為,是一組動作序列的集合另外,參與者、信號應用、文檔庫、頁表等都是上述基本事物的變體行為事物:UML模型圖的動態部分,描述跨越空間和時間的行為狀態機
  • 看懂UML類圖和時序圖
    一起學習、成長、溫情的熱愛生活圖丨pexels這裡不會將UML的各種元素都提到,我只想講講類圖中各個類之間的關係;能看懂類圖中各個類之間的線條、箭頭代表什麼意思後,也就足夠應對日常的工作和交流;同時,我們應該能將類圖所表達的含義和最終的代碼對應起來
  • UML類圖
    在總結設計模式的時候,經常需要通過它們的 UML 圖來更整體的了解設計模式的代碼結構,這篇文章主要就是總結 UML 的一些相關知識定義統一建模語言(英語:Unified Modeling Language,縮寫 UML) 是非專利的第三代建模和規約語言。
  • 詳解:UML類圖符號、各種關係說明以及舉例
    依賴**(Dependency)**:元素A的變化會影響元素B,但反之不成立,那麼B和A的關係是依賴關係,B依賴A;類屬關係和實現關係在語義上講也是依賴關係,但由於其有更特殊的用途,所以被單獨描述。uml中用帶箭頭的虛線表示Dependency關係,箭頭指向被依賴元素。
  • 產品經理必學UML:類圖
    本篇文章主要介紹了UML靜態視圖中的類圖,包括類圖的概念、用途及相關元素,供大家一起參考和學習。上圖為產品經理經常用到的UML圖,包括靜態視圖(類圖)和動態視圖(用例圖、狀態圖、順序圖、活動圖),其中靜態視圖主要用來分析業務概念,描述靜態場景;動態視圖描述業務行為,分析動態場景。本文主要介紹類圖。
  • 解析UML時序圖的四大元素
    解析UML時序圖的四大元素 本文向大家介紹一下UML時序圖,UML時序圖描述對象是如何交互的,並且將重點放在消息序列上。也就是說,描述消息是如何在對象間發送和接收的。
  • UML基礎 UML順序圖和協作圖簡介
    UML基礎 UML順序圖和協作圖簡介 UML建模中順序圖和協作圖的概念你是否了解,這裡向大家簡單介紹一下UML順序圖是將交互關係表示為一個二維圖,而UML協作圖也是互動的圖表。
  • 解析UML的靜態建模機制
    UML的靜態建模機制包括用例圖(Use case diagram)、類圖(Class diagram)、對象圖(Object diagram )、包(Package)、構件圖(Component diagram)和配置圖(Deployment diagram)。
  • 解析UML類圖關係中UML關聯和其他關係的區別和聯繫
    解析UML類圖關係中UML關聯和其他關係的區別和聯繫 在UML類圖關係中,UML關聯,依賴,聚集,組成的聯繫十分緊密,不容易區分,本文試圖用通俗的語言來講解這四種關係的區別。
  • 解析UML順序圖中分類器分層
    解析UML順序圖中分類器分層 UML順序圖有很多值得學習的地方,對它的概念你是否了解,本文就向大家介紹一下UML順序圖中分類器分層,希望本文的介紹對你的學習有所幫助。