Android 點餐系統(tǒng)體系結(jié)構(gòu)設(shè)計_第1頁
Android 點餐系統(tǒng)體系結(jié)構(gòu)設(shè)計_第2頁
Android 點餐系統(tǒng)體系結(jié)構(gòu)設(shè)計_第3頁
Android 點餐系統(tǒng)體系結(jié)構(gòu)設(shè)計_第4頁
Android 點餐系統(tǒng)體系結(jié)構(gòu)設(shè)計_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Android 點餐系統(tǒng)體系結(jié)構(gòu)設(shè)計Android 點餐系統(tǒng) 體系結(jié)構(gòu)設(shè)計Android Ordering System Architecture Design西安石油大學(xué) 計算機學(xué)院 軟件1002班何虹江 楊夢云 盛開 牛夢越2013/5/1015目錄一、文檔簡介11.1編寫目的11.2項目背景11.3參考資料2二、設(shè)計目標與原則22.1 設(shè)計目標22.1.1 業(yè)務(wù)流程22.1.2 用例分析42.2 設(shè)計原則62.2.1 包設(shè)計原則62.2.2 外部接口設(shè)計原則7三、體系結(jié)構(gòu)設(shè)計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è)計103.4 系統(tǒng)功能設(shè)計113.4.1 系統(tǒng)功能架構(gòu)113.4.2 功能模塊設(shè)計123.5 手機客戶端與服務(wù)器的交互設(shè)計14一、 文檔簡介1.1 編寫目的本文檔描述Android 點餐系統(tǒng)的設(shè)計過程, 此文檔的編寫目的是為了讓設(shè)計以及運行人員能通過該文檔以明確的軟件構(gòu)造體系設(shè)計方案規(guī)劃來實現(xiàn)軟件開發(fā)的要求,方于客戶、軟件設(shè)計人員、軟件開發(fā)人員和整合測試人員了解體系結(jié)構(gòu)具體設(shè)計方案,為其制作功能實現(xiàn)提供構(gòu)造體系提供一定方便的直接性結(jié)構(gòu)說明。本說明書的預(yù)期讀者為中間用戶(指軟件的管理人員、設(shè)計人員、開發(fā)人員、測試人員、維護人員)。1.2 項目背景 智能手機的普及已經(jīng)使得它的觸角

3、伸向了人們生活中的方方面面:聊天,購物,信息查詢以及娛樂,體現(xiàn)出了取代個人電腦的態(tài)勢。目前Android操作系統(tǒng)占據(jù)著智能手機60%的份額,并且呈不斷上升的趨勢,在這種情況下大量開發(fā)人員開始研發(fā)基于Android平臺的應(yīng)用程序,這些應(yīng)用程序更加地豐富了人們的移動生活。 隨著WLAN技術(shù)的普及,一些規(guī)模較大的酒樓餐廳開始考慮利用這種最為先進、最具時常潮流的網(wǎng)絡(luò)技術(shù)來建設(shè)一套靈活、快捷的信息管理系統(tǒng)。傳統(tǒng)的點餐方式主要是應(yīng)用PDA等手持終端為客戶點餐,當點完餐后,服務(wù)員把存儲的點餐信息發(fā)射給接收端,接收端再將點餐信息通過網(wǎng)絡(luò)傳送到前臺計算機。最后前臺計算機會對點餐信息進行分類,分發(fā)給收銀臺及廚房。

4、目前絕大部分餐廳都采用上述方式,甚至有一部分餐廳還處于手工操作方式。但其不僅要購買充足的PDA還要對服務(wù)員進行培訓(xùn),無形中是會增加很多成本,所以很多小餐館還是會采用最原始的手工操作方式點菜。正因為傳統(tǒng)點菜方式存在許多的缺點值得改進,本文決定研發(fā)基于Android平臺的點餐系統(tǒng),以此來提高餐廳工作人員的工作效率。與傳統(tǒng)的點菜方式相比,基于Android平臺的點餐系統(tǒng)有許多的優(yōu)勢,具體表現(xiàn)在如下幾個方面:(1)降低運營成本:整個點菜過程不需要服務(wù)員的參與,可由客戶自行完成,餐廳可根據(jù)需求適當縮減工作人員規(guī)模,從而有助于降低餐廳的運營成本。(2)提供工作效率:與傳統(tǒng)點菜方式相比,利用點餐系統(tǒng)可簡化整

5、個點菜流程,客戶點菜完成后可直接傳送到前臺進行下單,有助于提供工作人員的工作效率。 (3)降低出錯率:傳統(tǒng)方式均由客戶點菜,服務(wù)員進行記錄再傳送到前臺進行下單,該過程極其容易出錯,經(jīng)常出現(xiàn)點菜錯誤的情況,而基于Android平臺的點餐系統(tǒng)的點菜過程為顧客選擇,服務(wù)員下單,基本不會出現(xiàn)點菜錯誤的清況。 (4)可滿足客戶的各種需求,有助于提高餐廳的品牌形象:基于Android平臺的點餐系統(tǒng)可滿足不同客戶的需求,對于不愿意進行自助點餐的客戶,服務(wù)員可通過在自己手機上安裝點餐系統(tǒng)來協(xié)助客戶完成點餐。同時基于Android平臺的點餐系統(tǒng)的應(yīng)用,會吸引更多的年輕客戶來餐廳進行消費。 由于點餐系統(tǒng)具備上述優(yōu)

6、勢,與此同時餐廳有上述需求,因此本文的工作重點在于設(shè)計實現(xiàn)基于Android平臺的點餐系統(tǒng),并將最終實現(xiàn)的系統(tǒng)應(yīng)用到餐廳的日常點菜業(yè)務(wù)中,以便提高整個餐廳的工作效率,并創(chuàng)造更多的利潤。1.3 參考資料 1 張友生 軟件體系結(jié)構(gòu)(第2版) 北京:清華大學(xué)出版社,2006.11 2 衛(wèi)紅春 UML軟件建模教程 北京:高等教育出版社,2012.8 3 李丹 基于Android平臺的點餐系統(tǒng)的設(shè)計與實現(xiàn)D. 北京郵電大學(xué) 2012 4 童治軍 基于Android平臺的C_S結(jié)構(gòu)點餐系統(tǒng)技術(shù)研究M. 萍鄉(xiāng)高等??茖W(xué)校學(xué)報 2012年12月出版 5 羅錢江 基于IOS平臺移動點餐系統(tǒng)設(shè)計與實現(xiàn)D. 電子科

7、技大學(xué) 2010 6 Marco Bellinaso, Kevin Hoffman. ASP. NET Web高級編程M. 北京:清華大學(xué)出版二、 設(shè)計目標與原則2.1 設(shè)計目標 本節(jié)主要從業(yè)務(wù)流程分析以及用例分析兩方面對基于Android平臺的點餐系統(tǒng)的功能需求進行介紹。2.1.1 業(yè)務(wù)流程 業(yè)務(wù)流程分析的最終目的是分析現(xiàn)行系統(tǒng)中的問題,以便得到改進,同時剔除業(yè)務(wù)流程中的不合理流向,以便提高平臺的工作效率,使酒店在線訂餐管理系統(tǒng)的進行工作系統(tǒng)化、規(guī)范化和自動化。 因此做好業(yè)務(wù)流程分析是系統(tǒng)設(shè)計一個很重要的部分,一個好的業(yè)務(wù)流程分析能夠優(yōu)化系統(tǒng),降低系統(tǒng)的開發(fā)成本。 本節(jié)將從點餐系統(tǒng)總體流程以

8、及客戶端和服務(wù)端流程兩部分對點餐系統(tǒng)的業(yè)務(wù)流程進行介紹。 (1)點餐系統(tǒng)總體流程 基于Android平臺的點餐系統(tǒng)的總體流程包括如下步驟: 顧客進入餐廳,在服務(wù)員的指引下坐到對應(yīng)的餐桌: 向服務(wù)員咨詢開臺情況,并利用智能手機進行開臺操作; 顧客使用智能手機進行點菜; 在點菜完成后,顧客可能會進行加菜或退菜的操作,服務(wù)員需及時處理客戶要求; 顧客完成點菜過程之后,可在客戶端查詢已點菜單; 顧客可對已點菜單進行確認,確認完成,由服務(wù)員進行下單,即將菜單上傳到服務(wù)器,經(jīng)由前臺和廚房進行相關(guān)操作; 前臺完成對訂單的確認,并打印訂單,廚房根據(jù)訂單進行做菜; 廚房出菜的時候與前臺進行對比,防止出現(xiàn)出菜錯誤

9、的情形,然后由服務(wù)器將菜傳送到對應(yīng)餐桌; 顧客吃完飯后,到前臺進行結(jié)賬操作。根據(jù)上述分析可得到基于Android平臺的點餐系統(tǒng)的總體流程圖,具體如圖2-1所示: 圖2-1點餐系統(tǒng)流程圖 (2)點餐系統(tǒng)客戶端和服務(wù)器端流程 由基于Android平臺的點餐系統(tǒng)的特點可以知道,該系統(tǒng)由客戶端和服務(wù)器端兩部分組成,客戶端和服務(wù)器端兩部分的功能各不相同,客戶端的作用主要完成點餐系統(tǒng)總體流程中的(1)-(6)步驟,即顧客從進店到點餐完成的整個環(huán)節(jié),在此不再作詳細介紹。 服務(wù)器端的主要作用在于實現(xiàn)與數(shù)據(jù)庫的交互,完成相應(yīng)數(shù)據(jù)的增加、刪除以及修改,具體的操作流程如下所示:系統(tǒng)管理員利用正確的用戶名和密碼登錄進

10、入系統(tǒng)。管理員成功登錄進入系統(tǒng)后,可對系統(tǒng)的相關(guān)信息進行管理,具體包括訂單管理、用戶管理、菜譜管理、餐桌管理以及系統(tǒng)管理等,根據(jù)功能需要可以分離出一個公共服務(wù)層,把應(yīng)用共同訪問的業(yè)務(wù)邏輯放到公共服務(wù)層里。根據(jù)上述分析可得到基于Android平臺的點餐系統(tǒng)的服務(wù)器端的工作流程圖,具體如圖2-2所示:圖2-2點餐系統(tǒng)服務(wù)器端流程圖2.1.2 用例分析 UML屬于面對對象的建模語言,利用它來進行需求分析可清晰表達系統(tǒng)所包含的功能,最突出的特征是可以將復(fù)雜的系統(tǒng)功能以視圖的方式展示出來,以便對系統(tǒng)功能的最終實現(xiàn)進行跟蹤。本系統(tǒng)在需求分析中也使用UML建模方式。下面對點餐系統(tǒng)進行用戶分析。 (1)系統(tǒng)用

11、例圖 根據(jù)前文的業(yè)務(wù)流程分析可以知道,基于Android平臺的點餐系統(tǒng)包含五種不同的用戶類型,具體為顧客、服務(wù)員、經(jīng)理、廚師、餐廳管理者以及系統(tǒng)管理員,不同用戶擁有的功能權(quán)限是不一樣,面對每個用戶的功能權(quán)限進行介紹。 顧客:引入點餐系統(tǒng)的目的在于取代服務(wù)員的功能,因此其可以進行點菜、查看、評價以及結(jié)賬,其與服務(wù)員的區(qū)別在于不具備開臺、轉(zhuǎn)臺以及并臺等相關(guān)操作,這些權(quán)限若下放到顧客,容易造成出菜出錯,不易于管理。 服務(wù)員:首先當顧客進入餐廳時,需引導(dǎo)顧客進入對應(yīng)的餐桌就座,同時為顧客進行開臺操作,然后將餐廳提供的智能手機給顧客進行點菜操作,當點菜完成后,由服務(wù)員進行下單操作。當客戶需要更換位置時,

12、服務(wù)員需為顧客進行轉(zhuǎn)臺操作,同時還包括并臺需求。 經(jīng)理:餐廳經(jīng)理的作用在于掌握餐廳的運營情況,并根據(jù)顧客評價及時做出調(diào)整,同時還能查看餐廳的業(yè)績,并將相關(guān)營業(yè)報表打印,以便給餐廳擁有者查看,除此以外還可以查看每個員工的業(yè)績。 廚師:根據(jù)顧客的菜單做菜,查看顧客對菜譜的評價,以此作為菜品改進的方向,同時還可以查看每到菜品被點的次數(shù)。 餐廳擁有者:查看餐廳的日、月營業(yè)收入統(tǒng)計報表,查看工作人員的業(yè)績報表,并據(jù)此來調(diào)整經(jīng)營方針。 系統(tǒng)管理員:完成各項管理工作,如訂單管理、用戶管理以及菜品管理等。根據(jù)上述分析可以得到點餐系統(tǒng)的用例圖,具體如圖2-3所示:圖2-3點餐系統(tǒng)用例圖 (2)無線平臺的接口分析

13、 基于Android平臺的點餐系統(tǒng)由手機客戶端和應(yīng)用服務(wù)器兩部分組成,兩者之間需通過無線通訊來進行數(shù)據(jù)的交互,由此可知在兩者之間需提供相應(yīng)的數(shù)據(jù)接口和通訊接口。 數(shù)據(jù)接口的設(shè)計需考慮各方面的需求,首先需滿足可移植性和跨平臺的需求,為達到上述目標,本文所使用的數(shù)據(jù)格式為當前應(yīng)用較為廣泛的XML語言,并且Android平臺也支持相關(guān)XML接口協(xié)議。網(wǎng)絡(luò)數(shù)據(jù)的傳輸需要通信接口,比如GPRS, 3G的傳輸需要有硬件模塊的支持,這些硬件模塊在Android手機中己經(jīng)存在。系統(tǒng)主要采用無線聯(lián)網(wǎng)技術(shù)通信,根據(jù)上述分析得到網(wǎng)絡(luò)過程狀態(tài)圖,具體如圖2-4所示:圖2-4網(wǎng)絡(luò)過程狀態(tài)圖 系統(tǒng)詳細設(shè)計建立在需求分析的

14、基礎(chǔ)上,設(shè)計的主要目的在于確定點餐系統(tǒng)的體系結(jié)構(gòu)和功能架構(gòu),并對系統(tǒng)中各功能進行詳細設(shè)計,以此為基礎(chǔ)來實現(xiàn)系統(tǒng)功能。與此同時,為了實現(xiàn)高效率以及高可靠性的數(shù)據(jù)存儲,系統(tǒng)還對客戶端和服務(wù)器端的數(shù)據(jù)庫進行了設(shè)計。2.2 設(shè)計原則 設(shè)計實現(xiàn)基于Android平臺的點餐系統(tǒng)的目的在于為顧客和餐廳構(gòu)建一個高效的工作平臺,顧客利用此平臺可完成點菜操作,工作人員利用該平臺替代原有的工作模式,能提高工作效率。為了達到上述目的,本文在進行系統(tǒng)設(shè)計時需遵循某些基本原則,本文從包設(shè)計原則和接口原則兩部分進行介紹。2.2.1 包設(shè)計原則 包設(shè)計原則必須遵循如下幾個方面: (1)發(fā)布重用等價原則:重用的粒度就是發(fā)布的粒

15、度 一個可以重用的組件,只有在它們被某種發(fā)布系統(tǒng)管理以后才能被重用。用戶不愿意使用那些每次改動以后都要被強迫升級的組件。所以,就算開發(fā)者發(fā)布了可以重用組件的新版本,那也必須支持和維護舊版本,這樣才有時間讓用戶熟悉新版本。因此,將什么類放在一個包中的判斷標準之一就是重用,并且因為包是發(fā)布的最小單元,它們同樣也是重用的最小單元。體系結(jié)構(gòu)師應(yīng)該可將可重用的類都放在包中。 (2)共同封閉原則:一起變化的類放在一起 一個大的開發(fā)項目通常分割成很多網(wǎng)狀互聯(lián)的包。管理、測試和發(fā)布這些包的工作并不簡單。在任何一個發(fā)布的版本中,如果改動的包數(shù)量越多,那么重建、部署和測試要做的工作也越多。所以我們應(yīng)該盡量減少在產(chǎn)

16、品發(fā)布周期中被改動的包的數(shù)量,這也說明了我們要將一起變化的類放在同一個包里。 (3)共同重用原則:不一起重用的類不應(yīng)該放在一起 對一個包的依賴就是對包里面所有東西的依賴。當一個包改變時,這個包的所有使用者都必須驗證是否還能正常運行,即使它們本身沒有任何改變也不行。如果把不一起使用的類放在一起,一個無關(guān)的類的改變也產(chǎn)生包的一個新版本,就會被迫升級和驗證這個包是否影響正常的運行。 這三條原則并不能同時被滿足,因為它們是互斥的,每一條原則都只是針對了一方面,只對某一部分人有好處。REP和CRP對想重用組件的人有好處,CCP對維護人員有好處。CCP使得包有盡可能大的趨勢,因為如果所有類都屬于一個包,那

17、么勢必中會有一個包的變化,而CRP卻是盡量使用包更小。2.2.2 外部接口設(shè)計原則 外部接口在設(shè)計時需遵循如下基本原則: (1)用戶界面 在用戶界面部分,根據(jù)需求分析的結(jié)果,用戶需要一個友善的界面。在界面設(shè)計上,應(yīng)做到簡單明了,易于操作,并且要注意到界面的布局。系統(tǒng)的用戶界面應(yīng)該具有良好的人機交互特性,簡易性和易操作性。 (2)軟件接口 本系統(tǒng)需要封裝好數(shù)據(jù)庫訪問接口,以滿足系統(tǒng)對數(shù)據(jù)庫進行所有方式的訪問。除此以外還要提供對數(shù)據(jù)的備份功能。 (3)出錯處理設(shè)計 一般包括:登錄信息錯誤,轉(zhuǎn)臺錯誤和數(shù)據(jù)輸出錯誤。具體錯誤列表如表2-1:表2-1錯誤信息列表錯誤類型錯誤原因錯誤處理登錄信息錯誤用戶在

18、登錄的過程中用戶名或密碼有誤輸出錯誤語句,提示用戶重新輸入數(shù)據(jù)輸入錯誤用戶輸入的數(shù)據(jù)不符合該輸入項的域規(guī)范輸出錯誤語句,提示用戶輸入有誤操作超時用戶超過一定時間未使用系統(tǒng)輸入錯誤語句,提示用戶重新提交無響應(yīng)或操作失敗網(wǎng)絡(luò)中斷輸出錯誤語句,提示用戶檢查網(wǎng)絡(luò)情況三、 體系結(jié)構(gòu)設(shè)計3.1 系統(tǒng)物理結(jié)構(gòu)根據(jù)前文的需求分析可以知道,基于Android平臺的點餐系統(tǒng)需滿足兩種不同類型的處理需求,第一種為顧客利用手機客戶端完成點餐流程;第二種為顧客在服務(wù)員的協(xié)助下完成就餐。而目前應(yīng)用較多的架構(gòu)為C/S模式,即客戶端服務(wù)器模式,另一種為B/S模式,即瀏覽服務(wù)器模式。基于Android平臺的點餐系統(tǒng)采用的是C/

19、S和B/ S的混合模式結(jié)構(gòu),其中手機客戶端的實現(xiàn)采用的是C/S模式,而服務(wù)器端基于B/S模式進行實現(xiàn)。本系統(tǒng)的系統(tǒng)物理結(jié)構(gòu)如圖3-1所示:圖3-1點餐系統(tǒng)物理結(jié)構(gòu) 由點餐系統(tǒng)物理結(jié)構(gòu)圖3-1可以知道,餐廳提供兩臺服務(wù)器,一臺為web服務(wù)器,用于運行點餐系統(tǒng)的后臺,一臺為數(shù)據(jù)庫服務(wù)器,用于保存系統(tǒng)的數(shù)據(jù)信息。同時客戶端Android系統(tǒng)設(shè)備通過無線網(wǎng)絡(luò)訪問后臺服務(wù)器,如果需要數(shù)據(jù)訪問,則訪問后臺數(shù)據(jù)庫服務(wù)器。3.2 系統(tǒng)數(shù)據(jù)流程圖 基于Android平臺的點餐系統(tǒng)由客戶端和服務(wù)器端兩部分組成,兩部分具備的功能是不一樣,客戶端主要負責點菜,服務(wù)器端負責信息管理。本節(jié)將從客戶端數(shù)據(jù)流程和服務(wù)器端數(shù)據(jù)

20、流程兩部分對其進行介紹。3.2.1 客戶端數(shù)據(jù)流程 客戶端的基本流程如下所示: (1)用戶輸入正確的登錄憑證進入系統(tǒng),若登錄憑證不對,系統(tǒng)會自動返回到登錄頁面,提示用戶重新輸入登錄信息,直到用戶成功登錄進入系統(tǒng)。 (2)用戶成功進入系統(tǒng)后,可先進行查臺操作,若餐廳存在空余座位,可進行開臺操作。 (3)開臺完成后,用戶可進行點菜,點菜完成由服務(wù)員進行下單操作。 (4)就餐后,可進行結(jié)賬。根據(jù)上述流程可得到客戶端的數(shù)據(jù)流程圖,具體如圖3-2所示:圖3-2客戶端數(shù)據(jù)流程圖3.2.2 服務(wù)器端數(shù)據(jù)流程圖 服務(wù)器端的基本流程如下所示: (1)用戶輸入正確的登錄憑證進入系統(tǒng),若登錄憑證不對,系統(tǒng)會自動返回

21、到登錄頁面,提示用戶重新輸入登錄信息,直到用戶成功登錄進入系統(tǒng)。 (2)用戶成功進入系統(tǒng)后,可進行各類信息的管理,如餐桌信息管理、用戶信息管理、訂單管理以及菜譜管理等,其實就是對上述信息進行添加、刪除以及修改操作。為了簡化流程圖,本節(jié)以菜譜管理為例進行說明,不再將所有信息加入到流程圖中,根據(jù)上述描述可得到點餐系統(tǒng)服務(wù)器端的數(shù)據(jù)流程圖,具體如圖3-3所示:圖3-3服務(wù)器端數(shù)據(jù)流程圖3.3 類圖設(shè)計 類圖是面向?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)系。因為類圖所描述的是一種靜態(tài)關(guān)系,所以它在系統(tǒng)的整個生命周期內(nèi)都是有效的。類圖是對象圖、時序圖、協(xié)作圖、組件圖、配置圖的基礎(chǔ)。在類圖的基礎(chǔ)之上、用例圖、狀態(tài)圖、活動圖進一步描述系統(tǒng)其他方面的特性。由于本系統(tǒng)包含的類比較多,同時每個類中實現(xiàn)的方法較多,在類圖中不展示所有方法,只以重點方法為例來對其進行說明,點餐系統(tǒng)的類圖如圖3-4所示:圖3-4點餐系統(tǒng)類圖 由點餐系統(tǒng)程序類圖可以知道,首先系統(tǒng)中包含大量的類,如人員管理類、評價類以及選餐類等,同時各個類之間存在不同的關(guān)聯(lián)關(guān)系,首先人員管理類實現(xiàn)對系統(tǒng)用戶的管理,如廚師、經(jīng)理以及服務(wù)員等,其次統(tǒng)計系統(tǒng)會調(diào)用

23、收費系統(tǒng)中的方法來完成相關(guān)操作,除此以外,系統(tǒng)用戶還會調(diào)用其他類的功能,如經(jīng)理會調(diào)用打印報表類的打印方法。同時類圖中包含很多實體,如訂單,其包含屬性包括菜單名、單價以及總價等,而收費系統(tǒng)只包含一個操作即收費功能。3.4 系統(tǒng)功能設(shè)計本節(jié)主要介紹基于Android平臺的點餐系統(tǒng)的功能結(jié)構(gòu),具體從系統(tǒng)功能架構(gòu)以及模塊設(shè)計等兩部分進行說明。3.4.1 系統(tǒng)功能架構(gòu) 本節(jié)的主要工作在于明確點餐系統(tǒng)的功能模塊組成,并明確各子模塊的功能組成。它是需求分析和系統(tǒng)實現(xiàn)的橋梁,也是系統(tǒng)設(shè)計階段的最開始和最重要的階段。根據(jù)上一節(jié)的系統(tǒng)需求分析可知,基于Android平臺的點餐系統(tǒng)由登錄模塊、點餐模塊、結(jié)賬模塊、餐

24、臺管理模塊以及更新模塊等幾大模塊組成,每個模塊的作用各不相同,并且彼此之間又存在依賴關(guān)系,通過分析上述模塊之間的聯(lián)系以及系統(tǒng)需求,可得到點餐系統(tǒng)的功能架構(gòu),具體如圖3-5所示:圖3-5點餐系統(tǒng)功能架構(gòu)3.4.2 功能模塊設(shè)計 由于點餐系統(tǒng)包含兩個部分,客戶端和服務(wù)器,下面分兩部分對系統(tǒng)的功能模塊進行介紹。 (1)客戶端 根據(jù)點餐系統(tǒng)的功能架構(gòu)可以知道,客戶端包括的主要功能有登錄功能、系統(tǒng)主菜單功能、點餐功能、結(jié)賬功能、查臺功能以及更新功能等,下面對上述功能進行詳細介紹。 系統(tǒng)登錄功能 任意用戶在使用點餐系統(tǒng)前,必須提供正確的登錄憑證才能進入系統(tǒng),否則會拒絕用戶使用系統(tǒng)相關(guān)功能,對于未注冊的用戶

25、可事先進行注冊,這樣就可以提高系統(tǒng)的安全性,防止被惡意用戶使用。同時,為了讓系統(tǒng)有良好的人機交互界面,本軟件系統(tǒng)用戶界面布局應(yīng)考慮到用戶的操作,做到功能布局明顯,空間分配平衡,以及界面結(jié)構(gòu)和風格的一致。 系統(tǒng)主菜單 用戶在登錄進入點餐系統(tǒng)后,系統(tǒng)會首先將主菜單展示給用戶,如點菜以及菜譜查詢等,點擊菜單項,系統(tǒng)會自動跳轉(zhuǎn)到對應(yīng)的功能處理頁面。本軟件在進行設(shè)計時充分考慮到系統(tǒng)的簡易操作性,具有操作簡單,快捷的特點,并盡可能保證在操作上能夠與通用的一些常用軟件保持一致,以此縮短用戶對系統(tǒng)操作的理解時間。同時并且減少用戶發(fā)生錯誤選擇的可能性。 點餐功能 點餐功能是點餐系統(tǒng)中的核心功能,它主要處理用戶的

26、點餐要求,并由此生成菜單,在顧客點餐完成以及服務(wù)員下單后,系統(tǒng)會自動將生成的菜單信息傳輸?shù)角芭_服務(wù)器,由經(jīng)理和廚房進行處理。 此功能包括了三部分:開桌、點菜和下單。點菜部分的菜品展示可以按類別分開顯示,類似書籍翻頁的效果,方便顧客點菜。對提交的訂單支持修改或取消。同時,盡可能地在界面中使用能適應(yīng)用戶本身的語言,而不能是設(shè)計者的語言。在設(shè)計界面時必須要考慮到人類大腦處理信息是不穩(wěn)定并且有限度的。所以對于用戶來說,瀏覽信息要比一記憶更加容易一些。這也是符合記憶負擔最小化原則的。 結(jié)賬功能 顧客在就餐完成后可通過點擊“結(jié)賬”按鈕來向前臺提交結(jié)賬請求,具體的結(jié)賬流程如下所示:首先收銀員接收結(jié)賬請求后,

27、可根據(jù)菜單詳細列表來進行金額的計算,并以此為最終結(jié)果。由于涉及到金額,因此要求計算結(jié)果準確,同時不能出現(xiàn)數(shù)據(jù)混亂的情況,在出現(xiàn)數(shù)據(jù)庫故障的情況下,可實現(xiàn)數(shù)據(jù)的恢復(fù),防止數(shù)據(jù)丟失給餐廳帶來不必要的損失。 查臺功能 當顧客進入餐廳時,服務(wù)員需進行查臺操作,以此來確定當前餐廳是否有合適的空余座位。若沒有空余座位,則需將相關(guān)情況告知顧客,請顧客耐心等待。若有空余座位,則引導(dǎo)客戶到對應(yīng)座位就座。 更新功能 為了提高程序的運行效率,將服務(wù)器中菜品表(menutbl)和餐桌表(tabletbl)中的數(shù)據(jù)保存到客戶端SQLite數(shù)據(jù)庫中。因此,當服務(wù)器中的數(shù)據(jù)改變時需要及時將服務(wù)器中的數(shù)據(jù)動態(tài)地更新到客戶端,

28、更新功能就是為此而設(shè)計的。 (2)服務(wù)器端根據(jù)前文的分析可以知道,服務(wù)器端包括的功能有登錄功能、用戶管理、菜譜管理以及系統(tǒng)管理等,下面對上述功能進行詳細介紹,在需求分析的時候我們已經(jīng)決定使用公共服務(wù)層進行操作設(shè)計,具體構(gòu)件設(shè)計如圖3-6所示:圖3-6 公共服務(wù)層構(gòu)件圖登錄功能任意用戶進入服務(wù)器端,均需提供正確的用戶名和密碼,否則拒絕用戶進入,由于服務(wù)器中存儲著餐廳非常重要的信息,若用戶信息以及菜譜信息等,若上述信息丟失或被竊取,均會給餐廳帶來不必要的損失,由此可提高系統(tǒng)安全性。于是我們設(shè)計登錄控制器實現(xiàn)安全控制,其作用方式如圖3-7所示:圖3-7系統(tǒng)管理員登錄順序圖用戶管理用戶管理的主要作用在于實現(xiàn)用戶的添加、刪除以及修改功能。管理員進入系統(tǒng)后可對惡意用戶進行刪除,也可手動添加管理員用戶,或者修改個人信息,如密碼等。菜譜管理菜譜管理包含菜品添加、菜品刪除以及菜品修改三個部分。管理員

溫馨提示

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

評論

0/150

提交評論