簡體   English   中英

UML中的參與者和擴展用例

[英]Actors and extending use cases in UML

如果執行者與用例A進行通信,他是否會自動與擴展用例B進行通信,或者我是否必須在執行者與用例B之間繪制第二個關聯-如果我的意圖是讓執行者同時執行A和B? 如果不是A和B之間的關聯是<< includes >>,而不是<< extends >>,該怎么辦? 參與者與用例A之間的界線是否也暗示參與者可以執行包含的用例(B)? 還是我必須從參與者中畫出第二條線來使用案例b?


編輯:恐怕我沒有說清楚自己。 我的懷疑不在於包含擴展的語義,也不在於何時使用它們,而是它們在圖表上的正確表示。 如果要求我繪制一個ATM用例圖,我可能會想出同樣的圖@RedBeard。 但是,在站點[ http://elearning.uml.ac.at/]中 ,他們斷言,根據它們的UML2標准,為使圖表完整,還應該再繪制兩個關聯,將actor直接連接到包括的和擴展的用例,即從參與者到Card Identification一行,從參與者到Online Help另一行,否則這些用例將永遠不會執行。 由於我在UML超級結構書中找不到該解釋,因此決定在此發布此問題。

我添加了一個(或多或少)來自UML2.5規范的示例。 正如你可以看到,當一個“ 客戶 ”想“ 退出 ”,他必須“ 卡Identication”因為你是從“ 退出 ”的包括對“ 卡Identication”所以“ 卡Identication” 總是包含在一個“ 客戶 ”想“ 提款 ”。

同時,當“ 客戶 ”想要“ 執行ATM交易 ”(可以是“ 提款 ”,“ 轉賬 ”或“ 存款 ”)時,他可以選擇或不選擇“ 在線幫助 ”。 這是由於“ 執行ATM交易 ”和“ 在線幫助 ”之間的擴展鏈接所致,這意味着“ 執行ATM交易可以通過在線幫助進行擴展

因此,如果要建模一個角色必須始終同時執行A和B的事實,則包含鏈接將起作用。 Include鏈接模型是一種可能的擴展,不是強制性的。 希望很清楚。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM