欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

UML用例圖中包含(include)、擴展(extend)和泛化

系統 2984 0

UML用例圖中包含(include)、擴展(extend)和泛化(generalization)三種關系詳解

共性: 都是從現有的用例中抽取出公共的那部分信息,作為一個單獨的用例,然后通后過不同的方法來重用這個公共的用例,以減少模型維護的工作量。



1
、包含 (include)

? ??? ? 包含關系:使用包含( Inclusion )用例來 封裝一組跨越多個用例的 相似動作(行為片斷) ,以便多個基( Base )用例 復用 。基用例控制與包含用例的關系,以及被包含用例的事件流是否會插入到基用例的事件流中。 基用例可以依賴包含用例執行的結果 ,但是雙方都不能訪問對方的屬性。

?? ?
包含關系對典型的應用就是 復用 ,也就是定義中說的情景。但是 有時當某用例的事件流過于復雜時,為了簡化用例的描述,我們也可以把某一段事件流抽象成為一個被包含的用例;相反,用例劃分太細時,也可以抽象出一個基用例,來包含這些細顆粒的用例。 這種情況類似于在過程設計語言中,將程序的某一段算法封裝成一個子過程,然后再從主程序中調用這一子過程。

?? ? 例如:業務中,總是存在著維護某某信息的功能,如果將它作為一個用例,那新建、編輯以及修改都要在用例詳述中描述,過于復雜;如果分成新建用例、編輯用例和刪除用例,則劃分太細。這時包含關系可以用來理清關系。

UML用例圖中包含(include)、擴展(extend)和泛化(generalization)三種關系詳解

2 、擴展 (extend)

擴展關系: 將基用例中一段相對 獨立并且可選 的動作,用擴展( Extension )用例加以封裝,再讓它從基用例中聲明的 擴展點( Extension Point 上進行擴展,從而使基用例行為更簡練和目標更集中 。擴展用例為基用例添加新的行為。 擴展用例可以訪問基用例的屬性 ,因此它能根據基用例中擴展點的當前狀態來判斷是否執行自己。 但是擴展用例對基用例不可見。

? 對于一個擴展用例,可以在基用例上有幾個擴展點。 ???
例如,系統中允許用戶對查詢的結果進行導出、打印。對于查詢而言,能不能導出、打印查詢都是一樣的,導出、打印是不可見的。導入、打印和查詢相對獨立,而且為查詢添加了新行為。因此可以采用擴展關系來描述:

UML用例圖中包含(include)、擴展(extend)和泛化(generalization)三種關系詳解 ?

3 、泛化 (generalization)

? 泛化關系:子用例和父用例相似,但表現出更特別的行為; 子用例將繼承父用例的所有結構、行為和關系。 子用例可以使用父用例的一段行為,也可以重載它。父用例 通常是抽象 的。在實際應用中很少使用泛化關系,子用例中的特殊行為都可以作為父用例中的備選流存在。

例如,業務中可能存在許多需要部門領導審批的事情,但是領導審批的流程是很相似的,這時可以做成泛化關系表示: ?

?

UML用例圖中包含(include)、擴展(extend)和泛化(generalization)三種關系詳解

上面是我參考的一篇文章,覺得將三種關系的區別講得很清晰,在此基礎上結合自己的系統,對項目 ( 在線購物系統 ) 的用例做了整體的描繪。

??? *****************************************************************

??? (1)
系統整體用例圖

UML用例圖中包含(include)、擴展(extend)和泛化(generalization)三種關系詳解

UML用例圖中包含(include)、擴展(extend)和泛化(generalization)三種關系詳解

UML用例圖中包含(include)、擴展(extend)和泛化(generalization)三種關系詳解

UML用例圖中包含(include)、擴展(extend)和泛化(generalization)三種關系詳解

?

按照先整體用例,后子系統用例來進行描繪的,歡迎大家提出好的建議 !

?

轉: UML 中擴展和泛化的區別 ?
?????
泛化表示類似于 OO 術語 繼承 多態 UML 中的 Use Case 泛化過程是將不同 Use Case 之間的可合并部分抽象成獨立的父 Use Case ,并將不可合并部分單獨成各自的子 Use Case ;包含以及擴展過程與泛化過程類似,但三者對用例關系的優化側重點是不同的。如下:
????????
泛化側重表示子用例間的互斥性;
????????? ●
包含側重表示被包含用例對 Actor 提供服務的間接性;
????????? ●
擴展側重表示擴展用例的觸發不定性;

詳述如下:

????? 既然用例是系統提供服務的 UML 表述,那么服務這個過程在所有用例場景中是必然發生的,但發生按照發生條件可分為如下兩種情況:
???????? ⒈
無條件發生:肯定發生的;
???????? ⒉
有條件發生:未必發生,發生與否取決于系統狀態;

????? 因此,針對用例的三種關系結合系統狀態考慮,泛化與包含用例屬于無條件發生的用例,而擴展屬于有條件發生的用例。進一步,用例的存在是為 Actor 提供服務,但用例提供服務的方式可分為間接和直接兩種,依據于此, 泛化中的子用例提供的是直接服務,而包含中的被包含用例提供的是間接服務 。同樣, 擴展用例提供的也是直接服務,但擴展用例的發生是有條件的

???????? ? 另外一點需要提及的是:泛化中的子用例和擴展中的擴展用例均可以作為基本用例事件的備選擇流而存在。

轉自: http://www.cnblogs.com/fan0136/archive/2008/12/14/1354730.html

UML用例圖中包含(include)、擴展(extend)和泛化(generalization)三種關系詳解


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 无码免费人妻A片AAA毛片一区 | 成人在线视屏 | 天天综合色网 | 国产成+人+综合+亚洲 欧美 | 久久成人精品视频 | 九九九热在线精品免费全部 | 麻豆md国产在线观看 | 成人两性高清图片视频 | 色婷婷精品国产一区二区三区 | 久久机热综合久久国产 | 日日夜操 | 久久久久久久99精品免费观看 | 黄色免费在线观看 | 日韩手机在线观看 | 久青青 | 一级特黄aaa大片大全 | 成人爱爱电影 | 9久9久女女热精品视频免费观看 | 国产欧美一区二区三区在线看 | 一区二区三区国产精品 | 福利网在线 | 欧美交性又色又爽又黄 | 日韩精品视频在线播放 | 亚洲天天做日日做天天看2018 | 美女国产精品 | 日韩a视频 | 欧美精品一二区 | 亚洲午夜精品一区二区蜜桃 | 精品免费久久久久久成人影院 | 国产日韩一区二区 | 色喜亚洲美女沟沟炮交国模 | 国产成人综合AV在线观看不止 | 国产美女一区二区 | 一区二区精品 | 久久久精彩视频 | 国产成人综合网 | 成人欧美一级毛片免费观看 | 成人在线观看免费视频 | 热久久免费视频 | 伦理一区二区 | 日韩欧美一区二区三区不卡 |