亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

\(^_^)/ 用例圖

系統 2080 0

參考: http://pengfeng.iteye.com/blog/642661

參考: http://wgq837051.iteye.com/blog/960613

參考: http://www.iteye.com/topic/1122586

參考: http://gqsunrise.iteye.com/blog/1257466

參考: http://housen1987.iteye.com/blog/1319309

?

?

用例圖是除開發人員以外的用戶所能看到的系統功能模型圖,展示了一些用戶和用例以及它們之間的聯系。

主要作用有三個:

a.獲取需求;

b.指導測試;

c.在整個過程的其他工作流起到作用。

?

?

用例圖所包含的元素如下:

1.參與者(Actor)

參與者不單單是指人,而是指系統以外的,在使用系統或與系統交互過程中所扮演的角色。因此參與者可以是人,也可以是事物或者子系統等等。參與者用簡筆畫的小人表示:

2.用例(UseCase)

用例可以理解為參與者需要系統做的工作,也就是系統的外部可見功能。用一個橢圓形表示:

3.關系

用例圖中涉及到四種關系:

\(^_^)/ 用例圖
?

?

?



\(^_^)/ 用例圖
?
?


\(^_^)/ 用例圖
?

?

?

?

?

用例圖主要用來圖示化系統的主事件流程,它主要用來描述客戶的需求,即用戶希望系統具備的完成一定功能的動作,通俗地理解用例就是軟件的功能模塊,所以是設計系統分析階段的起點。

設計人員根據客戶的需求來創建和解釋用例圖,用來描述軟件應具備哪些功能模塊以及這些模塊之間的調用關系。

用例圖包含了用例和參與者,用例之間用關聯來連接以求把系統的整個結構和功能反映給非技術人員(通常是軟件的用戶),對應的是軟件的結構和功能分解。

用例是從系統外部可見的行為,是系統為某一個或幾個參與者(Actor)提供的一段完整的服務。

從原則上來講,用例之間都是獨立、并列的,它們之間并不存在著包含從屬關系。但是為了體現一些用例之間的業務關系,提高可維護性和一致性,用例之間可以抽象出包含(include)、擴展(extend)和泛化(generalization)幾種關系。

?

?

?

?

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

?

?

UML中擴展和泛化的區別?

? ? ? ? ?泛化表示類似于OO術語“繼承”或“多態”。UML中的Use Case泛化過程是將不同Use Case之間的可合并部分抽象成獨立的父Use Case,并將不可合并部分單獨成各自的子Use Case;包含以及擴展過程與泛化過程類似,但三者對用例關系的優化側重點是不同的。如下:

? ? ? ? ?●泛化側重表示子用例間的互斥性;

? ? ? ? ?●包含側重表示被包含用例對Actor提供服務的間接性;

? ? ? ? ?●擴展側重表示擴展用例的觸發不定性;詳述如下:

?

? ? ? ? ?發生按照發生條件可分為如下兩種情況:

⒈無條件發生:肯定發生的;(泛化,包含)

⒉有條件發生:未必發生,發生與否取決于系統狀態;(擴展)

?

用例提供服務的方式:

a.直接服務:泛化中的子用例,擴展用例(有條件) -- 可以作為基本用例事件的備選擇流而存在。

b.間接服務:包含中的被包含用例

?

?

?

?

1、包含關系(include)

? ?使用包含(Inclusion)用例來封裝一組跨越多個用例的相似動作(行為片斷),以便多個基(Base)用例復用。

? ?基用例控制與包含用例的關系,以及被包含用例的事件流是否會插入到基用例的事件流中。

? ?基用例可以依賴包含用例執行的結果,但是雙方都不能訪問對方的屬性。?

? ?

? ?包含關系對典型的應用就是復用。

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

? ?基本用例可以包含包含用例具有的的行為,并把它所包含的用例行為作為自身用例的一部分,這種關系就叫作包含。

\(^_^)/ 用例圖
?

?

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

\(^_^)/ 用例圖
?

?

?

?

2、擴展關系(extend)?

? ?將基用例中一段相對獨立并且可選的動作,用擴展(Extension)用例加以封裝,再讓它從基用例中聲明的擴展點(Extension Point)上進行擴展,從而使基用例行為更簡練和目標更集中。

? ?擴展用例為基用例添加新的行為。

? ?擴展用例可以訪問基用例的屬性,因此它能根據基用例中擴展點的當前狀態來判斷是否執行自己。

? ?但是擴展用例對基用例不可見。

? ?對于一個擴展用例,可以在基用例上有幾個擴展點。

? ?一個用例可以定義為基本用例的增量擴展,這種關系便成為擴展關系。擴展關系可以有控制條件,當用例實例執行到一個擴展點時,控制條件便可以決定是否執行擴展。比如消費者購物,如果貨物質量出現問題就可以退貨,如果未出現質量問題就沒必要退貨。 ?

\(^_^)/ 用例圖
?

?

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

\(^_^)/ 用例圖
?

?

?

3、泛化關系(generalization)

? ?子用例和父用例相似,但表現出更特別的行為;子用例將繼承父用例的所有結構、行為和關系。

? ?子用例可以使用父用例的一段行為,也可以重載它。

? ?父用例通常是抽象的。

? ?在實際應用中很少使用泛化關系,子用例中的特殊行為都可以作為父用例中的備選流存在。

? ?泛化關系通常有叫繼承關系。子用例是父用例的特殊形式,子用例繼承了父用例的所有行為和屬性,也可以增加新的特性或覆蓋父用例的行為。

\(^_^)/ 用例圖
?

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

\(^_^)/ 用例圖
?

?

?

?

4)關聯(association)

關聯描述的是參與者與用例之間的關系。

\(^_^)/ 用例圖
?

?

?

實例:

系統整體用例圖

\(^_^)/ 用例圖
?
?

?

?

\(^_^)/ 用例圖


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

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

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

【本文對您有幫助就好】

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

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 摸一摸操一操 | 免费一级欧美片在线观看 | 久草在线观看视频 | 网友自拍视频悠悠在线 | 女bbbbxxx| 亚洲小视频在线观看 | 四虎永久在线观看免费网站网址 | 够爱久久 | 91亚洲精品一区二区在线观看 | 美女叫春| 亚洲欧美国产高清va在线播放 | 久久久久久噜噜噜久久久精品 | 久久尹人香蕉国产免费天天 | 伊人影院久久 | 五月开心六月伊人色婷婷 | 人人干人人模 | 99精品免费在线 | 狠狠色丁香婷婷综合视频 | 久久精品亚洲一区二区三区浴池 | 深夜精品寂寞在线观看黄网站 | 欧美乱爱 | 久热re这里只有精品视频 | 久久久这里只有免费精品2018 | 99久久精品国产国产毛片 | 亚洲精品黄色 | 亚洲精品911| 国产精品嫩草影院奶水 | 91亚洲精品一区二区在线观看 | 亚洲欧美国产精品 | 四虎综合 | 一本大道香蕉中文在线高清 | 中文字幕日本精品一区二区三区 | 欧美成人全部费免网站 | 久久狠狠第一麻豆婷婷天天 | 亚洲综合狠狠99婷婷 | 国产精品精品国产一区二区 | 免费一区二区三区久久 | 久久久久这里只有精品 | 中文字幕在线播放 | 人人骚 | 亚洲精品综合久久中文字幕 |