




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Android 點(diǎn)餐系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)Android 點(diǎn)餐系統(tǒng) 體系結(jié)構(gòu)設(shè)計(jì)Android Ordering System Architecture Design西安石油大學(xué) 計(jì)算機(jī)學(xué)院 軟件1002班何虹江 楊夢(mèng)云 盛開(kāi) 牛夢(mèng)越2013/5/1015目錄一、文檔簡(jiǎn)介11.1編寫(xiě)目的11.2項(xiàng)目背景11.3參考資料2二、設(shè)計(jì)目標(biāo)與原則22.1 設(shè)計(jì)目標(biāo)22.1.1 業(yè)務(wù)流程22.1.2 用例分析42.2 設(shè)計(jì)原則62.2.1 包設(shè)計(jì)原則62.2.2 外部接口設(shè)計(jì)原則7三、體系結(jié)構(gòu)設(shè)計(jì)83.1 系統(tǒng)物理結(jié)構(gòu)83.2 系統(tǒng)數(shù)據(jù)流程圖83.2.1 客戶端數(shù)據(jù)流程93.2.2 服務(wù)器端數(shù)據(jù)流程圖93.3
2、 類圖設(shè)計(jì)103.4 系統(tǒng)功能設(shè)計(jì)113.4.1 系統(tǒng)功能架構(gòu)113.4.2 功能模塊設(shè)計(jì)123.5 手機(jī)客戶端與服務(wù)器的交互設(shè)計(jì)14一、 文檔簡(jiǎn)介1.1 編寫(xiě)目的本文檔描述Android 點(diǎn)餐系統(tǒng)的設(shè)計(jì)過(guò)程, 此文檔的編寫(xiě)目的是為了讓設(shè)計(jì)以及運(yùn)行人員能通過(guò)該文檔以明確的軟件構(gòu)造體系設(shè)計(jì)方案規(guī)劃來(lái)實(shí)現(xiàn)軟件開(kāi)發(fā)的要求,方于客戶、軟件設(shè)計(jì)人員、軟件開(kāi)發(fā)人員和整合測(cè)試人員了解體系結(jié)構(gòu)具體設(shè)計(jì)方案,為其制作功能實(shí)現(xiàn)提供構(gòu)造體系提供一定方便的直接性結(jié)構(gòu)說(shuō)明。本說(shuō)明書(shū)的預(yù)期讀者為中間用戶(指軟件的管理人員、設(shè)計(jì)人員、開(kāi)發(fā)人員、測(cè)試人員、維護(hù)人員)。1.2 項(xiàng)目背景 智能手機(jī)的普及已經(jīng)使得它的觸角
3、伸向了人們生活中的方方面面:聊天,購(gòu)物,信息查詢以及娛樂(lè),體現(xiàn)出了取代個(gè)人電腦的態(tài)勢(shì)。目前Android操作系統(tǒng)占據(jù)著智能手機(jī)60%的份額,并且呈不斷上升的趨勢(shì),在這種情況下大量開(kāi)發(fā)人員開(kāi)始研發(fā)基于Android平臺(tái)的應(yīng)用程序,這些應(yīng)用程序更加地豐富了人們的移動(dòng)生活。 隨著WLAN技術(shù)的普及,一些規(guī)模較大的酒樓餐廳開(kāi)始考慮利用這種最為先進(jìn)、最具時(shí)常潮流的網(wǎng)絡(luò)技術(shù)來(lái)建設(shè)一套靈活、快捷的信息管理系統(tǒng)。傳統(tǒng)的點(diǎn)餐方式主要是應(yīng)用PDA等手持終端為客戶點(diǎn)餐,當(dāng)點(diǎn)完餐后,服務(wù)員把存儲(chǔ)的點(diǎn)餐信息發(fā)射給接收端,接收端再將點(diǎn)餐信息通過(guò)網(wǎng)絡(luò)傳送到前臺(tái)計(jì)算機(jī)。最后前臺(tái)計(jì)算機(jī)會(huì)對(duì)點(diǎn)餐信息進(jìn)行分類,分發(fā)給收銀臺(tái)及廚房。
4、目前絕大部分餐廳都采用上述方式,甚至有一部分餐廳還處于手工操作方式。但其不僅要購(gòu)買(mǎi)充足的PDA還要對(duì)服務(wù)員進(jìn)行培訓(xùn),無(wú)形中是會(huì)增加很多成本,所以很多小餐館還是會(huì)采用最原始的手工操作方式點(diǎn)菜。正因?yàn)閭鹘y(tǒng)點(diǎn)菜方式存在許多的缺點(diǎn)值得改進(jìn),本文決定研發(fā)基于Android平臺(tái)的點(diǎn)餐系統(tǒng),以此來(lái)提高餐廳工作人員的工作效率。與傳統(tǒng)的點(diǎn)菜方式相比,基于Android平臺(tái)的點(diǎn)餐系統(tǒng)有許多的優(yōu)勢(shì),具體表現(xiàn)在如下幾個(gè)方面:(1)降低運(yùn)營(yíng)成本:整個(gè)點(diǎn)菜過(guò)程不需要服務(wù)員的參與,可由客戶自行完成,餐廳可根據(jù)需求適當(dāng)縮減工作人員規(guī)模,從而有助于降低餐廳的運(yùn)營(yíng)成本。(2)提供工作效率:與傳統(tǒng)點(diǎn)菜方式相比,利用點(diǎn)餐系統(tǒng)可簡(jiǎn)化整
5、個(gè)點(diǎn)菜流程,客戶點(diǎn)菜完成后可直接傳送到前臺(tái)進(jìn)行下單,有助于提供工作人員的工作效率。 (3)降低出錯(cuò)率:傳統(tǒng)方式均由客戶點(diǎn)菜,服務(wù)員進(jìn)行記錄再傳送到前臺(tái)進(jìn)行下單,該過(guò)程極其容易出錯(cuò),經(jīng)常出現(xiàn)點(diǎn)菜錯(cuò)誤的情況,而基于Android平臺(tái)的點(diǎn)餐系統(tǒng)的點(diǎn)菜過(guò)程為顧客選擇,服務(wù)員下單,基本不會(huì)出現(xiàn)點(diǎn)菜錯(cuò)誤的清況。 (4)可滿足客戶的各種需求,有助于提高餐廳的品牌形象:基于Android平臺(tái)的點(diǎn)餐系統(tǒng)可滿足不同客戶的需求,對(duì)于不愿意進(jìn)行自助點(diǎn)餐的客戶,服務(wù)員可通過(guò)在自己手機(jī)上安裝點(diǎn)餐系統(tǒng)來(lái)協(xié)助客戶完成點(diǎn)餐。同時(shí)基于Android平臺(tái)的點(diǎn)餐系統(tǒng)的應(yīng)用,會(huì)吸引更多的年輕客戶來(lái)餐廳進(jìn)行消費(fèi)。 由于點(diǎn)餐系統(tǒng)具備上述優(yōu)
6、勢(shì),與此同時(shí)餐廳有上述需求,因此本文的工作重點(diǎn)在于設(shè)計(jì)實(shí)現(xiàn)基于Android平臺(tái)的點(diǎn)餐系統(tǒng),并將最終實(shí)現(xiàn)的系統(tǒng)應(yīng)用到餐廳的日常點(diǎn)菜業(yè)務(wù)中,以便提高整個(gè)餐廳的工作效率,并創(chuàng)造更多的利潤(rùn)。1.3 參考資料 1 張友生 軟件體系結(jié)構(gòu)(第2版) 北京:清華大學(xué)出版社,2006.11 2 衛(wèi)紅春 UML軟件建模教程 北京:高等教育出版社,2012.8 3 李丹 基于Android平臺(tái)的點(diǎn)餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)D. 北京郵電大學(xué) 2012 4 童治軍 基于Android平臺(tái)的C_S結(jié)構(gòu)點(diǎn)餐系統(tǒng)技術(shù)研究M. 萍鄉(xiāng)高等??茖W(xué)校學(xué)報(bào) 2012年12月出版 5 羅錢(qián)江 基于IOS平臺(tái)移動(dòng)點(diǎn)餐系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)D. 電子科
7、技大學(xué) 2010 6 Marco Bellinaso, Kevin Hoffman. ASP. NET Web高級(jí)編程M. 北京:清華大學(xué)出版二、 設(shè)計(jì)目標(biāo)與原則2.1 設(shè)計(jì)目標(biāo) 本節(jié)主要從業(yè)務(wù)流程分析以及用例分析兩方面對(duì)基于Android平臺(tái)的點(diǎn)餐系統(tǒng)的功能需求進(jìn)行介紹。2.1.1 業(yè)務(wù)流程 業(yè)務(wù)流程分析的最終目的是分析現(xiàn)行系統(tǒng)中的問(wèn)題,以便得到改進(jìn),同時(shí)剔除業(yè)務(wù)流程中的不合理流向,以便提高平臺(tái)的工作效率,使酒店在線訂餐管理系統(tǒng)的進(jìn)行工作系統(tǒng)化、規(guī)范化和自動(dòng)化。 因此做好業(yè)務(wù)流程分析是系統(tǒng)設(shè)計(jì)一個(gè)很重要的部分,一個(gè)好的業(yè)務(wù)流程分析能夠優(yōu)化系統(tǒng),降低系統(tǒng)的開(kāi)發(fā)成本。 本節(jié)將從點(diǎn)餐系統(tǒng)總體流程以
8、及客戶端和服務(wù)端流程兩部分對(duì)點(diǎn)餐系統(tǒng)的業(yè)務(wù)流程進(jìn)行介紹。 (1)點(diǎn)餐系統(tǒng)總體流程 基于Android平臺(tái)的點(diǎn)餐系統(tǒng)的總體流程包括如下步驟: 顧客進(jìn)入餐廳,在服務(wù)員的指引下坐到對(duì)應(yīng)的餐桌: 向服務(wù)員咨詢開(kāi)臺(tái)情況,并利用智能手機(jī)進(jìn)行開(kāi)臺(tái)操作; 顧客使用智能手機(jī)進(jìn)行點(diǎn)菜; 在點(diǎn)菜完成后,顧客可能會(huì)進(jìn)行加菜或退菜的操作,服務(wù)員需及時(shí)處理客戶要求; 顧客完成點(diǎn)菜過(guò)程之后,可在客戶端查詢已點(diǎn)菜單; 顧客可對(duì)已點(diǎn)菜單進(jìn)行確認(rèn),確認(rèn)完成,由服務(wù)員進(jìn)行下單,即將菜單上傳到服務(wù)器,經(jīng)由前臺(tái)和廚房進(jìn)行相關(guān)操作; 前臺(tái)完成對(duì)訂單的確認(rèn),并打印訂單,廚房根據(jù)訂單進(jìn)行做菜; 廚房出菜的時(shí)候與前臺(tái)進(jìn)行對(duì)比,防止出現(xiàn)出菜錯(cuò)誤
9、的情形,然后由服務(wù)器將菜傳送到對(duì)應(yīng)餐桌; 顧客吃完飯后,到前臺(tái)進(jìn)行結(jié)賬操作。根據(jù)上述分析可得到基于Android平臺(tái)的點(diǎn)餐系統(tǒng)的總體流程圖,具體如圖2-1所示: 圖2-1點(diǎn)餐系統(tǒng)流程圖 (2)點(diǎn)餐系統(tǒng)客戶端和服務(wù)器端流程 由基于Android平臺(tái)的點(diǎn)餐系統(tǒng)的特點(diǎn)可以知道,該系統(tǒng)由客戶端和服務(wù)器端兩部分組成,客戶端和服務(wù)器端兩部分的功能各不相同,客戶端的作用主要完成點(diǎn)餐系統(tǒng)總體流程中的(1)-(6)步驟,即顧客從進(jìn)店到點(diǎn)餐完成的整個(gè)環(huán)節(jié),在此不再作詳細(xì)介紹。 服務(wù)器端的主要作用在于實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的交互,完成相應(yīng)數(shù)據(jù)的增加、刪除以及修改,具體的操作流程如下所示:系統(tǒng)管理員利用正確的用戶名和密碼登錄進(jìn)
10、入系統(tǒng)。管理員成功登錄進(jìn)入系統(tǒng)后,可對(duì)系統(tǒng)的相關(guān)信息進(jìn)行管理,具體包括訂單管理、用戶管理、菜譜管理、餐桌管理以及系統(tǒng)管理等,根據(jù)功能需要可以分離出一個(gè)公共服務(wù)層,把應(yīng)用共同訪問(wèn)的業(yè)務(wù)邏輯放到公共服務(wù)層里。根據(jù)上述分析可得到基于Android平臺(tái)的點(diǎn)餐系統(tǒng)的服務(wù)器端的工作流程圖,具體如圖2-2所示:圖2-2點(diǎn)餐系統(tǒng)服務(wù)器端流程圖2.1.2 用例分析 UML屬于面對(duì)對(duì)象的建模語(yǔ)言,利用它來(lái)進(jìn)行需求分析可清晰表達(dá)系統(tǒng)所包含的功能,最突出的特征是可以將復(fù)雜的系統(tǒng)功能以視圖的方式展示出來(lái),以便對(duì)系統(tǒng)功能的最終實(shí)現(xiàn)進(jìn)行跟蹤。本系統(tǒng)在需求分析中也使用UML建模方式。下面對(duì)點(diǎn)餐系統(tǒng)進(jìn)行用戶分析。 (1)系統(tǒng)用
11、例圖 根據(jù)前文的業(yè)務(wù)流程分析可以知道,基于Android平臺(tái)的點(diǎn)餐系統(tǒng)包含五種不同的用戶類型,具體為顧客、服務(wù)員、經(jīng)理、廚師、餐廳管理者以及系統(tǒng)管理員,不同用戶擁有的功能權(quán)限是不一樣,面對(duì)每個(gè)用戶的功能權(quán)限進(jìn)行介紹。 顧客:引入點(diǎn)餐系統(tǒng)的目的在于取代服務(wù)員的功能,因此其可以進(jìn)行點(diǎn)菜、查看、評(píng)價(jià)以及結(jié)賬,其與服務(wù)員的區(qū)別在于不具備開(kāi)臺(tái)、轉(zhuǎn)臺(tái)以及并臺(tái)等相關(guān)操作,這些權(quán)限若下放到顧客,容易造成出菜出錯(cuò),不易于管理。 服務(wù)員:首先當(dāng)顧客進(jìn)入餐廳時(shí),需引導(dǎo)顧客進(jìn)入對(duì)應(yīng)的餐桌就座,同時(shí)為顧客進(jìn)行開(kāi)臺(tái)操作,然后將餐廳提供的智能手機(jī)給顧客進(jìn)行點(diǎn)菜操作,當(dāng)點(diǎn)菜完成后,由服務(wù)員進(jìn)行下單操作。當(dāng)客戶需要更換位置時(shí),
12、服務(wù)員需為顧客進(jìn)行轉(zhuǎn)臺(tái)操作,同時(shí)還包括并臺(tái)需求。 經(jīng)理:餐廳經(jīng)理的作用在于掌握餐廳的運(yùn)營(yíng)情況,并根據(jù)顧客評(píng)價(jià)及時(shí)做出調(diào)整,同時(shí)還能查看餐廳的業(yè)績(jī),并將相關(guān)營(yíng)業(yè)報(bào)表打印,以便給餐廳擁有者查看,除此以外還可以查看每個(gè)員工的業(yè)績(jī)。 廚師:根據(jù)顧客的菜單做菜,查看顧客對(duì)菜譜的評(píng)價(jià),以此作為菜品改進(jìn)的方向,同時(shí)還可以查看每到菜品被點(diǎn)的次數(shù)。 餐廳擁有者:查看餐廳的日、月?tīng)I(yíng)業(yè)收入統(tǒng)計(jì)報(bào)表,查看工作人員的業(yè)績(jī)報(bào)表,并據(jù)此來(lái)調(diào)整經(jīng)營(yíng)方針。 系統(tǒng)管理員:完成各項(xiàng)管理工作,如訂單管理、用戶管理以及菜品管理等。根據(jù)上述分析可以得到點(diǎn)餐系統(tǒng)的用例圖,具體如圖2-3所示:圖2-3點(diǎn)餐系統(tǒng)用例圖 (2)無(wú)線平臺(tái)的接口分析
13、 基于Android平臺(tái)的點(diǎn)餐系統(tǒng)由手機(jī)客戶端和應(yīng)用服務(wù)器兩部分組成,兩者之間需通過(guò)無(wú)線通訊來(lái)進(jìn)行數(shù)據(jù)的交互,由此可知在兩者之間需提供相應(yīng)的數(shù)據(jù)接口和通訊接口。 數(shù)據(jù)接口的設(shè)計(jì)需考慮各方面的需求,首先需滿足可移植性和跨平臺(tái)的需求,為達(dá)到上述目標(biāo),本文所使用的數(shù)據(jù)格式為當(dāng)前應(yīng)用較為廣泛的XML語(yǔ)言,并且Android平臺(tái)也支持相關(guān)XML接口協(xié)議。網(wǎng)絡(luò)數(shù)據(jù)的傳輸需要通信接口,比如GPRS, 3G的傳輸需要有硬件模塊的支持,這些硬件模塊在Android手機(jī)中己經(jīng)存在。系統(tǒng)主要采用無(wú)線聯(lián)網(wǎng)技術(shù)通信,根據(jù)上述分析得到網(wǎng)絡(luò)過(guò)程狀態(tài)圖,具體如圖2-4所示:圖2-4網(wǎng)絡(luò)過(guò)程狀態(tài)圖 系統(tǒng)詳細(xì)設(shè)計(jì)建立在需求分析的
14、基礎(chǔ)上,設(shè)計(jì)的主要目的在于確定點(diǎn)餐系統(tǒng)的體系結(jié)構(gòu)和功能架構(gòu),并對(duì)系統(tǒng)中各功能進(jìn)行詳細(xì)設(shè)計(jì),以此為基礎(chǔ)來(lái)實(shí)現(xiàn)系統(tǒng)功能。與此同時(shí),為了實(shí)現(xiàn)高效率以及高可靠性的數(shù)據(jù)存儲(chǔ),系統(tǒng)還對(duì)客戶端和服務(wù)器端的數(shù)據(jù)庫(kù)進(jìn)行了設(shè)計(jì)。2.2 設(shè)計(jì)原則 設(shè)計(jì)實(shí)現(xiàn)基于Android平臺(tái)的點(diǎn)餐系統(tǒng)的目的在于為顧客和餐廳構(gòu)建一個(gè)高效的工作平臺(tái),顧客利用此平臺(tái)可完成點(diǎn)菜操作,工作人員利用該平臺(tái)替代原有的工作模式,能提高工作效率。為了達(dá)到上述目的,本文在進(jìn)行系統(tǒng)設(shè)計(jì)時(shí)需遵循某些基本原則,本文從包設(shè)計(jì)原則和接口原則兩部分進(jìn)行介紹。2.2.1 包設(shè)計(jì)原則 包設(shè)計(jì)原則必須遵循如下幾個(gè)方面: (1)發(fā)布重用等價(jià)原則:重用的粒度就是發(fā)布的粒
15、度 一個(gè)可以重用的組件,只有在它們被某種發(fā)布系統(tǒng)管理以后才能被重用。用戶不愿意使用那些每次改動(dòng)以后都要被強(qiáng)迫升級(jí)的組件。所以,就算開(kāi)發(fā)者發(fā)布了可以重用組件的新版本,那也必須支持和維護(hù)舊版本,這樣才有時(shí)間讓用戶熟悉新版本。因此,將什么類放在一個(gè)包中的判斷標(biāo)準(zhǔn)之一就是重用,并且因?yàn)榘前l(fā)布的最小單元,它們同樣也是重用的最小單元。體系結(jié)構(gòu)師應(yīng)該可將可重用的類都放在包中。 (2)共同封閉原則:一起變化的類放在一起 一個(gè)大的開(kāi)發(fā)項(xiàng)目通常分割成很多網(wǎng)狀互聯(lián)的包。管理、測(cè)試和發(fā)布這些包的工作并不簡(jiǎn)單。在任何一個(gè)發(fā)布的版本中,如果改動(dòng)的包數(shù)量越多,那么重建、部署和測(cè)試要做的工作也越多。所以我們應(yīng)該盡量減少在產(chǎn)
16、品發(fā)布周期中被改動(dòng)的包的數(shù)量,這也說(shuō)明了我們要將一起變化的類放在同一個(gè)包里。 (3)共同重用原則:不一起重用的類不應(yīng)該放在一起 對(duì)一個(gè)包的依賴就是對(duì)包里面所有東西的依賴。當(dāng)一個(gè)包改變時(shí),這個(gè)包的所有使用者都必須驗(yàn)證是否還能正常運(yùn)行,即使它們本身沒(méi)有任何改變也不行。如果把不一起使用的類放在一起,一個(gè)無(wú)關(guān)的類的改變也產(chǎn)生包的一個(gè)新版本,就會(huì)被迫升級(jí)和驗(yàn)證這個(gè)包是否影響正常的運(yùn)行。 這三條原則并不能同時(shí)被滿足,因?yàn)樗鼈兪腔コ獾?,每一條原則都只是針對(duì)了一方面,只對(duì)某一部分人有好處。REP和CRP對(duì)想重用組件的人有好處,CCP對(duì)維護(hù)人員有好處。CCP使得包有盡可能大的趨勢(shì),因?yàn)槿绻蓄惗紝儆谝粋€(gè)包,那
17、么勢(shì)必中會(huì)有一個(gè)包的變化,而CRP卻是盡量使用包更小。2.2.2 外部接口設(shè)計(jì)原則 外部接口在設(shè)計(jì)時(shí)需遵循如下基本原則: (1)用戶界面 在用戶界面部分,根據(jù)需求分析的結(jié)果,用戶需要一個(gè)友善的界面。在界面設(shè)計(jì)上,應(yīng)做到簡(jiǎn)單明了,易于操作,并且要注意到界面的布局。系統(tǒng)的用戶界面應(yīng)該具有良好的人機(jī)交互特性,簡(jiǎn)易性和易操作性。 (2)軟件接口 本系統(tǒng)需要封裝好數(shù)據(jù)庫(kù)訪問(wèn)接口,以滿足系統(tǒng)對(duì)數(shù)據(jù)庫(kù)進(jìn)行所有方式的訪問(wèn)。除此以外還要提供對(duì)數(shù)據(jù)的備份功能。 (3)出錯(cuò)處理設(shè)計(jì) 一般包括:登錄信息錯(cuò)誤,轉(zhuǎn)臺(tái)錯(cuò)誤和數(shù)據(jù)輸出錯(cuò)誤。具體錯(cuò)誤列表如表2-1:表2-1錯(cuò)誤信息列表錯(cuò)誤類型錯(cuò)誤原因錯(cuò)誤處理登錄信息錯(cuò)誤用戶在
18、登錄的過(guò)程中用戶名或密碼有誤輸出錯(cuò)誤語(yǔ)句,提示用戶重新輸入數(shù)據(jù)輸入錯(cuò)誤用戶輸入的數(shù)據(jù)不符合該輸入項(xiàng)的域規(guī)范輸出錯(cuò)誤語(yǔ)句,提示用戶輸入有誤操作超時(shí)用戶超過(guò)一定時(shí)間未使用系統(tǒng)輸入錯(cuò)誤語(yǔ)句,提示用戶重新提交無(wú)響應(yīng)或操作失敗網(wǎng)絡(luò)中斷輸出錯(cuò)誤語(yǔ)句,提示用戶檢查網(wǎng)絡(luò)情況三、 體系結(jié)構(gòu)設(shè)計(jì)3.1 系統(tǒng)物理結(jié)構(gòu)根據(jù)前文的需求分析可以知道,基于Android平臺(tái)的點(diǎn)餐系統(tǒng)需滿足兩種不同類型的處理需求,第一種為顧客利用手機(jī)客戶端完成點(diǎn)餐流程;第二種為顧客在服務(wù)員的協(xié)助下完成就餐。而目前應(yīng)用較多的架構(gòu)為C/S模式,即客戶端服務(wù)器模式,另一種為B/S模式,即瀏覽服務(wù)器模式。基于Android平臺(tái)的點(diǎn)餐系統(tǒng)采用的是C/
19、S和B/ S的混合模式結(jié)構(gòu),其中手機(jī)客戶端的實(shí)現(xiàn)采用的是C/S模式,而服務(wù)器端基于B/S模式進(jìn)行實(shí)現(xiàn)。本系統(tǒng)的系統(tǒng)物理結(jié)構(gòu)如圖3-1所示:圖3-1點(diǎn)餐系統(tǒng)物理結(jié)構(gòu) 由點(diǎn)餐系統(tǒng)物理結(jié)構(gòu)圖3-1可以知道,餐廳提供兩臺(tái)服務(wù)器,一臺(tái)為web服務(wù)器,用于運(yùn)行點(diǎn)餐系統(tǒng)的后臺(tái),一臺(tái)為數(shù)據(jù)庫(kù)服務(wù)器,用于保存系統(tǒng)的數(shù)據(jù)信息。同時(shí)客戶端Android系統(tǒng)設(shè)備通過(guò)無(wú)線網(wǎng)絡(luò)訪問(wèn)后臺(tái)服務(wù)器,如果需要數(shù)據(jù)訪問(wèn),則訪問(wèn)后臺(tái)數(shù)據(jù)庫(kù)服務(wù)器。3.2 系統(tǒng)數(shù)據(jù)流程圖 基于Android平臺(tái)的點(diǎn)餐系統(tǒng)由客戶端和服務(wù)器端兩部分組成,兩部分具備的功能是不一樣,客戶端主要負(fù)責(zé)點(diǎn)菜,服務(wù)器端負(fù)責(zé)信息管理。本節(jié)將從客戶端數(shù)據(jù)流程和服務(wù)器端數(shù)據(jù)
20、流程兩部分對(duì)其進(jìn)行介紹。3.2.1 客戶端數(shù)據(jù)流程 客戶端的基本流程如下所示: (1)用戶輸入正確的登錄憑證進(jìn)入系統(tǒng),若登錄憑證不對(duì),系統(tǒng)會(huì)自動(dòng)返回到登錄頁(yè)面,提示用戶重新輸入登錄信息,直到用戶成功登錄進(jìn)入系統(tǒng)。 (2)用戶成功進(jìn)入系統(tǒng)后,可先進(jìn)行查臺(tái)操作,若餐廳存在空余座位,可進(jìn)行開(kāi)臺(tái)操作。 (3)開(kāi)臺(tái)完成后,用戶可進(jìn)行點(diǎn)菜,點(diǎn)菜完成由服務(wù)員進(jìn)行下單操作。 (4)就餐后,可進(jìn)行結(jié)賬。根據(jù)上述流程可得到客戶端的數(shù)據(jù)流程圖,具體如圖3-2所示:圖3-2客戶端數(shù)據(jù)流程圖3.2.2 服務(wù)器端數(shù)據(jù)流程圖 服務(wù)器端的基本流程如下所示: (1)用戶輸入正確的登錄憑證進(jìn)入系統(tǒng),若登錄憑證不對(duì),系統(tǒng)會(huì)自動(dòng)返回
21、到登錄頁(yè)面,提示用戶重新輸入登錄信息,直到用戶成功登錄進(jìn)入系統(tǒng)。 (2)用戶成功進(jìn)入系統(tǒng)后,可進(jìn)行各類信息的管理,如餐桌信息管理、用戶信息管理、訂單管理以及菜譜管理等,其實(shí)就是對(duì)上述信息進(jìn)行添加、刪除以及修改操作。為了簡(jiǎn)化流程圖,本節(jié)以菜譜管理為例進(jìn)行說(shuō)明,不再將所有信息加入到流程圖中,根據(jù)上述描述可得到點(diǎn)餐系統(tǒng)服務(wù)器端的數(shù)據(jù)流程圖,具體如圖3-3所示:圖3-3服務(wù)器端數(shù)據(jù)流程圖3.3 類圖設(shè)計(jì) 類圖是面向?qū)ο笙到y(tǒng)建模中最常用的圖,描述的是系統(tǒng)中類的靜態(tài)結(jié)構(gòu)。類圖不僅定義了系統(tǒng)中的類、表現(xiàn)類與類之間的關(guān)聯(lián)、依賴、類屬、聚合、組合等關(guān)系,還描述了類的內(nèi)部結(jié)構(gòu),包括類的屬性和類的方法,此外,類圖還
22、描述了類集、接口集、協(xié)作以及他們之間的關(guān)系。因?yàn)轭悎D所描述的是一種靜態(tài)關(guān)系,所以它在系統(tǒng)的整個(gè)生命周期內(nèi)都是有效的。類圖是對(duì)象圖、時(shí)序圖、協(xié)作圖、組件圖、配置圖的基礎(chǔ)。在類圖的基礎(chǔ)之上、用例圖、狀態(tài)圖、活動(dòng)圖進(jìn)一步描述系統(tǒng)其他方面的特性。由于本系統(tǒng)包含的類比較多,同時(shí)每個(gè)類中實(shí)現(xiàn)的方法較多,在類圖中不展示所有方法,只以重點(diǎn)方法為例來(lái)對(duì)其進(jìn)行說(shuō)明,點(diǎn)餐系統(tǒng)的類圖如圖3-4所示:圖3-4點(diǎn)餐系統(tǒng)類圖 由點(diǎn)餐系統(tǒng)程序類圖可以知道,首先系統(tǒng)中包含大量的類,如人員管理類、評(píng)價(jià)類以及選餐類等,同時(shí)各個(gè)類之間存在不同的關(guān)聯(lián)關(guān)系,首先人員管理類實(shí)現(xiàn)對(duì)系統(tǒng)用戶的管理,如廚師、經(jīng)理以及服務(wù)員等,其次統(tǒng)計(jì)系統(tǒng)會(huì)調(diào)用
23、收費(fèi)系統(tǒng)中的方法來(lái)完成相關(guān)操作,除此以外,系統(tǒng)用戶還會(huì)調(diào)用其他類的功能,如經(jīng)理會(huì)調(diào)用打印報(bào)表類的打印方法。同時(shí)類圖中包含很多實(shí)體,如訂單,其包含屬性包括菜單名、單價(jià)以及總價(jià)等,而收費(fèi)系統(tǒng)只包含一個(gè)操作即收費(fèi)功能。3.4 系統(tǒng)功能設(shè)計(jì)本節(jié)主要介紹基于Android平臺(tái)的點(diǎn)餐系統(tǒng)的功能結(jié)構(gòu),具體從系統(tǒng)功能架構(gòu)以及模塊設(shè)計(jì)等兩部分進(jìn)行說(shuō)明。3.4.1 系統(tǒng)功能架構(gòu) 本節(jié)的主要工作在于明確點(diǎn)餐系統(tǒng)的功能模塊組成,并明確各子模塊的功能組成。它是需求分析和系統(tǒng)實(shí)現(xiàn)的橋梁,也是系統(tǒng)設(shè)計(jì)階段的最開(kāi)始和最重要的階段。根據(jù)上一節(jié)的系統(tǒng)需求分析可知,基于Android平臺(tái)的點(diǎn)餐系統(tǒng)由登錄模塊、點(diǎn)餐模塊、結(jié)賬模塊、餐
24、臺(tái)管理模塊以及更新模塊等幾大模塊組成,每個(gè)模塊的作用各不相同,并且彼此之間又存在依賴關(guān)系,通過(guò)分析上述模塊之間的聯(lián)系以及系統(tǒng)需求,可得到點(diǎn)餐系統(tǒng)的功能架構(gòu),具體如圖3-5所示:圖3-5點(diǎn)餐系統(tǒng)功能架構(gòu)3.4.2 功能模塊設(shè)計(jì) 由于點(diǎn)餐系統(tǒng)包含兩個(gè)部分,客戶端和服務(wù)器,下面分兩部分對(duì)系統(tǒng)的功能模塊進(jìn)行介紹。 (1)客戶端 根據(jù)點(diǎn)餐系統(tǒng)的功能架構(gòu)可以知道,客戶端包括的主要功能有登錄功能、系統(tǒng)主菜單功能、點(diǎn)餐功能、結(jié)賬功能、查臺(tái)功能以及更新功能等,下面對(duì)上述功能進(jìn)行詳細(xì)介紹。 系統(tǒng)登錄功能 任意用戶在使用點(diǎn)餐系統(tǒng)前,必須提供正確的登錄憑證才能進(jìn)入系統(tǒng),否則會(huì)拒絕用戶使用系統(tǒng)相關(guān)功能,對(duì)于未注冊(cè)的用戶
25、可事先進(jìn)行注冊(cè),這樣就可以提高系統(tǒng)的安全性,防止被惡意用戶使用。同時(shí),為了讓系統(tǒng)有良好的人機(jī)交互界面,本軟件系統(tǒng)用戶界面布局應(yīng)考慮到用戶的操作,做到功能布局明顯,空間分配平衡,以及界面結(jié)構(gòu)和風(fēng)格的一致。 系統(tǒng)主菜單 用戶在登錄進(jìn)入點(diǎn)餐系統(tǒng)后,系統(tǒng)會(huì)首先將主菜單展示給用戶,如點(diǎn)菜以及菜譜查詢等,點(diǎn)擊菜單項(xiàng),系統(tǒng)會(huì)自動(dòng)跳轉(zhuǎn)到對(duì)應(yīng)的功能處理頁(yè)面。本軟件在進(jìn)行設(shè)計(jì)時(shí)充分考慮到系統(tǒng)的簡(jiǎn)易操作性,具有操作簡(jiǎn)單,快捷的特點(diǎn),并盡可能保證在操作上能夠與通用的一些常用軟件保持一致,以此縮短用戶對(duì)系統(tǒng)操作的理解時(shí)間。同時(shí)并且減少用戶發(fā)生錯(cuò)誤選擇的可能性。 點(diǎn)餐功能 點(diǎn)餐功能是點(diǎn)餐系統(tǒng)中的核心功能,它主要處理用戶的
26、點(diǎn)餐要求,并由此生成菜單,在顧客點(diǎn)餐完成以及服務(wù)員下單后,系統(tǒng)會(huì)自動(dòng)將生成的菜單信息傳輸?shù)角芭_(tái)服務(wù)器,由經(jīng)理和廚房進(jìn)行處理。 此功能包括了三部分:開(kāi)桌、點(diǎn)菜和下單。點(diǎn)菜部分的菜品展示可以按類別分開(kāi)顯示,類似書(shū)籍翻頁(yè)的效果,方便顧客點(diǎn)菜。對(duì)提交的訂單支持修改或取消。同時(shí),盡可能地在界面中使用能適應(yīng)用戶本身的語(yǔ)言,而不能是設(shè)計(jì)者的語(yǔ)言。在設(shè)計(jì)界面時(shí)必須要考慮到人類大腦處理信息是不穩(wěn)定并且有限度的。所以對(duì)于用戶來(lái)說(shuō),瀏覽信息要比一記憶更加容易一些。這也是符合記憶負(fù)擔(dān)最小化原則的。 結(jié)賬功能 顧客在就餐完成后可通過(guò)點(diǎn)擊“結(jié)賬”按鈕來(lái)向前臺(tái)提交結(jié)賬請(qǐng)求,具體的結(jié)賬流程如下所示:首先收銀員接收結(jié)賬請(qǐng)求后,
27、可根據(jù)菜單詳細(xì)列表來(lái)進(jìn)行金額的計(jì)算,并以此為最終結(jié)果。由于涉及到金額,因此要求計(jì)算結(jié)果準(zhǔn)確,同時(shí)不能出現(xiàn)數(shù)據(jù)混亂的情況,在出現(xiàn)數(shù)據(jù)庫(kù)故障的情況下,可實(shí)現(xiàn)數(shù)據(jù)的恢復(fù),防止數(shù)據(jù)丟失給餐廳帶來(lái)不必要的損失。 查臺(tái)功能 當(dāng)顧客進(jìn)入餐廳時(shí),服務(wù)員需進(jìn)行查臺(tái)操作,以此來(lái)確定當(dāng)前餐廳是否有合適的空余座位。若沒(méi)有空余座位,則需將相關(guān)情況告知顧客,請(qǐng)顧客耐心等待。若有空余座位,則引導(dǎo)客戶到對(duì)應(yīng)座位就座。 更新功能 為了提高程序的運(yùn)行效率,將服務(wù)器中菜品表(menutbl)和餐桌表(tabletbl)中的數(shù)據(jù)保存到客戶端SQLite數(shù)據(jù)庫(kù)中。因此,當(dāng)服務(wù)器中的數(shù)據(jù)改變時(shí)需要及時(shí)將服務(wù)器中的數(shù)據(jù)動(dòng)態(tài)地更新到客戶端,
28、更新功能就是為此而設(shè)計(jì)的。 (2)服務(wù)器端根據(jù)前文的分析可以知道,服務(wù)器端包括的功能有登錄功能、用戶管理、菜譜管理以及系統(tǒng)管理等,下面對(duì)上述功能進(jìn)行詳細(xì)介紹,在需求分析的時(shí)候我們已經(jīng)決定使用公共服務(wù)層進(jìn)行操作設(shè)計(jì),具體構(gòu)件設(shè)計(jì)如圖3-6所示:圖3-6 公共服務(wù)層構(gòu)件圖登錄功能任意用戶進(jìn)入服務(wù)器端,均需提供正確的用戶名和密碼,否則拒絕用戶進(jìn)入,由于服務(wù)器中存儲(chǔ)著餐廳非常重要的信息,若用戶信息以及菜譜信息等,若上述信息丟失或被竊取,均會(huì)給餐廳帶來(lái)不必要的損失,由此可提高系統(tǒng)安全性。于是我們?cè)O(shè)計(jì)登錄控制器實(shí)現(xiàn)安全控制,其作用方式如圖3-7所示:圖3-7系統(tǒng)管理員登錄順序圖用戶管理用戶管理的主要作用在于實(shí)現(xiàn)用戶的添加、刪除以及修改功能。管理員進(jìn)入系統(tǒng)后可對(duì)惡意用戶進(jìn)行刪除,也可手動(dòng)添加管理員用戶,或者修改個(gè)人信息,如密碼等。菜譜管理菜譜管理包含菜品添加、菜品刪除以及菜品修改三個(gè)部分。管理員
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國(guó)陶瓷復(fù)合材料行業(yè)市場(chǎng)前景預(yù)測(cè)及投資價(jià)值評(píng)估分析報(bào)告
- 安全保衛(wèi)技師試題及答案
- 安全操作證試題及答案
- 2025年鋼紙砂盤(pán)項(xiàng)目市場(chǎng)調(diào)查研究報(bào)告
- 2025年金牌六氫異構(gòu)酒花浸膏項(xiàng)目市場(chǎng)調(diào)查研究報(bào)告
- 2025年金剛石油石項(xiàng)目市場(chǎng)調(diào)查研究報(bào)告
- 2025年酸性酵素項(xiàng)目市場(chǎng)調(diào)查研究報(bào)告
- 2025年造紙助留增強(qiáng)劑項(xiàng)目市場(chǎng)調(diào)查研究報(bào)告
- 2025年染色平絨布項(xiàng)目市場(chǎng)調(diào)查研究報(bào)告
- 商業(yè)視角下的數(shù)字孿生產(chǎn)品創(chuàng)新與迭代
- 醫(yī)藥倫理相關(guān)知識(shí)試題及答案
- 2025年中考物理模擬猜題卷3(含答案)
- 第二章城市軌道交通屏蔽門(mén)門(mén)體結(jié)構(gòu)課件
- 記錄及臺(tái)賬填寫(xiě)規(guī)范
- 《國(guó)家綜合性消防救援隊(duì)伍隊(duì)列條令(試行)》課件
- 學(xué)校食堂出入庫(kù)制度
- 中央空調(diào)安裝工程施工組織設(shè)計(jì)方案
- 中國(guó)傳統(tǒng)音樂(lè)精講知到課后答案智慧樹(shù)章節(jié)測(cè)試答案2025年春四川音樂(lè)學(xué)院
- 2025年中國(guó)航天日知識(shí)競(jìng)賽考試題庫(kù)300題(含答案)
- 《大客戶管理研究的國(guó)內(nèi)外文獻(xiàn)綜述1800字》
- 預(yù)防航空人為差錯(cuò)
評(píng)論
0/150
提交評(píng)論