999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

UML用例間包含關系與泛化關系的比較與分析

2021-12-30 07:37:45蘇晶
科學與信息化 2021年15期
關鍵詞:模型系統

蘇晶

山東理工大學 山東 淄博 255049

引言

UML用例模型是系統需求獲取及分析的重要手段,是最終用戶與開發人員溝通和交流的有效途徑。一旦用例模型被確定,所有分析、設計和開發,包括之后的部署及測試等工作都需要以此為依據開展。

對于一個系統而言,不同參與者的需求千差萬別;另外,為了確保系統安全性,也需要為不同的參與者設置不同的訪問功能和權限。在系統分析和設計過程中,關系直觀體現了參與者訪問系統功能的具體方式,并直接影響和決定了系統的具體實現方式。由此可以看出,關系的識別在構建用例模型的過程中發揮著至關重要的作用。

其中包含關系和泛化關系在表現形式和使用方法上較為相似,容易產生混淆,本文以自主點餐系統為例,對兩種關系的建模要點進行分析和比較。

1 用例間的關系

1.1 包含關系

包含關系是指一個用例可以簡單地包含其他用例具有的行為,并將其所包含的用例行為作為自身行為的一部分,這兩個用例分別被稱為基礎用例和被包含用例。包含關系的具體表現形式為被包含用例的事件流可插入至基礎用例的事件流中。

在用例圖的建模過程中,一般有兩種情況需要使用到包含關系。第一種最為常用,在對用例的事件流進行描述的過程中,若發現多個用例同時使用到同一段行為,則可將這段共同的行為單獨抽象成為一個用例,然后建立兩者之間的包含關系,從而實現重用并簡化事件流描述的目的。

以自主點餐系統為例,客戶可以進行“預約餐臺”、“下單點餐”、“支付結算”和“發表評價”四個操作,所有操作均需在“登錄系統”后方可完成。根據描述,“登錄系統”為多個用例的共同行為,可將其抽象出來,成為一個新的用例,并建立其與4個基礎用例之間的包含關系。關系一旦創建,這4個基礎用例在用例規約的事件流描述中可直接對“登錄系統”用例的事件流進行引用,避免了對公共行為的重復描述,提高了模型的可維護性。

包含關系使用的第二種情況為某一個用例提供的功能過多,事件流過于復雜,此時可將該用例分解為粒度較小的幾個用例,然后建立分解后小用例與原來基礎用例之間的包含關系。

如自主點餐系統中管理員的“維護菜品”操作,由于功能過多,可將其分解為“添加菜品”、“修改菜品”和“刪除菜品”三個用例,則三個粒度較小用例與基礎用例間可建立包含關系。需要注意的是,這種方式的包含關系不允許參與者直接訪問包含用例,這也是兩種包含關系之間最大的區別。

1.2 泛化關系

用例間的泛化關系將特化的用例與一般化的用例聯系起來,這兩個用例分別被稱為子用例和父用例。子用例繼承了父用例所有的結構、行為和關系,并且可以添加、覆蓋或者改變繼承的行為。

在對用例的事件流進行描述的過程中,發現兩個或者多個用例在行為、結構和目的方面存在共性時,可以新建一個一般化的用例用于描述這些共有部分和一般過程,然后建立特化用例和一般化用例之間的泛化關系,從而實現重用并簡化事件流描述的目的。

在自主點餐系統的功能性需求中,有這樣一段描述,“支付結算”主要包括“支付寶結算”和“會員卡結算”兩種方式。經過分析發現,“支付寶結算”和“會員卡結算”兩個用例在行為、結構和目的方面都存在共性,都屬于“支付結算”的特殊方式,因此可將其抽象為父用例,兩種代表具體支付方式的用例抽象為子用例,建立泛化關系,并且箭頭方向從子用例指向父用例。

需要注意的是,為了降低系統耦合度,一般將父用例設計為抽象用例,即在父用例中并不提供具體的行為和功能,而將行為描述的職責交給子用例來完成[1]。

2 包含關系與泛化關系的比較

包含關系和泛化關系均屬于用例之間的關系,并且基本表現形式都是從現有用例的事件流中抽取出共有部分,將其作為一個單獨的用例,從而達到復用現有用例的行為,并提高模型可維護性的目的。但兩者在實際使用過程中又存在著顯著的區別。

以自主點餐系統為例,分析兩者的區別主要包括以下兩個方面:

2.1 原有用例的相似程度

在泛化關系中,子用例“支付寶結算”和“會員卡結算”不管在名稱、行為、結構還是目等方面都存在著共性,并且都屬于“支付結算”的特殊形式,因此原有用例是整體上的相似。

而在包含關系中,基礎用例“預約餐臺”、“下單點餐”、“支付結算”和“發表評價”在名稱、結構和目的方面可以完全不同,只不過它們都有一段相似的行為,也就是“登錄系統”而已,因此原有用例只是部分上的相似。

2.2 新用例是否一定被執行

在泛化關系中,需要將多個子用例中的共性抽象成為一個父用例,子用例在繼承父用例的基礎上可以進行修改,子用例間相互獨立,任何一個子用例的執行不受其他子用例的影響。如果父用例“支付結算”為抽象用例,不提供具體的查看方法,則子用例“會員卡結算”被參與者啟動后,父用例“支付結算”不會被執行。

而對于包含關系,是將多個基礎用例中的公共行為抽象為一個被包含用例,可以說被包含用例是基礎用例的重要組成部分,因此,基礎用例“支付結算”被參與者啟動后,被包含用例“登錄系統”必然會被執行[2]。

3 結束語

用例圖中的模型元素之間并非相互獨立,參與者之間、用例之間、參與者與用例之間均存在著不同類型的關系。從用戶層面來看,關系描述了模型元素間具體化的語義連接,反映了參與者使用系統的具體方式;從開發者層面來看,關系體現了事件處理的流程與協作,決定了系統功能的實現方式。因此,在用例建模過程中,需準確把握各種關系的使用方法和建模要點,避免因識別有誤而對后續的設計和開發過程產生不利影響。

猜你喜歡
模型系統
一半模型
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
3D打印中的模型分割與打包
主站蜘蛛池模板: 亚洲精品第一页不卡| 就去色综合| 一级黄色网站在线免费看| 国产亚洲精品资源在线26u| 午夜一区二区三区| 欧美黄网站免费观看| 国产成人久视频免费| 亚洲天堂免费| 国产欧美视频一区二区三区| 亚洲区第一页| 黄色网在线免费观看| 亚洲高清在线播放| 免费国产小视频在线观看| 国产免费自拍视频| 国产人免费人成免费视频| 亚洲成a人在线播放www| 国产在线精品99一区不卡| 2020国产在线视精品在| 伊人查蕉在线观看国产精品| 欧美激情网址| 天天色综合4| 自拍偷拍欧美| 欧美成人二区| 亚洲丝袜中文字幕| jizz亚洲高清在线观看| 国产福利2021最新在线观看| 亚洲中文字幕97久久精品少妇| 亚洲第一视频区| 成人无码区免费视频网站蜜臀| 国产成人亚洲毛片| 国产白浆在线| 人妻少妇乱子伦精品无码专区毛片| 青草精品视频| 暴力调教一区二区三区| 国产又色又刺激高潮免费看| 99久久人妻精品免费二区| 亚洲日本一本dvd高清| 欧美一级在线播放| 欧美午夜在线观看| 国内精品手机在线观看视频| 亚洲国内精品自在自线官| 久久99精品久久久久纯品| 1级黄色毛片| 蜜芽国产尤物av尤物在线看| 18禁影院亚洲专区| 免费大黄网站在线观看| 欧美天天干| 尤物精品视频一区二区三区| 国产精品30p| www.亚洲色图.com| 欧美一区二区三区国产精品| 青青青国产视频| 成人精品免费视频| 亚洲最新在线| 成人国产精品一级毛片天堂| 成人精品免费视频| 伊人久久精品无码麻豆精品 | 国产又大又粗又猛又爽的视频| 久久天天躁狠狠躁夜夜2020一| 亚洲三级电影在线播放 | 国产亚洲美日韩AV中文字幕无码成人 | 怡红院美国分院一区二区| 亚洲IV视频免费在线光看| 国产全黄a一级毛片| 99精品在线视频观看| 日韩 欧美 国产 精品 综合| 在线免费看黄的网站| 99久久精品免费看国产电影| 成人福利在线观看| 天天视频在线91频| 福利姬国产精品一区在线| yy6080理论大片一级久久| 五月天综合婷婷| 亚洲色图另类| 色网在线视频| 国产小视频在线高清播放 | 欧美啪啪网| 欧美人在线一区二区三区| 欧美一级夜夜爽| 亚洲婷婷在线视频| 日韩欧美在线观看| 亚洲天堂视频网|