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打印中的模型分割與打包
主站蜘蛛池模板: AV在线天堂进入| 女人爽到高潮免费视频大全| 五月天久久综合| 欧美成人区| 黄色a一级视频| 国产国模一区二区三区四区| 亚洲欧美日韩中文字幕在线| 日本免费a视频| 丰满人妻中出白浆| 久久久久久久久18禁秘| 精品综合久久久久久97| 在线观看91精品国产剧情免费| 免费一级无码在线网站 | 免费国产无遮挡又黄又爽| 99热这里只有免费国产精品 | 久99久热只有精品国产15| 亚洲天堂网在线观看视频| 欧美亚洲中文精品三区| 亚洲无码A视频在线| 久久久久国产一级毛片高清板| 欧美国产三级| 亚洲人成影院午夜网站| 亚洲人成网站观看在线观看| 国产精品自在线天天看片| 精品综合久久久久久97超人| 在线视频精品一区| 秋霞一区二区三区| 日韩福利在线观看| 波多野结衣中文字幕一区二区| 国产精品亚洲一区二区三区z | 91精品国产一区| 在线播放国产一区| 国模沟沟一区二区三区| 精品综合久久久久久97| 91丝袜乱伦| 久久国产精品波多野结衣| 亚洲欧美在线看片AI| 免费观看三级毛片| 激情无码字幕综合| 国产福利一区视频| 91美女视频在线| 97综合久久| 亚洲欧洲日韩国产综合在线二区| 欧美中出一区二区| 少妇高潮惨叫久久久久久| 日韩中文字幕亚洲无线码| 亚洲人成网站观看在线观看| 18禁影院亚洲专区| 韩日无码在线不卡| 国产亚洲视频免费播放| 无码一区二区三区视频在线播放| 亚洲最新在线| a亚洲视频| 国产av无码日韩av无码网站 | 国产麻豆91网在线看| 波多野结衣久久高清免费| 日本人真淫视频一区二区三区| 亚洲V日韩V无码一区二区 | 亚洲天堂日韩在线| 欧美成人在线免费| 亚洲第一页在线观看| 欧美中文一区| 日韩无码视频专区| 免费久久一级欧美特大黄| 国产性精品| 91口爆吞精国产对白第三集| 久久精品aⅴ无码中文字幕| 五月激激激综合网色播免费| 日韩欧美中文在线| 成人日韩欧美| 久久久久88色偷偷| 国产男人的天堂| 精品国产成人高清在线| 亚洲 欧美 中文 AⅤ在线视频| 在线视频97| 青青草一区| 亚洲精品无码抽插日韩| 亚洲综合狠狠| www.精品视频| 精品小视频在线观看| 99热这里只有精品久久免费| 中字无码av在线电影|