• 正文
    • 1 什么是用例模型
    • 2 用例模型具體介紹
    • 3 用例模型案例:POS系統(tǒng)
    • 4 總結(jié)
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

UML用例模型與用例圖

05/27 10:30
501
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

本篇來介紹UML中的用例模型。

1 什么是用例模型

用例模型(Usecase Model)

用例模型包括:

    系統(tǒng)邊界參與者用例用例圖用例描述

用例模型是系統(tǒng)分析的結(jié)果,是系統(tǒng)設(shè)計(jì)的輸入

2 用例模型具體介紹

2.1 參與者

2.1.1 Actor簡(jiǎn)介

參與者(Actor),也有翻譯為“執(zhí)行者”,它代表位于系統(tǒng)之外并和系統(tǒng)進(jìn)行交互的一類事物,包括人、物、其它軟件子系統(tǒng)等。

通過參與者,可以:

    對(duì)系統(tǒng)軟件與外界發(fā)生的交互進(jìn)行分析和描述了解客戶希望軟件系統(tǒng)提供哪些功能

參與者有兩種圖形表示:

    參與者是人:用“小人圖”參與者是某個(gè)系統(tǒng):用方框圖,構(gòu)造型《actor》,(stereotype)

對(duì)每一類參與者要有簡(jiǎn)短描述,例如:

    學(xué)生:需要參加培訓(xùn)計(jì)劃規(guī)定的課程,并通過考核

2.1.2 如何尋找系統(tǒng)的Actor?

可以根據(jù)下面的問題來尋找Actor

    誰使用系統(tǒng)?誰安裝系統(tǒng)、維護(hù)系統(tǒng)?誰啟動(dòng)系統(tǒng)、關(guān)閉系統(tǒng)?誰從系統(tǒng)中獲取信息,誰提供信息給系統(tǒng)?在系統(tǒng)交互中,誰扮演了什么角色?系統(tǒng)會(huì)與哪些其它系統(tǒng)相關(guān)聯(lián)??jī)?nèi)/外部定時(shí)器

2.1.3 小例子:尋找Actor

學(xué)院管理系統(tǒng)的Actor有:

    用戶/學(xué)生/教師/系統(tǒng)管理員數(shù)據(jù)庫(kù)如果有子系統(tǒng)

    • 其它系統(tǒng)作為一個(gè)Actor有時(shí)數(shù)據(jù)庫(kù)可以作為一個(gè)Actor

2.2 用例

2.2.1 Usercase簡(jiǎn)介

用例(Usecase),也被翻譯為“用況”,是系統(tǒng)為響應(yīng)參與者引發(fā)的一個(gè)事件而執(zhí)行的一系列的處理/動(dòng)作,而這些處理應(yīng)該為參與者產(chǎn)生一種有價(jià)值的結(jié)果,這些動(dòng)作包括:

    正常情況的各種動(dòng)作序列非正常情況時(shí)軟件系統(tǒng)的動(dòng)作序列的描述,Exception / Alternate

每個(gè)用例都有一個(gè)名稱,注意是短小精悍的動(dòng)名詞,如

    ATM系統(tǒng),經(jīng)典的用例有:取錢、存錢、修改密碼等

2.2.2 如何尋找用例?

可以根據(jù)下面的問題來尋找Usecase:

    參與者希望系統(tǒng)提供什么功能?系統(tǒng)是否存儲(chǔ)和檢索信息?當(dāng)系統(tǒng)改變狀態(tài)時(shí),是否通知參與者?是否存在影響系統(tǒng)的外部事件,是哪個(gè)參與者通知系統(tǒng)這些外部事件?哪個(gè)參與者觸發(fā)了活動(dòng)?

2.3 用例圖

2.3.1 用例圖基本元素

用例圖包括:

    邊界:一個(gè)泛泛的概念,在圖中用一個(gè)方框表示參與者:Actor用例:Usecase關(guān)系:關(guān)聯(lián)關(guān)系

2.3.2 用例圖中的關(guān)系

參與者用例:關(guān)聯(lián)關(guān)系,實(shí)線表示

用例用例

    • include包含:ATM系統(tǒng)輸入密碼
    • extend擴(kuò)展:ATM是否要打印單據(jù)
    • 泛化:下訂單與網(wǎng)上下訂單(泛泛的概念與具體的概念)

參與者參與者(兩個(gè)小人之間:買家與顧客、銷售代理):泛化關(guān)系,實(shí)線+空心箭頭

2.4 用例描述

僅有用例圖還不夠,還需要詳盡的文字描述!這就是用例描述(Usecase description)。

用例描述包括:

    主事件流:一切正常時(shí)的動(dòng)作序列異常事件或可選事件流:主事件流的每一步都有可能出現(xiàn)異常,此處描述異常情況的處理

用例描述的格式

    總述(Summary),這個(gè)用例大概是什么功能參與者列表(Actor List),這個(gè)用例涉及到哪些參與者前置條件(Pre-condition),這個(gè)用例要想運(yùn)行,一定要滿足一些條件。TAM取錢,需要網(wǎng)絡(luò)要通,ATM里要有錢描述(Description),怎么取錢,第一步,插卡,第二步,系統(tǒng)提示,第三步,輸入密碼,第四步,驗(yàn)證密碼等等后置條件(Post-condition),用例執(zhí)行完后,系統(tǒng)應(yīng)該處于哪種狀態(tài),取錢的后置條件,取到了真的錢,同時(shí)銀行賬戶要扣掉對(duì)應(yīng)的錢,不能多扣也不能少扣異常情況(Exception),密碼輸錯(cuò),余額不足,取的錢沒吐出來

3 用例模型案例:POS系統(tǒng)

用例圖

用例描述

用例:處理銷售

    • 總述(Summary):完成一筆日常銷售的業(yè)務(wù)處理參與者列表(Actor List):顧客、收銀員、財(cái)務(wù)子系、稅金計(jì)算器...前置條件(Pre-condition):收銀員必須經(jīng)過確認(rèn)和認(rèn)證描述(Description):

      • 1)顧客s攜帶所購(gòu)商品或服務(wù)到收銀臺(tái)通過POS機(jī)付款2)收銀員開始一次新的銷售交易3)收銀員輸入商品條碼4)系統(tǒng)記錄出售的商品,顯示品名、價(jià)格、數(shù)量重復(fù)第3~4步,直到輸入結(jié)束5)系統(tǒng)顯示應(yīng)付總額6)顧客付錢,系統(tǒng)處理支付7)系統(tǒng)記錄完整的銷售信息,打印票據(jù)8)顧客攜帶商品和票價(jià)離開,銷售結(jié)束

后置條件(Post-condition):

      • 系統(tǒng)完整記錄該筆銷售業(yè)務(wù)的信息系統(tǒng)正確協(xié)同其它子系統(tǒng),確保數(shù)據(jù)一致性

異常情況(Exception):

    • 3a:無效商品ID,收銀員手工輸入,或取消該商品3b:顧客要求刪除某項(xiàng)已輸入的商品,需要經(jīng)理授權(quán),并刪除商品6a:顧客信用卡不足部分,需要現(xiàn)金支付,請(qǐng)經(jīng)理授權(quán),并接受現(xiàn)金......

4 總結(jié)

本篇介紹了UML中的用例模型,包括參與者、用例、用例圖、用例圖中的關(guān)系、用例描述等等。

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設(shè)計(jì)資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄