版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2022-6-141頁第4章 用例和用例圖一個(gè)系統(tǒng)的初始階段是從獲得需求開始的。一旦需求確定了,就可以在問題說明中確定用例。本章說明了如何從問題說明中提取用例以及如何建立用例圖模型。2022-6-142頁用例:基于用戶目標(biāo)的需求組織形式 立足開發(fā)者視角(銀行取款)系統(tǒng)要求用戶輸入合法的密碼系統(tǒng)能夠接受用戶錄入的取款金額系統(tǒng)能夠從帳戶中扣除取款金額系統(tǒng)允許選擇“打印數(shù)據(jù)” 或者 “不打印數(shù)據(jù)”系統(tǒng)能夠顯示交易結(jié)束信息2022-6-143頁4.1 識(shí)別用例圖用例圖最重要的作用是使最終用戶和開發(fā)者之間進(jìn)行交流。在開發(fā)的初始階段,通過確定系統(tǒng)的參與者和主要用例來建立用例圖。在細(xì)化階段,把更多的詳細(xì)信息
2、加入到已確定的用例中,用例模型將越來越成熟。2022-6-144頁4.1 識(shí)別用例圖建立一個(gè)系統(tǒng)的用例圖通常是開發(fā)過程中一個(gè)困難的部分。建立一個(gè)用例圖包括以下步驟:定義系統(tǒng)。確定參與者和用例。描述用例。定義用例和參與者之間的關(guān)系。定義用例之間的關(guān)系。2022-6-145頁4.1 識(shí)別用例圖客戶和開發(fā)者通過用例圖達(dá)成共識(shí),用例圖包括以下幾個(gè)內(nèi)容:誰將與系統(tǒng)交互。(參與者)系統(tǒng)將做什么。(用例)需要什么接口。(關(guān)系)2022-6-146頁4.2 用例圖組件一、參與者(Actor) :參與者代表的是與系統(tǒng)交互的任何人或任何事物。參與者是外部的,不是系統(tǒng)的組成部分,但如果要使用或支持參與者,則需要一個(gè)
3、接口。An Actor defines a coherent set of roles that users of use cases play when interacting with use cases. An actor has one role for each use case with which it communicates.2022-6-147頁4.2 用例圖組件一、參與者:參與者用于表示使用系統(tǒng)的對(duì)象,參與者可以是一個(gè)人或者一個(gè)系統(tǒng)。參與者由一個(gè)固定的圖形表示,并在圖形下面列出參與者的名字。管理員2022-6-148頁4.2 用例圖組件 每個(gè)參與者的名稱要反映參與者的角色
4、,而不是它的功能或它的實(shí)例,所以給參與者提供一個(gè)最能描述其功能的合適名稱是非常重要的。并且我們要避免為代表人的參與者起一個(gè)實(shí)際人名。如:參與者張三是個(gè)“教師”,是他所扮演的角色。如果命名為 “張三”就不對(duì)了。2022-6-149頁4.2 用例圖組件參與者如何確定?可以通過以下一些問題來幫助你確定參與者:誰使用系統(tǒng)的主要功能?誰從系統(tǒng)獲取信息?誰支持和維護(hù)系統(tǒng)?誰需要系統(tǒng)的支持以履行他們的日常職責(zé)?在組織里這個(gè)系統(tǒng)被用到哪里?與系統(tǒng)交互的是哪些硬件設(shè)備?與這個(gè)系統(tǒng)交互的其他系統(tǒng)是哪些?2022-6-1410頁4.2 用例圖組件二、用例(Use Case) The specification of
5、 a sequence of actions, including variants, that a system (or other entity) can perform, interacting with actors of the system. A use case is a coherent unit of functionality provided by a system, a subsystem, or a class as manifested by sequences of messages exchanged among the system and one or mo
6、re outside interactors (called actors) together with actions performed by the system.2022-6-1411頁4.2 用例圖組件用例簡(jiǎn)介用例對(duì)參與者和系統(tǒng)之間的交互建立模型。它是通過參與者調(diào)用功能來啟動(dòng)的,這將會(huì)產(chǎn)生一個(gè)可視化的結(jié)果。一個(gè)用例產(chǎn)生的結(jié)果必須是一個(gè)給系統(tǒng)用戶的特定值。用例的功能和結(jié)果必須是一個(gè)完整且有意義的事件流。它闡明了系統(tǒng)提供給參與者的功能。2022-6-1412頁4.2 用例圖組件用例的名稱用例通常具有名稱,該名稱通常簡(jiǎn)要地描述了用例的功能。用例名稱通常以一個(gè)動(dòng)詞開始,常用動(dòng)賓結(jié)構(gòu)表示。用例
7、名稱顯示在用例圖標(biāo)下面或者圖標(biāo)里面。登 記 課程2022-6-1413頁4.2 用例圖組件用例的大小對(duì)于用例的具體大小沒有明確的規(guī)定。但一個(gè)用例應(yīng)該包含一項(xiàng)主要功能,這項(xiàng)功能應(yīng)該是完整的,是有始有終的。如:“轉(zhuǎn)帳”就是一個(gè)用例,而“驗(yàn)證密碼”一般不看成是一個(gè)用例。2022-6-1414頁4.2 用例圖組件用例的文檔化一旦決定了每個(gè)用例將做什么和誰將調(diào)用它,就應(yīng)該寫一個(gè)簡(jiǎn)短的文本來描述這一點(diǎn)。這段描述在開發(fā)過程的初始階段完成,它應(yīng)該以一些句子說明用例的目的,還應(yīng)該說明用例提供的功能的高層次定義。2022-6-1415頁4.2 用例圖組件識(shí)別用例的方法使用已經(jīng)定義的參與者來識(shí)別用例。對(duì)于每個(gè)參與者
8、,都需要回答一系列問題:參與者需要哪些功能?參與者需要什么支持?參與者如何與系統(tǒng)信息交互?用例必須一直與至少一個(gè)參與者相關(guān)聯(lián)。2022-6-1416頁4.3 用例關(guān)系用例之間的關(guān)系用例與用例之間有三種關(guān)系:包含關(guān)系(include):當(dāng)一個(gè)用例一直使用另一個(gè)用例時(shí)就確定為包含關(guān)系。擴(kuò)展關(guān)系(extend):當(dāng)一個(gè)用例可能使用另一個(gè)用例時(shí)就為擴(kuò)展關(guān)系。泛化關(guān)系(generalization):一個(gè)用例是另一個(gè)用例的一種,就是一個(gè)泛化關(guān)系。2022-6-1417頁4.3 用例關(guān)系1. 包含關(guān)系包含關(guān)系是指用例可以簡(jiǎn)單地包含其它用例具有的行為,并把它所包含的用例行為作為自身行為的一部分。An inc
9、lude relationship from use case A to use case B indicates that an instance of the use case A will also include the behavior as specified by B. The behavior is included at the location which defined in A.在UML中,包含關(guān)系是通過帶箭頭的虛線段加構(gòu)造型來表示的,箭頭由基礎(chǔ)用例指向被包含用例。2022-6-1418頁4.3 用例關(guān)系2. 擴(kuò)展關(guān)系在一定條件下,把新的行為加入到已有的用例中,獲得的新
10、用例稱為擴(kuò)展用例,原有的用例稱為基礎(chǔ)用例,從擴(kuò)展用例到基礎(chǔ)用例的關(guān)系就是擴(kuò)展關(guān)系。 An extend relationship from use case A to use case B indicates that an instance of use case B may be extended by the behavior specified by A. 在UML中,擴(kuò)展關(guān)系是通過帶箭頭的虛線段加構(gòu)造型來表示的,箭頭由擴(kuò)展用例指向基礎(chǔ)用例。2022-6-1419頁4.3 用例關(guān)系Library use cases including borrowing a book, returni
11、ng a borrowed book, and paying a library fine2022-6-1420頁4.3 用例關(guān)系3. 泛化關(guān)系用例的泛化關(guān)系指的是一個(gè)父用例可以被特化為多個(gè)子用例,而父用例和子用例之間的關(guān)系就是泛化關(guān)系。A generalization from use case A to use case B indicates that A is a specialization of B.在UML中,用例的泛化關(guān)系是通過一個(gè)從子用例指向父用例的三角箭頭表示的,如右圖所示。訂票網(wǎng)上訂票電話訂票2022-6-1421頁例1 建立項(xiàng)目與資源管理系統(tǒng)的Use case圖 系統(tǒng)的
12、主要功能是:項(xiàng)目管理,資源管理和系系統(tǒng)的主要功能是:項(xiàng)目管理,資源管理和系統(tǒng)管理。項(xiàng)目管理包括項(xiàng)目的增加、刪除、更統(tǒng)管理。項(xiàng)目管理包括項(xiàng)目的增加、刪除、更新。資源管理包括對(duì)資源和技能的添加、刪除新。資源管理包括對(duì)資源和技能的添加、刪除和更新。系統(tǒng)管理包括系統(tǒng)的啟動(dòng)和關(guān)閉,數(shù)和更新。系統(tǒng)管理包括系統(tǒng)的啟動(dòng)和關(guān)閉,數(shù)據(jù)的存儲(chǔ)和備份等功能。據(jù)的存儲(chǔ)和備份等功能。2022-6-1422頁4.4 書寫用例文檔用例描述:用例名稱:取款前置條件:基本路徑:(1) 客戶將卡插入ATM機(jī),開始用例。(2) ATM顯示歡迎消息并提示客戶輸入密碼。(3) 客戶輸入密碼。(4)ATM確認(rèn)密碼有效。如果無效則執(zhí)行子事件
13、流a。(5) ATM提供以下選項(xiàng):存錢,取錢,查詢。(6) 用戶選擇取錢選項(xiàng)。(7) ATM提示輸入所取金額。(8) 用戶輸入所取金額。(9) ATM確定該帳戶是否有足夠的金額。如果余額不夠,則執(zhí)行子事件流b。2022-6-1423頁4.4 書寫用例文檔(10) ATM從客戶帳戶中減去所取金額。 (11) ATM向客戶提供要取的錢。(12) ATM打印清單。ATM退出客戶的卡,用例結(jié)束。子事件流a:a1 提示用戶輸入無效密碼,請(qǐng)求再次輸入;a2 如果三次輸入無效密碼,系統(tǒng)自動(dòng)關(guān)閉,退出客戶銀行卡。子事件流b:b1 提示用戶余額不夠。b2 返回(5),等待客戶重新選擇。后置條件:結(jié)束取款事件。2
14、022-6-1424頁4.4 書寫用例文檔前置后置條件(起點(diǎn)與終點(diǎn)) 前置條件:開始用例前所必需的系統(tǒng)及其環(huán)境條件。 注:前置條件必須是系統(tǒng)在用例開始前能檢測(cè)到的。 后置條件:用例成功后系統(tǒng)應(yīng)該具備的狀態(tài)。2022-6-1425頁4.4 書寫用例文檔前置后置條件2022-6-1426頁4.4 書寫用例文檔前置后置條件ATM自動(dòng)取款機(jī)的取款用例的前置條件? ATM用戶的帳戶里有足夠的金額2022-6-1427頁4.4 書寫用例文檔基本路徑描述 1.使用主動(dòng)語言 2.句子必須以參與者或者系統(tǒng)做主語 3.每一句都要朝目標(biāo)邁進(jìn) 4.只書寫“可觀測(cè)的” 5.不要涉及界面細(xì)節(jié) 2022-6-1428頁4.
15、4 書寫用例文檔使用主動(dòng)語言 1.歐文從貝克漢姆處得到傳球,守門員. 2.貝克漢姆傳球給歐文,歐文射門,守門員撲救. 3.用戶名和密碼被驗(yàn)證 4.系統(tǒng)驗(yàn)證用戶名和密碼 2022-6-1429頁4.4 書寫用例文檔每一句都要朝目標(biāo)邁進(jìn) 參與者填寫姓名 參與者填寫電話 參與者填寫聯(lián)系地址 參與者提交2022-6-1430頁4.4 書寫用例文檔句子必須以參與者或者系統(tǒng)做主語 參與者. 系統(tǒng).2022-6-1431頁4.4 書寫用例文檔只書寫“可觀測(cè)的” 系統(tǒng)通過ADO建立數(shù)據(jù)庫(kù)連接,傳送SQL查詢語句,從”零件”表查詢. 系統(tǒng)按照查詢條件搜索零件2022-6-1432頁4.4 書寫用例文檔不要涉及界
16、面細(xì)節(jié) 會(huì)員從下拉框中選擇類別 會(huì)員在相應(yīng)文本框中輸入查詢條件 會(huì)員點(diǎn)擊”確定”按鈕2022-6-1433頁4.4 書寫用例文檔用例名稱:結(jié)賬用例描述:會(huì)員完成一次與商店的交易參與者:會(huì)員前置條件:會(huì)員已經(jīng)完成選購(gòu)基本路徑:1. 會(huì)員請(qǐng)求結(jié)賬2. 系統(tǒng)檢查賬戶是否處于打開狀態(tài)3. 系統(tǒng)檢查庫(kù)存是否滿足4. 系統(tǒng)檢查會(huì)員提交的信息是否充分5. 系統(tǒng)合計(jì)訂單總價(jià)6. 系統(tǒng)顯示收費(fèi)明細(xì)7. 會(huì)員確認(rèn)8. 系統(tǒng)保存訂單信息,通知供應(yīng)商發(fā)貨,減少相應(yīng)庫(kù)存數(shù)量。2022-6-1434頁4.4 書寫用例文檔子事件流2a. 賬戶未打開2a1.系統(tǒng)顯示“賬戶未打開,不能結(jié)賬”信息3a. 庫(kù)存不能滿足3a1. 系
17、統(tǒng)顯示不能滿足庫(kù)存的訂單項(xiàng)3a2. 會(huì)員修改訂單項(xiàng)數(shù)量4a. 會(huì)員提交信息不充分4a1. 系統(tǒng)告知會(huì)員需要補(bǔ)充的信息4a2.管理訂單7a. 會(huì)員修改訂單7a1.管理訂單后置條件:把發(fā)貨信息告知供應(yīng)商發(fā)貨2022-6-1435頁4.5 工資系統(tǒng) 發(fā)掘參與者可以從發(fā)掘參與者開始定義一個(gè)用例模型。可以從確定系統(tǒng)應(yīng)做什么開始發(fā)掘參與者,這樣就可以看到與系統(tǒng)有關(guān)的一切事物。選擇參與者通常和用例中需要的抽象水平相關(guān)。最初,可以用一些參與者建立系統(tǒng)模型,而在反復(fù)設(shè)計(jì)的過程中,必須創(chuàng)建更多的參與者來建立更詳細(xì)的系統(tǒng)模型。2022-6-1436頁4.5 工資系統(tǒng)例如,應(yīng)設(shè)法在定義工資系統(tǒng)的問題描述里發(fā)掘參與者和
18、用例。2022-6-1437頁4.5 工資系統(tǒng)找出工資系統(tǒng)的參與者(1) 員工三類員工:小時(shí)工(Hourly Employee)、正式工(Salaried Employee)、臨時(shí)工(Commissioned Employee)(三種不同的參與者)(2) 工資管理員(Payroll Administrator)(3) 銀行(Bank)2022-6-1438頁4.5 工資系統(tǒng)發(fā)掘用例用例應(yīng)該描述一個(gè)完整且有意義的、貫穿系統(tǒng)的工作流。并且以參與者可觀察到的值作為結(jié)果結(jié)束。如果用例僅僅描述功能的一小部分或是不完整的功能,就應(yīng)該將它合并到其他更一般的用例中。如:Run Payroll(生成工資)是一個(gè)
19、很好的用例,而Create Paycheck用例就不是一個(gè)好的用例,它沒有包含一個(gè)完整且有意義的貫穿系統(tǒng)的工作流。它僅是Run Payroll用例的一部分,所以應(yīng)該合并。2022-6-1439頁4.5 工資系統(tǒng)除Run Payroll外,還有幾個(gè)完整的用例:Manage Time、Manage Purchase Order、Maintain Employee InformationManage Time用例提供記錄、修改、刪除和瀏覽在指定工作周內(nèi)工作時(shí)間的能力。Manage Purchase Order用例提供增加、修改、刪除和瀏覽采購(gòu)訂單的能力。Maintain Employee Infor
20、mation用例提供增加、修改、刪除和瀏覽員工信息的能力。2022-6-1440頁4.5 工資系統(tǒng)用例的描述需要簡(jiǎn)短地描述所選擇的用例,這樣就可以獲得系統(tǒng)的所有功能,還可以了解哪些用例和哪些參與者相聯(lián)系。用例描述用于說明用例是怎樣被啟動(dòng)的,還應(yīng)該明確說明用例的用途。但不必說明技術(shù)細(xì)節(jié)。2022-6-1441頁4.5 工資系統(tǒng)工資系統(tǒng)四個(gè)用例的描述:Manage Time:任何類型的員工可以啟動(dòng)這個(gè)用例,使員工可以對(duì)指定周的工作時(shí)間進(jìn)行添加、刪除或?yàn)g覽。Manage Purchase Order:這個(gè)用例是由臨時(shí)工啟動(dòng)的,它使臨時(shí)工可以對(duì)訂單進(jìn)行添加、修改或?yàn)g覽。2022-6-1442頁4.5 工資系統(tǒng)Maintain Employee Information:這個(gè)用例由工資管理員啟動(dòng),它使管理員具有對(duì)工資系統(tǒng)所需的所有員工信息進(jìn)行添加、修改、刪除或者瀏覽的權(quán)限。Run Payroll:這個(gè)用例由工資管理員啟動(dòng),它提供生成薪水的一種機(jī)制。2022-6-1443頁4.5 工資系統(tǒng)工資系統(tǒng)的用例圖在用例圖中加入?yún)⑴c者、用例、用例描述。還需要寫出每個(gè)用例的基本路徑。一個(gè)基本路徑表示了完成一個(gè)用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 渠道撈垃圾協(xié)議書
- 蘇聯(lián)?;饏f(xié)議書
- 苗木綠化協(xié)議書
- 莆田繼承協(xié)議書
- 融投資合同范本
- 視頻素材協(xié)議書
- 認(rèn)證廉政協(xié)議書
- 設(shè)備故障協(xié)議書
- 設(shè)施借用協(xié)議書
- 試吃協(xié)議書范本
- 企業(yè)機(jī)要管理制度
- T/CWAN 0068-2023銅鋁復(fù)合板
- JJG 539-2016 數(shù)字指示秤宣貫材料
- 兒童寓言故事-烏鴉喝水
- 2023年四川省普通高中學(xué)業(yè)水平合格性考試物理試題(含答案)
- 弱電系統(tǒng)維護(hù)中的安全和文明措施
- 中國(guó)高血壓防治指南修訂版解讀培訓(xùn)課件
- 2024-2025學(xué)年青海省西寧市七年級(jí)(上)期末英語試卷(含答案)
- 人教川教版三年級(jí)上冊(cè)生命生態(tài)安全全冊(cè)課件
- 后勤服務(wù)方案(技術(shù)方案)
- 學(xué)術(shù)交流英語(學(xué)術(shù)寫作)智慧樹知到期末考試答案2024年
評(píng)論
0/150
提交評(píng)論