自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

UML用例圖實(shí)例解析

開(kāi)發(fā) 架構(gòu)
UML用例圖主要用來(lái)圖示化系統(tǒng)的主事件流程,它主要用來(lái)描述客戶(hù)的需求,本文就通過(guò)UML用例圖的一個(gè)實(shí)例向大家介紹一下用例圖的應(yīng)用。

本文和大家重點(diǎn)討論一下UML用例圖實(shí)例的應(yīng)用,UML用例圖包含了用例和參與者,用例之間用關(guān)聯(lián)來(lái)連接以求把系統(tǒng)的整個(gè)結(jié)構(gòu)和功能反映給非技術(shù)人員(通常是軟件的用戶(hù)),對(duì)應(yīng)的是軟件的結(jié)構(gòu)和功能分解。

UML用例圖

用例圖主要用來(lái)圖示化系統(tǒng)的主事件流程,它主要用來(lái)描述客戶(hù)的需求,即用戶(hù)希望系統(tǒng)具備的完成一定功能的動(dòng)作,通俗地理解用例就是軟件的功能模塊,所以是設(shè)計(jì)系統(tǒng)分析階段的起點(diǎn),設(shè)計(jì)人員根據(jù)客戶(hù)的需求來(lái)創(chuàng)建和解釋用例圖,用來(lái)描述軟件應(yīng)具備哪些功能模塊以及這些模塊之間的調(diào)用關(guān)系,UML用例圖包含了用例和參與者,用例之間用關(guān)聯(lián)來(lái)連接以求把系統(tǒng)的整個(gè)結(jié)構(gòu)和功能反映給非技術(shù)人員(通常是軟件的用戶(hù)),對(duì)應(yīng)的是軟件的結(jié)構(gòu)和功能分解。

用例是從系統(tǒng)外部可見(jiàn)的行為,是系統(tǒng)為某一個(gè)或幾個(gè)參與者(Actor)提供的一段完整的服務(wù)。從原則上來(lái)講,用例之間都是獨(dú)立、并列的,它們之間并不存在著包含從屬關(guān)系。但是為了體現(xiàn)一些用例之間的業(yè)務(wù)關(guān)系,提高可維護(hù)性和一致性,用例之間可以抽象出包含(include)、擴(kuò)展(extend)和泛(generalization)幾種關(guān)系。

共性:都是從現(xiàn)有的用例中抽取出公共的那部分信息,作為一個(gè)單獨(dú)的用例,然后通后過(guò)不同的方法來(lái)重用這個(gè)公共的用例,以減少模型維護(hù)的工作量。

1、包含(include)

包含關(guān)系:使用包含(Inclusion)用例來(lái)封裝一組跨越多個(gè)用例的相似動(dòng)作(行為片斷),以便多個(gè)基(Base)用例復(fù)用。基用例控制與包含用例的關(guān)系,以及被包含用例的事件流是否會(huì)插入到基用例的事件流中?;美梢砸蕾?lài)包含用例執(zhí)行的結(jié)果,但是雙方都不能訪問(wèn)對(duì)方的屬性。

UML用例圖中包含關(guān)系對(duì)典型的應(yīng)用就是復(fù)用,也就是定義中說(shuō)的情景。但是有時(shí)當(dāng)某用例的事件流過(guò)于復(fù)雜時(shí),為了簡(jiǎn)化用例的描述,我們也可以把某一段事件流抽象成為一個(gè)被包含的用例;相反,用例劃分太細(xì)時(shí),也可以抽象出一個(gè)基用例,來(lái)包含這些細(xì)顆粒的用例。這種情況類(lèi)似于在過(guò)程設(shè)計(jì)語(yǔ)言中,將程序的某一段算法封裝成一個(gè)子過(guò)程,然后再?gòu)闹鞒绦蛑姓{(diào)用這一子過(guò)程。 

例如:業(yè)務(wù)中,總是存在著維護(hù)某某信息的功能,如果將它作為一個(gè)用例,那新建、編輯以及修改都要在用例詳述中描述,過(guò)于復(fù)雜;如果分成新建用例、編輯用例和刪除用例,則劃分太細(xì)。這時(shí)包含關(guān)系可以用來(lái)理清關(guān)系。

2、擴(kuò)展(extend)

擴(kuò)展關(guān)系:將基用例中一段相對(duì)獨(dú)立并且可選的動(dòng)作,用擴(kuò)展(Extension)用例加以封裝,再讓它從基用例中聲明的擴(kuò)展點(diǎn)(ExtensionPoint)上進(jìn)行擴(kuò)展,從而使基用例行為更簡(jiǎn)練和目標(biāo)更集中。UML用例圖中擴(kuò)展用例為基用例添加新的行為。擴(kuò)展用例可以訪問(wèn)基用例的屬性,因此它能根據(jù)基用例中擴(kuò)展點(diǎn)的當(dāng)前狀態(tài)來(lái)判斷是否執(zhí)行自己。但是擴(kuò)展用例對(duì)基用例不可見(jiàn)。

對(duì)于一個(gè)擴(kuò)展用例,可以在基用例上有幾個(gè)擴(kuò)展點(diǎn)。

例如,系統(tǒng)中允許用戶(hù)對(duì)查詢(xún)的結(jié)果進(jìn)行導(dǎo)出、打印。對(duì)于查詢(xún)而言,能不能導(dǎo)出、打印查詢(xún)都是一樣的,導(dǎo)出、打印是不可見(jiàn)的。導(dǎo)入、打印和查詢(xún)相對(duì)獨(dú)立,而且為查詢(xún)添加了新行為。因此可以采用擴(kuò)展關(guān)系來(lái)描述:

3、泛化(generalization)

UML用例圖中泛化關(guān)系:子用例和父用例相似,但表現(xiàn)出更特別的行為;子用例將繼承父用例的所有結(jié)構(gòu)、行為和關(guān)系。子用例可以使用父用例的一段行為,也可以重載它。父用例通常是抽象的。在實(shí)際應(yīng)用中很少使用泛化關(guān)系,子用例中的特殊行為都可以作為父用例中的備選流存在。

例如,業(yè)務(wù)中可能存在許多需要部門(mén)領(lǐng)導(dǎo)審批的事情,但是領(lǐng)導(dǎo)審批的流程是很相似的,這時(shí)可以做成泛化關(guān)系表示:

上面是我參考的一篇文章,覺(jué)得將三種關(guān)系的區(qū)別講得很清晰,在此基礎(chǔ)上結(jié)合自己的系統(tǒng),對(duì)項(xiàng)目(在線(xiàn)購(gòu)物系統(tǒng))的用例做了整體的描繪。

【編輯推薦】

  1. 解析UML用例圖六大元素
  2. UML建模中繪制UML用例圖行之有效的辦法
  3. UML用例圖三大關(guān)系揭秘
  4. UML基礎(chǔ)專(zhuān)題:UML簡(jiǎn)介及UML用例圖
  5. 深入剖析UML用例圖關(guān)系中包含 擴(kuò)展和泛化之間的聯(lián)系
責(zé)任編輯:佚名 來(lái)源: 163.com
相關(guān)推薦

2010-06-18 14:56:15

UML綜合實(shí)例

2010-07-06 15:57:58

UML圖形

2010-06-07 19:02:52

UML用例圖

2010-07-02 09:06:29

UML用例建模

2010-06-29 12:30:15

UML實(shí)例中ATM類(lèi)圖

2010-07-12 12:32:35

UML用例圖

2010-06-13 14:51:27

UML實(shí)踐

2010-06-13 14:37:04

UML實(shí)踐

2010-07-05 12:50:01

用Visio畫(huà)UML用

2010-06-30 17:36:58

UML用例圖

2010-07-08 15:48:47

UML用例圖

2010-06-10 09:04:18

UML用例圖

2010-06-13 15:43:32

UML用例圖

2010-07-01 12:53:34

UML用例圖

2010-06-08 17:01:34

UML用例圖

2010-06-09 18:56:44

UML用例圖

2010-07-06 13:56:40

UML用例圖設(shè)計(jì)

2010-06-30 10:57:49

UML用例圖

2010-06-10 09:17:40

UML用例圖

2010-06-10 10:20:21

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)