uml 餐館管理信息系統(tǒng).ppt_第1頁
uml 餐館管理信息系統(tǒng).ppt_第2頁
uml 餐館管理信息系統(tǒng).ppt_第3頁
uml 餐館管理信息系統(tǒng).ppt_第4頁
uml 餐館管理信息系統(tǒng).ppt_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、,用例建模 領(lǐng)域建模 系統(tǒng)順序圖 系統(tǒng)契約 對(duì)象交互圖 設(shè)計(jì)類圖,用例建模,用例視圖應(yīng)該包含一組定義了該系統(tǒng)完整功能的用例,或者至少定義了當(dāng)前迭代所規(guī)定功能的用例 用例視圖應(yīng)該是客戶、最終用戶、領(lǐng)域?qū)<?、測試人員和任何其他涉及系統(tǒng)的人員,不需要詳細(xì)了解系統(tǒng)結(jié)構(gòu)和實(shí)現(xiàn)就容易理解的,用例建模,餐館預(yù)約系統(tǒng)的初始用例圖,用例建模,定義:是系統(tǒng)外部的一個(gè)實(shí)體,它以某種方式參與了用例的執(zhí)行過程。 參與者可以是:人擔(dān)當(dāng)?shù)慕巧?、?jì)算機(jī)系統(tǒng)、機(jī)械或者電子設(shè)備; 參與者由他們參與用例時(shí)所擔(dān)當(dāng)?shù)慕巧珌泶?,例如,顧客?一個(gè)參與者并不時(shí)指一個(gè)特定的人或一個(gè)特定的實(shí)體,參與者:代表了與系統(tǒng)交互的事物,用例建模,如何

2、寫用例,也稱之為用況,是一個(gè)描述型文檔,用來描述一個(gè)參與者(一個(gè)外部的主動(dòng)者)使用系統(tǒng)完成某個(gè)過程時(shí)的事件發(fā)生順序。 通俗而言,用例就是如何使用系統(tǒng)來達(dá)到目標(biāo)的一組情節(jié),其本質(zhì)是通過寫出多種使用系統(tǒng)的情節(jié)來發(fā)現(xiàn)和記錄功能性需求,用例建模,一個(gè)用例格式模版,主要參與者 涉眾及其興趣 前置條件 成功后的保證(后置條件) 主要成功場景(或基本流程) 擴(kuò)展(或替代流程) 特殊需求 技術(shù)與數(shù)據(jù)的變化列表,用例建模,參與者與涉眾的關(guān)系,涉眾也稱干系人,是與要建設(shè)的這個(gè)系統(tǒng)有利益相關(guān)的一切人和事,涉眾的利益要求會(huì)影響系統(tǒng)的建設(shè)。 涉眾不等于用戶。 涉眾建議并界定了系統(tǒng)必須要做的工作。用例應(yīng)該滿足包含所有涉眾

3、關(guān)注點(diǎn)的事物。,用例建模,前置條件和后置條件,前置和后置條件表示用例開始狀態(tài)和結(jié)束會(huì)發(fā)生什么 前置:規(guī)定了在用例中的一個(gè)場景開始之前必須為“真”的條件 后置:規(guī)定了在用例中的一個(gè)場景成功結(jié)束后必須為“真”的條件,這一“保證”應(yīng)該滿足 所有項(xiàng)目涉眾的需要,用例建模,事件路徑,用例描述必須定義在執(zhí)行用例時(shí)用戶和系統(tǒng)之間可能的交互 基本事件路徑:用例的主要目標(biāo)可以沒有任何問題并且不中斷地到達(dá) 可選的事件路徑:一些可選的功能會(huì)被調(diào)用 例外的事件路徑:發(fā)生錯(cuò)誤時(shí)的處理,用例建模,主要的成功場景和步驟(基本路徑),它描述了能夠滿足項(xiàng)目相關(guān)人員興趣的典型的成功路徑 參與者的交互 一個(gè)驗(yàn)證動(dòng)作 由系統(tǒng)完成的狀

4、態(tài)改變 (第一個(gè)步驟用來指示一個(gè)用來開始場景的觸發(fā)事件),Happy Path,用例建模,(1)接待員輸入要預(yù)約的日期; (2)系統(tǒng)顯示該日的預(yù)約; (3) 接待員輸入顧客的姓名和電話號(hào)碼、預(yù)約的時(shí)間、用餐人數(shù)和餐桌號(hào); (4)系統(tǒng)記錄并顯示該預(yù)約。,例:“記錄預(yù)約”基本事件路徑,一次成功的預(yù)約路徑,用例建模,可選事件路徑描述的情況,可以作為營業(yè)的一個(gè)正常部分出現(xiàn),它們并沒有指出產(chǎn)生了誤解,或者發(fā)生了錯(cuò)誤 因?yàn)橐粋€(gè)錯(cuò)誤和用戶的疏忽而不可能完成基本事件路徑,這些情況將由例外事件路徑描述,擴(kuò)展(例外/可選事件),用例建模,(1)接待員輸入要求預(yù)約的日期 (2)系統(tǒng)顯示該日的預(yù)約 (3)沒有合適的餐

5、桌可以使用,用來終止,例:“記錄預(yù)約”可選事件路徑 沒有可用的餐桌,用例建模,(1)接待員輸入要求預(yù)約的日期 (2)系統(tǒng)顯示該日的預(yù)約 (3)接待員輸入顧客的姓名和電話號(hào)碼、預(yù)約的時(shí)間、用餐人數(shù)和餐桌號(hào) (4) 輸入的預(yù)約用餐人數(shù)多于餐桌能容納的人數(shù),于是系統(tǒng)發(fā)出一個(gè)警告信息詢問用戶是否想要繼續(xù)預(yù)約 (5)如果回答“否”,用例將不進(jìn)行預(yù)約而終止 (6)如果回答“是”,預(yù)約將被輸入,并附有一個(gè)警告標(biāo)志,例:“記錄預(yù)約” 例外事件路徑 餐桌過小,用例建模,擴(kuò)展(例外/可選事件),擴(kuò)展場景是從主要成功場景中分支出來的,因此應(yīng)該遵從主要成功場景的標(biāo)記方式,(3) 接待員輸入顧客的姓名和電話號(hào)碼、預(yù)約的

6、時(shí)間、用餐人數(shù)和餐桌號(hào);,3a.沒有餐桌號(hào) 1.系統(tǒng)指示沒有餐桌號(hào),并拒絕輸入,一個(gè)擴(kuò)展以兩個(gè)部分組成: 條件和處理,擴(kuò)展,用例建模,1接待員輸入要求預(yù)約的日期 2系統(tǒng)顯示該日的預(yù)約 3接待員輸入顧客的姓名和電話號(hào)碼、預(yù)約的時(shí)間、用餐人數(shù)和餐桌號(hào) 3a沒有餐桌號(hào) 1.系統(tǒng)指示沒有餐桌號(hào),并拒絕輸入 3b.輸入的預(yù)約用餐人數(shù)多于餐桌能容納的人數(shù) 1.系統(tǒng)發(fā)出一個(gè)警告信息詢問用戶是否想要繼續(xù)預(yù)約 2. 接待員響應(yīng)該詢問 2a.取消預(yù)約 2b.繼續(xù)預(yù)約,系統(tǒng)記錄警告信息 4系統(tǒng)記錄并顯示該預(yù)約。,例:“記錄預(yù)約”完整版,用例建模,一個(gè)用例模型何時(shí)完成,用例分析是一項(xiàng)非正式的技術(shù),在一定時(shí)間之后再花時(shí)

7、間尋求對(duì)模型的改進(jìn)時(shí)會(huì)降低回報(bào) 這對(duì)包含關(guān)系和擴(kuò)展關(guān)系尤其適用,用例建模,Record booking,Cancel booking,Display bookings,Receptionist,Record arrival,Record walk-in,Staff,Table transfer,Head Waiter,完成的用例圖,用例建模,特殊要求,特殊要求:如果有一些與此用例有關(guān)的非功能需求(象質(zhì)量屬性或約束條件),那么將它們和用例記錄在一起。,在大型平板顯示器上的觸摸屏界面。文本信息要能夠在1米之外看清 90%的信用卡授權(quán)機(jī)構(gòu)的響應(yīng)應(yīng)該在30秒收到 ,用例建模,技術(shù)和數(shù)據(jù)的變化列表,技術(shù)

8、和數(shù)據(jù)的變化列表:系統(tǒng)通常有一些技術(shù)上的變化是關(guān)于“應(yīng)該怎么做”,而不是“應(yīng)該做什么”,需要在用例中將這種變化記錄下來。,“預(yù)約日期可以選擇” “顧客姓名可以選擇” “可以用條碼掃描器或鍵盤輸入商品id”,用例建模,建立一個(gè)領(lǐng)域模型 領(lǐng)域模型添加關(guān)聯(lián) 領(lǐng)域模型添加屬性,領(lǐng)域建模(概念模型),領(lǐng)域建模,領(lǐng)域模型:顯示最重要的業(yè)務(wù)概念和它們之間的關(guān)系的類圖 領(lǐng)域模型用關(guān)聯(lián)和泛化顯示了這些概念之間的關(guān)系。領(lǐng)域模型通常不包含操作,簡介,它是真實(shí)世界中各個(gè)事物的表示,而不是軟件中各構(gòu)件的表示。,領(lǐng)域建模,怎樣識(shí)別概念類?,識(shí)別概念的實(shí)用指導(dǎo)原則 最好是能夠盡量充分地用細(xì)粒度地概念來描述模型,而避免粗略描

9、述。 識(shí)別概念的方法 a、使用概念類分類列表來找出概念; b、根據(jù)名詞性短語識(shí)別出概念類;,識(shí)別與當(dāng)前設(shè)計(jì)場景相關(guān)的概念類,領(lǐng)域模型中的概念類越多越好,領(lǐng)域建模,從用例中識(shí)別概念,1、用例描述中出現(xiàn)了哪些實(shí)體? 2、用例執(zhí)行過程中會(huì)產(chǎn)生并存儲(chǔ)哪些信息? 3、用例要求與之關(guān)聯(lián)的每個(gè)角色的輸入是什么? 輸入可能是角色的屬性,也有可能是單獨(dú)的一個(gè)類。 4、用例反饋與之關(guān)聯(lián)的每個(gè)角色的輸出是什么? 首先確定該輸出的責(zé)任實(shí)體,然后進(jìn)一步確認(rèn)輸出是否需要識(shí)別為類。 5、用例需要操作哪些設(shè)備?,領(lǐng)域建模,有時(shí)很難決定是應(yīng)該將一個(gè)特殊的信息作為一個(gè)類還是作為一個(gè)屬性包含在領(lǐng)域模型中 屬性應(yīng)該是簡單的數(shù)據(jù)類型。

10、復(fù)雜的問題域概念應(yīng)該被識(shí)別為概念。,屬性還是概念?,領(lǐng)域建模,以“記錄預(yù)約”為例,(1)接待員輸入要預(yù)約的日期; (2)系統(tǒng)顯示該日的預(yù)約; (3) 接待員輸入顧客的姓名和電話號(hào)碼、預(yù)約的時(shí)間、用餐人數(shù)和餐桌號(hào); (4)系統(tǒng)記錄并顯示該預(yù)約。,候選概念類:,接待員,預(yù)約,顧客,顧客,餐桌,領(lǐng)域建模,關(guān)聯(lián),定義 關(guān)聯(lián)是類(確切的說是類的實(shí)例)之間用來指示有意義或者值得關(guān)注的一種關(guān)系,領(lǐng)域建模,關(guān)聯(lián),有用的關(guān)聯(lián) 對(duì)象之間的關(guān)系要保存一段時(shí)間的關(guān)聯(lián)(“需要記住”型關(guān)聯(lián))。,領(lǐng)域建模,關(guān)聯(lián)的UML表示法,用一條寫著關(guān)聯(lián)名稱的線段來表示兩個(gè)類之間的關(guān)聯(lián).關(guān)聯(lián)自然具有雙向性,這意味著從關(guān)聯(lián)兩端的任何一個(gè)類

11、的實(shí)例出發(fā)在邏輯上都是可以達(dá)到另一端. 關(guān)聯(lián)的每一端都可以包含一個(gè)多重性的表達(dá)式,它表示兩個(gè)類的實(shí)例之間的數(shù)量關(guān)系.,領(lǐng)域建模,角色和多重性,關(guān)聯(lián)所聯(lián)系的每一端叫做一個(gè)角色。角色可以可選的具有: 名稱 多重性表達(dá)式 導(dǎo)航,Register,sale,1,1,Records-current,角色,person,1,*,角色,manager,woker,Manage,領(lǐng)域建模,規(guī)定關(guān)聯(lián)的重?cái)?shù),每個(gè)預(yù)定是由一個(gè)顧客進(jìn)行的,這個(gè)人的姓名和電話由系統(tǒng)記錄,但是每個(gè)顧客可以進(jìn)行多個(gè)預(yù)定,Customer,Reservation,Makes,1,*,name,phoneNumber,顧客和預(yù)定建模,導(dǎo)讀箭頭

12、,關(guān)聯(lián)名,多重性,領(lǐng)域建模,領(lǐng)域建模,包含未預(yù)約的領(lǐng)域模型,術(shù)語表,預(yù)約(Booking):分配一張餐桌給一行用餐者進(jìn)餐 用餐人數(shù)(Covers):預(yù)定將來用餐的人數(shù) 顧客(Customer):進(jìn)行預(yù)定的人 用餐者(Diner):在餐館用餐的人 位子(Places):在一張?zhí)囟ú妥滥軌蚓妥挠貌驼呷藬?shù) 預(yù)定(Reservation):提前預(yù)約一個(gè)特定時(shí)間的餐桌 未預(yù)約(Walk-in):沒有提前進(jìn)行的預(yù)約,領(lǐng)域建模,定義系統(tǒng)順序圖,系統(tǒng) 順序 圖,系統(tǒng)行為,系統(tǒng)行為:在進(jìn)行系統(tǒng)邏輯設(shè)計(jì)之前,必須先調(diào)查系統(tǒng)的行為,即將系統(tǒng)看作一個(gè)黑盒子,描述系統(tǒng)要“做什么”,而不是“怎么做”。,定義系統(tǒng)行為的兩

13、種手段:系統(tǒng)順序圖和契約。,系統(tǒng) 順序 圖,什么是系統(tǒng)順序圖,系統(tǒng)順序圖:展示了一個(gè)特殊的用例場景中外部參與者發(fā)起的事件以及事件的順序和系統(tǒng)之內(nèi)的事件。 在順序圖中,所有的系統(tǒng)都被當(dāng)成黑盒子對(duì)待,順序圖的重點(diǎn)是參與者發(fā)起的跨越系統(tǒng)邊界的事件。系統(tǒng)事件,系統(tǒng) 順序 圖,為什么要繪制SSD,我們的系統(tǒng)中會(huì)發(fā)生什么事件?為什么會(huì)發(fā)生?我們應(yīng)該怎么處理? 來自于參與者的外部事件 時(shí)間事件 錯(cuò)誤或異常,系統(tǒng) 順序 圖,建立系統(tǒng)順序圖,建立系統(tǒng)順序圖要依賴于前面已經(jīng)建立起來的用例描述。 在用例說明文檔基礎(chǔ)上將系統(tǒng)看作黑盒子,整理參與者和系統(tǒng)的交互,系統(tǒng) 順序 圖,如何建立系統(tǒng)順序圖,1)將系統(tǒng)表示為一個(gè)黑

14、盒子。 2)識(shí)別出用例中所有直接對(duì)系統(tǒng)進(jìn)行操作的參與者。 3)根據(jù)用例的典型事件發(fā)生過程的描述,找出每一個(gè)參與者所發(fā)起的(外部)事件。將他們標(biāo)注在圖中。,系統(tǒng) 順序 圖,enterNewDate(date),enterNewDate(date),返回預(yù)約的描述、餐桌號(hào),時(shí)間,makeReservation(details),返回預(yù)約詳細(xì)信息,記錄預(yù)約的用例描述,系統(tǒng) 順序 圖,系統(tǒng) 順序 圖,記錄系統(tǒng)操作,記錄在類System中的所有的系統(tǒng)操作,System enterNewDate(date) makeReservation(details),系統(tǒng) 順序 圖,用操作契約增加細(xì)節(jié),系統(tǒng)行為契約

15、,契約是一個(gè)文檔,描述系統(tǒng)操作對(duì)系統(tǒng)狀態(tài)的影響,屬于系統(tǒng)行為建模的一部分。契約強(qiáng)調(diào)發(fā)生了什么而不是怎么發(fā)生。 流程: 用例描述系統(tǒng)順序圖系統(tǒng)操作契約,如何建立契約,針對(duì)每一個(gè)用例,識(shí)別出系統(tǒng)操作;針對(duì)每一個(gè)系統(tǒng)操作,書寫契約。重點(diǎn)關(guān)注契約的后置條件(實(shí)例的創(chuàng)建和銷毀、屬性的修改、關(guān)聯(lián)的創(chuàng)建和銷毀),契約段,操作:操作和參數(shù)的名稱 職責(zé):對(duì)此操作所履行的職責(zé)的非形式化描述 交叉引用:會(huì)發(fā)生此操作的用例 注釋:設(shè)計(jì)注釋、算法注釋等 異常:發(fā)生的例外情況 前置條件:在操作執(zhí)行前對(duì)系統(tǒng)狀態(tài)所做的假設(shè) 后置條件:操作執(zhí)行完成后,領(lǐng)域模型對(duì)象和系統(tǒng)的狀態(tài),定義后置條件,實(shí)用的契約后置條件分為以下三類: 1、實(shí)例的創(chuàng)建和刪除。 2、屬性的修改。 3、關(guān)聯(lián)的形成和斷開。,斷開舉例:刪除銷售商品條目的操作:“選定的SaleLineItem與Sale之間的關(guān)聯(lián)斷開了”,后置條件的表達(dá)要符合概念模型的語境,通過后置條件能發(fā)現(xiàn)概念模型遺漏的概念、屬性或關(guān)聯(lián),從而進(jìn)行補(bǔ)充。,領(lǐng)域模型,領(lǐng)域模型,系統(tǒng)行為契約系統(tǒng)操作,System enterNewDate(date) makeReservation(details),每一個(gè)系統(tǒng)操作都有一個(gè)契約,用于描述這個(gè)系統(tǒng)操作的行為,契約舉例 makeReservation,名稱: makeReservation(details) 職責(zé): 輸入一個(gè)預(yù)約信息

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論