最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

系統(tǒng)架構(gòu)師-UML相關(guān)

2023-06-17 09:41 作者:chaojilaji123  | 我要投稿

原文合集地址如下,有需要的朋友可以關(guān)注


[本文地址](https://mp.weixin.qq.com/s/rXzQ7EqlK42AOs836xfa7A)


[合集地址](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzI5MjY4OTQ2Nw==&action=getalbum&album_id=2969297821654843397&scene=173&from_msgid=2247484209&from_itemidx=1&count=3&nolastread=1#wechat_redirect)


# 介紹


>UML(Unified Modeling Language)用例圖的縮寫(xiě)為UCD,其中UCD代表Use Case Diagram。用例圖是軟件系統(tǒng)設(shè)計(jì)中的一種圖形化表示工具,用于描述系統(tǒng)的功能需求和用戶與系統(tǒng)之間的交互。用例圖主要用于捕捉系統(tǒng)的行為視圖,展示系統(tǒng)中的參與者(actors)和用例(use cases)之間的關(guān)系。


## 用例圖中的元素

在UML(Unified Modeling Language)用例圖中,常見(jiàn)的元素包括:


1. 參與者(Actors):參與者是與系統(tǒng)進(jìn)行交互的外部實(shí)體,可以是人、其他軟件系統(tǒng)、硬件設(shè)備等。參與者可以觸發(fā)用例的執(zhí)行,也可以從系統(tǒng)中接收結(jié)果。參與者通常以圖標(biāo)形式表示,如人的圖標(biāo)或系統(tǒng)圖標(biāo)。


2. 用例(Use Cases):用例代表系統(tǒng)中的一個(gè)功能或一個(gè)用戶場(chǎng)景,描述了系統(tǒng)提供的服務(wù)。用例通常以橢圓形狀表示,并使用有意義的名稱(chēng)來(lái)描述其功能。每個(gè)用例描述了一個(gè)或多個(gè)參與者與系統(tǒng)之間的交互流程。


這些元素一起構(gòu)成了用例圖,通過(guò)用例圖可以清晰地描述系統(tǒng)的功能需求和用戶與系統(tǒng)之間的交互關(guān)系,幫助開(kāi)發(fā)團(tuán)隊(duì)和利益相關(guān)者更好地理解和溝通系統(tǒng)的設(shè)計(jì)。


## 用例圖中的關(guān)系有哪些

在UML(Unified Modeling Language)用例圖中,常見(jiàn)的關(guān)系有以下幾種:


### 1. 關(guān)聯(lián)關(guān)系(Association)

>關(guān)聯(lián)關(guān)系表示參與者(Actor)與用例(Use Case)之間的連接。它們表示參與者與用例之間的通信和交互關(guān)系。關(guān)聯(lián)關(guān)系通常使用直線連接參與者和用例。


假設(shè)我們正在設(shè)計(jì)一個(gè)客戶管理系統(tǒng),其中包含以下幾個(gè)用例:


1. 創(chuàng)建客戶檔案(Create Customer Profile)

2. 更新客戶信息(Update Customer Information)

3. 查看客戶詳情(View Customer Details)

4. 刪除客戶檔案(Delete Customer Profile)


在這個(gè)客戶管理系統(tǒng)中,我們還有兩個(gè)參與者:


1. 管理員(Administrator):負(fù)責(zé)管理系統(tǒng)和客戶檔案的管理員。

2. 客戶(Customer):使用系統(tǒng)的客戶。


現(xiàn)在我們來(lái)看一下哪些場(chǎng)景是關(guān)聯(lián)關(guān)系:


關(guān)聯(lián)關(guān)系示例 1:

? ?- 參與者:管理員

? ?- 用例:創(chuàng)建客戶檔案

? ?- 關(guān)聯(lián)關(guān)系:管理員與創(chuàng)建客戶檔案之間建立關(guān)聯(lián)關(guān)系,表示管理員可以觸發(fā)創(chuàng)建客戶檔案的操作。


關(guān)聯(lián)關(guān)系示例 2:

? ?- 參與者:客戶

? ?- 用例:更新客戶信息

? ?- 關(guān)聯(lián)關(guān)系:客戶與更新客戶信息之間建立關(guān)聯(lián)關(guān)系,表示客戶可以觸發(fā)更新自己信息的操作。


關(guān)聯(lián)關(guān)系示例 3:

? ?- 參與者:管理員

? ?- 用例:查看客戶詳情

? ?- 關(guān)聯(lián)關(guān)系:管理員與查看客戶詳情之間建立關(guān)聯(lián)關(guān)系,表示管理員可以觸發(fā)查看客戶詳情的操作。


關(guān)聯(lián)關(guān)系示例 4:

? ?- 參與者:管理員

? ?- 用例:刪除客戶檔案

? ?- 關(guān)聯(lián)關(guān)系:管理員與刪除客戶檔案之間建立關(guān)聯(lián)關(guān)系,表示管理員可以觸發(fā)刪除客戶檔案的操作。


在這些關(guān)聯(lián)關(guān)系中,參與者與各個(gè)用例之間建立了連接,表示**參與者可以觸發(fā)或執(zhí)行相應(yīng)的用例**。這些關(guān)聯(lián)關(guān)系在用例圖中通過(guò)直線連接參與者和用例來(lái)表示。



### 2. 包含關(guān)系(Include)

>包含關(guān)系表示一個(gè)用例(包含者)包含另一個(gè)用例(被包含者)的行為。當(dāng)一個(gè)用例需要調(diào)用另一個(gè)用例以完成其功能時(shí),可以使用包含關(guān)系來(lái)表示這種關(guān)系。包含關(guān)系通常使用帶箭頭的虛線表示。


假設(shè)我們正在設(shè)計(jì)一個(gè)客戶管理系統(tǒng),其中包含以下幾個(gè)用例:


1. 創(chuàng)建客戶檔案(Create Customer Profile)

2. 更新客戶信息(Update Customer Information)

3. 查看客戶詳情(View Customer Details)

4. 刪除客戶檔案(Delete Customer Profile)


在這個(gè)客戶管理系統(tǒng)中,我們可以看到一些用例之間存在包含關(guān)系:


包含關(guān)系示例 1:

? ?- 用例:更新客戶信息

? ?- 包含關(guān)系:更新客戶信息包含了創(chuàng)建客戶檔案

? ?- 描述:在執(zhí)行更新客戶信息的過(guò)程中,如果客戶檔案不存在,則需要先執(zhí)行創(chuàng)建客戶檔案的操作,因此創(chuàng)建客戶檔案是更新客戶信息的一個(gè)子功能。這種關(guān)系可以使用包含關(guān)系來(lái)表示。


包含關(guān)系示例 2:

? ?- 用例:刪除客戶檔案

? ?- 包含關(guān)系:刪除客戶檔案包含了查看客戶詳情

? ?- 描述:在執(zhí)行刪除客戶檔案的過(guò)程中,需要先查看客戶詳情來(lái)確認(rèn)要?jiǎng)h除的客戶信息。因此,查看客戶詳情是刪除客戶檔案的一個(gè)子功能。這種關(guān)系可以使用包含關(guān)系來(lái)表示。


在這些包含關(guān)系的示例中,**一個(gè)用例包含了另一個(gè)用例的行為,也就是說(shuō),一個(gè)用例的功能需要調(diào)用另一個(gè)用例來(lái)完成**。這種關(guān)系在用例圖中可以用帶箭頭的虛線來(lái)表示。


### 3. 擴(kuò)展關(guān)系(Extend)

>擴(kuò)展關(guān)系表示一個(gè)用例(擴(kuò)展者)可以在特定條件下擴(kuò)展另一個(gè)用例(被擴(kuò)展者)的功能。當(dāng)一個(gè)用例的某個(gè)功能是可選的,并且僅在滿足一定條件時(shí)才會(huì)發(fā)生時(shí),可以使用擴(kuò)展關(guān)系來(lái)表示這種關(guān)系。擴(kuò)展關(guān)系通常使用帶箭頭的虛線表示。


假設(shè)我們正在設(shè)計(jì)一個(gè)客戶管理系統(tǒng),其中包含以下幾個(gè)用例:


1. 創(chuàng)建客戶檔案(Create Customer Profile)

2. 更新客戶信息(Update Customer Information)

3. 查看客戶詳情(View Customer Details)

4. 刪除客戶檔案(Delete Customer Profile)


在這個(gè)客戶管理系統(tǒng)中,我們可以找到一些使用擴(kuò)展關(guān)系的場(chǎng)景:


擴(kuò)展關(guān)系示例 1:

? ?- 基礎(chǔ)用例:創(chuàng)建客戶檔案

? ?- 擴(kuò)展用例:驗(yàn)證客戶信息

? ?- 描述:當(dāng)執(zhí)行創(chuàng)建客戶檔案的操作時(shí),可以選擇進(jìn)行驗(yàn)證客戶信息的擴(kuò)展。驗(yàn)證客戶信息是一個(gè)可選的擴(kuò)展功能,僅在需要驗(yàn)證客戶信息時(shí)才會(huì)發(fā)生。通過(guò)擴(kuò)展關(guān)系,我們可以將驗(yàn)證客戶信息擴(kuò)展與創(chuàng)建客戶檔案基礎(chǔ)用例關(guān)聯(lián)起來(lái)。


擴(kuò)展關(guān)系示例 2:

? ?- 基礎(chǔ)用例:更新客戶信息

? ?- 擴(kuò)展用例:記錄修改日志

? ?- 描述:當(dāng)執(zhí)行更新客戶信息的操作時(shí),可以選擇記錄修改日志的擴(kuò)展。記錄修改日志是一個(gè)可選的擴(kuò)展功能,用于記錄更新客戶信息的操作歷史。通過(guò)擴(kuò)展關(guān)系,我們可以將記錄修改日志擴(kuò)展與更新客戶信息基礎(chǔ)用例關(guān)聯(lián)起來(lái)。


在這些擴(kuò)展關(guān)系的示例中,**一個(gè)用例可以在特定條件下擴(kuò)展另一個(gè)用例的功能**。擴(kuò)展關(guān)系通過(guò)帶箭頭的虛線表示,并指示擴(kuò)展發(fā)生的條件。通過(guò)擴(kuò)展關(guān)系,我們可以描述系統(tǒng)中的可選功能,并以清晰的方式表示這些功能與基礎(chǔ)用例之間的關(guān)系。


### 4. 泛化關(guān)系(Generalization)

>泛化關(guān)系表示一個(gè)用例或參與者是另一個(gè)用例或參與者的特殊情況。泛化關(guān)系用于描述繼承關(guān)系,其中子用例或子參與者繼承了父用例或父參與者的行為和屬性。泛化關(guān)系通常使用帶空心三角形的實(shí)線表示。


假設(shè)我們正在設(shè)計(jì)一個(gè)客戶管理系統(tǒng),其中有兩種類(lèi)型的客戶:普通客戶(Regular Customer)和VIP客戶(VIP Customer)。在這個(gè)系統(tǒng)中,我們可以使用泛化關(guān)系來(lái)表示這兩種客戶之間的關(guān)系。


泛化關(guān)系示例:


泛化關(guān)系示例 1:

? ?- 父用例:創(chuàng)建客戶檔案

? ?- 子用例:創(chuàng)建普通客戶檔案、創(chuàng)建VIP客戶檔案

? ?- 描述:創(chuàng)建普通客戶檔案和創(chuàng)建VIP客戶檔案都是創(chuàng)建客戶檔案的特殊情況。這里的泛化關(guān)系可以表示為父用例“創(chuàng)建客戶檔案”和子用例“創(chuàng)建普通客戶檔案”以及“創(chuàng)建VIP客戶檔案”之間的繼承關(guān)系。


泛化關(guān)系示例 2:

? ?- 父用例:查看客戶詳情

? ?- 子用例:查看普通客戶詳情、查看VIP客戶詳情

? ?- 描述:查看普通客戶詳情和查看VIP客戶詳情都是查看客戶詳情的特殊情況。這里的泛化關(guān)系可以表示為父用例“查看客戶詳情”和子用例“查看普通客戶詳情”以及“查看VIP客戶詳情”之間的繼承關(guān)系。


在這些泛化關(guān)系的示例中,**子用例繼承了父用例的行為和屬性,子用例是父用例的特殊情況**。通過(guò)泛化關(guān)系,我們可以使用父用例來(lái)定義通用的行為和屬性,并通過(guò)子用例來(lái)表示不同情況下的特殊行為和屬性。在用例圖中,泛化關(guān)系通常使用帶空心三角形的實(shí)線來(lái)表示。


### 5. 依賴(lài)關(guān)系(Dependency)

>依賴(lài)關(guān)系表示一個(gè)元素(依賴(lài)者)依賴(lài)于另一個(gè)元素(被依賴(lài)者)。當(dāng)一個(gè)元素的變化可能影響到另一個(gè)元素時(shí),可以使用依賴(lài)關(guān)系來(lái)表示這種關(guān)系。依賴(lài)關(guān)系通常使用帶箭頭的虛線表示。


假設(shè)我們正在設(shè)計(jì)一個(gè)客戶管理系統(tǒng),其中包含以下幾個(gè)用例:


1. 創(chuàng)建客戶檔案(Create Customer Profile)

2. 更新客戶信息(Update Customer Information)

3. 發(fā)送郵件通知(Send Email Notification)


在這個(gè)客戶管理系統(tǒng)中,我們可以找到一些使用依賴(lài)關(guān)系的場(chǎng)景:


依賴(lài)關(guān)系示例 1:

? ?- 用例:發(fā)送郵件通知

? ?- 依賴(lài)關(guān)系:發(fā)送郵件通知依賴(lài)于更新客戶信息

? ?- 描述:當(dāng)執(zhí)行發(fā)送郵件通知的操作時(shí),需要獲取最新的客戶信息來(lái)構(gòu)建郵件內(nèi)容。發(fā)送郵件通知的操作依賴(lài)于更新客戶信息的結(jié)果。因此,發(fā)送郵件通知用例依賴(lài)于更新客戶信息用例。


依賴(lài)關(guān)系示例 2:

? ?- 用例:創(chuàng)建客戶檔案

? ?- 依賴(lài)關(guān)系:創(chuàng)建客戶檔案依賴(lài)于發(fā)送郵件通知

? ?- 描述:在執(zhí)行創(chuàng)建客戶檔案的操作時(shí),需要發(fā)送郵件通知給相關(guān)人員。創(chuàng)建客戶檔案的操作依賴(lài)于發(fā)送郵件通知的結(jié)果。因此,創(chuàng)建客戶檔案用例依賴(lài)于發(fā)送郵件通知用例。


在這些依賴(lài)關(guān)系的示例中,**一個(gè)用例的執(zhí)行依賴(lài)于另一個(gè)用例的結(jié)果或輸出**。依賴(lài)關(guān)系可以幫助我們描述用例之間的依賴(lài)關(guān)系,以確保正確的順序和流程。在用例圖中,依賴(lài)關(guān)系通常使用帶箭頭的虛線來(lái)表示。



## 對(duì)比記憶


### 包含關(guān)系和擴(kuò)展關(guān)系的區(qū)別

包含關(guān)系和擴(kuò)展關(guān)系是用例圖中兩種不同的關(guān)系,用于描述用例之間的關(guān)聯(lián)和擴(kuò)展。


包含關(guān)系(Inclusion Relationship)是一種用于描述一個(gè)用例包含另一個(gè)用例的關(guān)系。在包含關(guān)系中,一個(gè)用例的功能需要調(diào)用另一個(gè)用例來(lái)完成。被包含的用例是包含用例的一部分,也就是說(shuō),包含用例將使用被包含用例的功能來(lái)完成自身的行為。包含關(guān)系通常用于表示一種可重用的行為或功能,以便將其用于多個(gè)用例中。


擴(kuò)展關(guān)系(Extension Relationship)是一種用于描述一個(gè)用例在特定條件下擴(kuò)展另一個(gè)用例的功能的關(guān)系。在擴(kuò)展關(guān)系中,一個(gè)用例可以在特定條件下擴(kuò)展另一個(gè)用例的功能,以增加額外的行為或功能。擴(kuò)展關(guān)系通常用于表示一種可選的或條件性的功能,只有在特定條件下才會(huì)觸發(fā)擴(kuò)展用例的執(zhí)行。


區(qū)別如下:


- 包含關(guān)系強(qiáng)調(diào)一個(gè)用例的功能需要調(diào)用另一個(gè)用例來(lái)完成,被包含的用例是包含用例的一部分。

- 擴(kuò)展關(guān)系強(qiáng)調(diào)一個(gè)用例可以在特定條件下擴(kuò)展另一個(gè)用例的功能,擴(kuò)展用例是基礎(chǔ)用例的可選或條件性擴(kuò)展。



### 泛化關(guān)系和擴(kuò)展關(guān)系的區(qū)別

泛化關(guān)系(Generalization Relationship)和擴(kuò)展關(guān)系(Extension Relationship)是用例圖中兩種不同的關(guān)系,用于描述用例之間的關(guān)聯(lián)和繼承。


1. 泛化關(guān)系:

? ?- 泛化關(guān)系用于描述用例之間的繼承關(guān)系,表示一個(gè)用例是另一個(gè)用例的特殊情況或子類(lèi)。

? ?- 通過(guò)泛化關(guān)系,一個(gè)用例可以繼承另一個(gè)用例的行為和屬性。

? ?- 泛化關(guān)系適用于表示用例之間的一般與特殊關(guān)系,其中子用例繼承了父用例的通用行為。

? ?- 在用例圖中,泛化關(guān)系通常使用帶空心三角形的實(shí)線來(lái)表示。


2. 擴(kuò)展關(guān)系:

? ?- 擴(kuò)展關(guān)系用于描述一個(gè)用例在特定條件下擴(kuò)展另一個(gè)用例的功能。

? ?- 通過(guò)擴(kuò)展關(guān)系,一個(gè)用例可以在特定條件下增加額外的行為或功能,擴(kuò)展用例是基礎(chǔ)用例的可選或條件性擴(kuò)展。

? ?- 擴(kuò)展關(guān)系適用于表示用例之間的可選或條件性功能擴(kuò)展,其中擴(kuò)展用例依賴(lài)于基礎(chǔ)用例的執(zhí)行,并在滿足特定條件時(shí)才會(huì)觸發(fā)執(zhí)行。

? ?- 在用例圖中,擴(kuò)展關(guān)系通常使用帶箭頭的虛線來(lái)表示。


總結(jié)來(lái)說(shuō),泛化關(guān)系用于表示用例之間的繼承關(guān)系,子用例是父用例的特殊情況;而擴(kuò)展關(guān)系用于表示一個(gè)用例在特定條件下擴(kuò)展另一個(gè)用例的功能。它們描述了不同類(lèi)型的關(guān)聯(lián)和行為,用于表示不同的用例之間的關(guān)系。


### 泛化關(guān)系和包含關(guān)系的區(qū)別

泛化關(guān)系(Generalization Relationship)和包含關(guān)系(Inclusion Relationship)是用例圖中兩種不同的關(guān)系,用于描述用例之間的關(guān)聯(lián)和組織結(jié)構(gòu)。


1. 泛化關(guān)系:

? ?- 泛化關(guān)系用于描述用例之間的繼承關(guān)系,表示一個(gè)用例是另一個(gè)用例的特殊情況或子類(lèi)。

? ?- 通過(guò)泛化關(guān)系,一個(gè)用例可以繼承另一個(gè)用例的行為和屬性,子用例是父用例的擴(kuò)展。

? ?- 泛化關(guān)系適用于表示用例之間的一般與特殊關(guān)系,其中子用例繼承了父用例的通用行為。

? ?- 在用例圖中,泛化關(guān)系通常使用帶空心三角形的實(shí)線來(lái)表示。


2. 包含關(guān)系:

? ?- 包含關(guān)系用于描述一個(gè)用例包含另一個(gè)用例的關(guān)系,表示一個(gè)用例的功能需要調(diào)用另一個(gè)用例來(lái)完成。

? ?- 被包含的用例是包含用例的一部分,它提供了一種可重用的行為或功能。

? ?- 包含關(guān)系適用于表示用例之間的組織結(jié)構(gòu)和模塊化,其中一個(gè)用例的功能包含了另一個(gè)用例的功能。

? ?- 在用例圖中,包含關(guān)系通常使用帶箭頭的虛線來(lái)表示。


區(qū)別如下:


- 泛化關(guān)系描述了用例之間的繼承關(guān)系,其中子用例是父用例的特殊情況,子用例繼承了父用例的行為和屬性。

- 包含關(guān)系描述了一個(gè)用例包含另一個(gè)用例的關(guān)系,其中一個(gè)用例的功能需要調(diào)用另一個(gè)用例來(lái)完成,被包含的用例提供了可重用的行為或功能。

- 泛化關(guān)系強(qiáng)調(diào)繼承和擴(kuò)展的關(guān)系,子用例是父用例的特殊情況,繼承了父用例的通用行為。

- 包含關(guān)系強(qiáng)調(diào)模塊化和組織結(jié)構(gòu),一個(gè)用例的功能包含了另一個(gè)用例的功能,被包含的用例提供了一種可重用的行為。


雖然泛化關(guān)系和包含關(guān)系在某些方面可能有一些相似之處,但它們描述的是不同的概念和關(guān)系。泛化關(guān)系用于描述繼承關(guān)系,而包含關(guān)系用于描述組織和模塊化關(guān)系。



## 縮寫(xiě)記憶方式

### 基礎(chǔ)概念

簡(jiǎn)單來(lái)說(shuō),一共有五個(gè)關(guān)系。他們分別的關(guān)鍵點(diǎn)在如下:

1、依賴(lài)關(guān)系:一個(gè)用例的執(zhí)行依賴(lài)于另一個(gè)用例的結(jié)果或輸出

2、關(guān)聯(lián)關(guān)系:參與者可以觸發(fā)或執(zhí)行相應(yīng)的用例

3、泛化關(guān)系:子用例繼承了父用例的行為和屬性,子用例是父用例的特殊情況

4、包含關(guān)系:一個(gè)用例的功能需要調(diào)用另一個(gè)用例來(lái)完成

5、擴(kuò)展關(guān)系:一個(gè)用例可以在特定條件下擴(kuò)展另一個(gè)用例的功能


### 區(qū)別

包含關(guān)系中有**重用**的概念

擴(kuò)展關(guān)系中有**額外**的概念

泛化關(guān)系中有**繼承**的概念

依賴(lài)關(guān)系中有**先后串聯(lián)**的概念


### 順口溜

包含重用:箭頭虛線

擴(kuò)展額外:箭頭虛線

泛化繼承:空心三角形實(shí)線

依賴(lài)串聯(lián):箭頭虛線

關(guān)聯(lián)參與:直線






系統(tǒng)架構(gòu)師-UML相關(guān)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
乌拉特后旗| 农安县| 会理县| 县级市| 曲松县| 襄垣县| 巴彦淖尔市| 湘潭县| 九寨沟县| 日喀则市| 波密县| 濮阳县| 虹口区| 柳州市| 巨野县| 泰顺县| 永新县| 延川县| 义乌市| 福鼎市| 陆丰市| 姚安县| 双鸭山市| 福清市| 澄江县| 彭泽县| 扶绥县| 科技| 文山县| 昆山市| 沈阳市| 特克斯县| 东兰县| 临颍县| 兴仁县| 县级市| 昆山市| 彭山县| 东乌| 潜江市| 肇源县|