專家指導(dǎo) 如何畫UML用例圖
本文和大家重點討論一下UML用例圖的畫法,主要包括UML簡介,用例建模和UML用例圖說明等內(nèi)容,希望通過本文的學(xué)習(xí)你對畫UML用例圖的方法有一定的認(rèn)識。
如何畫UML用例圖
UML用例圖是非常有用的一種圖,在需求分析中,可以讓人們從繁重的文檔中解脫出來,并且促使人們在做需求時能夠更加準(zhǔn)確、直觀的表現(xiàn)自己的意思。常用的語言文字往往是不能將一種事物表達得秀清晰,這時候就需要用其它的方式來進行表達,用例圖就是其中一種很好的方法,當(dāng)然用例圖不僅僅只是做為需求分析專用,他強大的應(yīng)用性還可以用于其它很多地方,這里就不詳細說明了。畫UML的工具有很多,個人首推IBM的ROSE,建議大家用這款工具來畫例圖,如果有時間,我會寫一篇初級教程。接下來還是介紹一下用例圖吧。
1.首先簡單介紹一下UML.
UML(統(tǒng)一建模語言,UnifiedModelingLanguage)是一種定義良好、易于表達、功能強大且普遍適用的可視化建模語言。它融入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù)。它的作用域不限于支持面向?qū)ο蟮姆治雠c設(shè)計,還支持從需求分析開始的軟件開發(fā)的全過程。在系統(tǒng)分析階段,我們一般用UML來畫很多圖,主要包括用例圖、狀態(tài)圖、類圖、活動圖、序列圖、協(xié)作圖、構(gòu)建圖、配置圖等等,要畫哪些圖要根據(jù)具體情況而定。其實簡單的理解,也是個人的理解,UML的作用就是用很多圖從靜態(tài)和動態(tài)方面來全面描述我們將要開發(fā)的系統(tǒng)。
2.用例建模
是UML建模的一部分,它也是UML里最基礎(chǔ)的部分。用例建模的最主要功能就是用來表達系統(tǒng)的功能性需求或行為。
用例建??煞譃橛美龍D和用例描述。UML用例圖由參與者(Actor)、用例(UseCase)、系統(tǒng)邊界、箭頭組成,用畫圖的方法來完成。用例描述用來詳細描述用例圖中每個用例,用文本文檔來完成。
3.UML用例圖的說明
這里得說明一下參與者.參與者不是特指人,是指系統(tǒng)以外的,在使用系統(tǒng)或與系統(tǒng)交互中所扮演的角色。因此參與者可以是人,可以是事物,也可以是時間或其他系統(tǒng)等等。還有一點要注意的是,參與者不是指人或事物本身,而是表示人或事物當(dāng)時所扮演的角色。比如小明是圖書館的管理員,他參與圖書館管理系統(tǒng)的交互,這時他既可以作為管理員這個角色參與管理,也可以作為借書者向圖書館借書,在這里小明扮演了兩個角色,是兩個不同的參與者。參與者在畫圖中用簡筆人物畫來表示,人物下面附上參與者的名稱。如下圖
接下來就是用例了,用例是對包括變量在內(nèi)的一組動作序列的描述,系統(tǒng)執(zhí)行這些動作,并產(chǎn)生傳遞特定參與者的價值的可觀察結(jié)果。這是UML對用例的正式定義,初學(xué)者可能有點難懂。我們可以這樣去理解,用例是參與者想要系統(tǒng)做的事情。對于對用例的命名,我們可以給用例取一個簡單、描述性的名稱,一般為帶有動作性的詞。用例在畫圖中用橢圓來表示,橢圓下面附上用例的名稱。如下圖
系統(tǒng)邊界是用來表示正在建模系統(tǒng)的邊界。邊界內(nèi)表示系統(tǒng)的組成部分,邊界外表示系統(tǒng)外部。系統(tǒng)邊界在畫圖中方框來表示,同時附上系統(tǒng)的名稱,參與者畫在邊界的外面,用例畫在邊界里面。因為系統(tǒng)邊界的作用有時候不是很明顯。(在畫圖時可省略)
箭頭用來表示參與者和系統(tǒng)通過相互發(fā)送信號或消息進行交互的關(guān)聯(lián)關(guān)系。箭頭尾部用來表示啟動交互的一方,箭頭頭部用來表示被啟動的一方,其中用例總是要由參與者來啟動。
4.接下來就是要說說用例描述了,可以說好的用例描述直接決定工程的質(zhì)量。UML用例圖只是簡單地用圖描述了一下系統(tǒng),但對于每個用例,我們還需要有詳細的說明,這樣就可以讓別人對這個系統(tǒng)有一個更加詳細的了解,這時我們就需要寫用例描述。
對于用例描述的內(nèi)容,一般沒有硬性規(guī)定的格式,但一些必須或者重要的內(nèi)容還是必須要寫進用例描述里面的。用例描述一般包括:簡要描述(說明)、前置(前提)條件、基本事件流、其他事件流、異常事件流、后置(事后)條件等等。下面說說各個部分的意思:
簡要描述:對用例的角色、目的的簡要描述;
前置條件:執(zhí)行用例之前系統(tǒng)必須要處于的狀態(tài),或者要滿足的條件;
基本事件流:描述該用例的基本流程,指每個流程都“正常”運作時所發(fā)生的事情,沒有任何備選流和異常流,而只有最有可能發(fā)生的事件流;
其他事件流:表示這個行為或流程是可選的或備選的,并不是總要總要執(zhí)行它們;
異常事件流:表示發(fā)生了某些非正常的事情所要執(zhí)行的流程;
后置條件:用例一旦執(zhí)行后系統(tǒng)所處的狀態(tài)。
【編輯推薦】