|
.系統(tǒng)概述 .1 酒店數(shù)據(jù)庫開發(fā)前言 隨著計算機技術(shù)的飛速發(fā)展,信息時代的到來,信息改變了我們這個社會。各類行業(yè)在日常經(jīng)營管理各個方面也在悄悄地走向規(guī)范化和網(wǎng)絡(luò)化。作為計算機及網(wǎng)絡(luò)應(yīng)用的一部分,使用計算機對客房信息進行管理,具有手工管理所無法比擬的優(yōu)點。例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高客房經(jīng)營管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。且辦事效率也是決定收入的一個關(guān)鍵因素?,F(xiàn)代化的酒店組織龐大、服務(wù)項目多、信息量大,使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式幾乎是不可能實現(xiàn)的。要想提高勞動生產(chǎn)、降低成本、提高服務(wù)質(zhì)量和管理水平,進而促進經(jīng)濟效益,必須借助計算機來對酒店客房進行現(xiàn)代化的信息管理。所以就必須建立一個合適高效的酒店客房信息的數(shù)據(jù)庫。 .2 可行性分析 現(xiàn)代化的酒店組織龐大、服務(wù)項目多、信息量大,要想提高勞動生產(chǎn)、降低成本、提高服務(wù)質(zhì)量和管理水平,進而促進經(jīng)濟效益,必須借助計算機來進行現(xiàn)代化的信息管理。一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多弊端,如:效率低、保密性差,容易出現(xiàn)差錯等,且對于查詢空房間及已定房間等極為不方便。所以在工作效率方面來說建立一個這樣的系統(tǒng)是完全可行的。 另外,客房管理系統(tǒng)是酒店經(jīng)營管理中不可缺少的部分,它的內(nèi)容對于經(jīng)營的決策者和管理者來說都至關(guān)重要,所以客房管理系統(tǒng)、信息管理系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢手段。在酒店客房管理系統(tǒng)的主要任務(wù)是對酒店的客房進行管理,使用戶能輕松地找到所需要的客房信息,提供訂房和退房服務(wù),并對酒店客房的業(yè)績進行統(tǒng)計。通常,酒店客房管理系統(tǒng)的數(shù)據(jù)庫主要記錄以下幾個方面的信息。 (1) 記錄用戶信息:對酒店客房管理系統(tǒng)的使用員工進行管理,包括對員工的基本信息(如用戶姓名、所屬部門、用戶類型等)進行檢索、錄入和修改。 (2) 記錄客房類型:用戶可自定義客房類型,并對其進行管理,包括對客房類型的基本信息(如類型名稱、面積、床位、價格等)進行檢索、錄入和修改。 (3) 記錄客房信息:用戶對客房信息進行管理,包括對客房的基本信息(如客房號、客房類型、客房位置等)進行檢索、錄入和修改。 (4) 記錄客房經(jīng)營信息:實現(xiàn)對客房的訂房和退房管理,包括對客房的業(yè)務(wù)信息(如客房號、入房時間、退房時間、金額等)進行檢索、錄入和修改。 (5) 查詢客戶信息:用戶可對入住過酒店的客戶信息進行查詢,包括對客戶的基本信息(如身份證號、客戶姓名、聯(lián)系電話)進行檢索。 (6) 統(tǒng)計經(jīng)營狀況:根據(jù)酒店客房的業(yè)務(wù)記錄,用戶可選擇不同的統(tǒng)計方式對營業(yè)額進行統(tǒng)計。 從功能描述的內(nèi)容來看,本數(shù)據(jù)庫的組成可以用下列六個方面的內(nèi)容來描述。我們根據(jù)這些組成成分,對應(yīng)的可以給出該系統(tǒng)具有的六大基本功能。系統(tǒng)的功能模塊組成如下圖: 通過以上分析可以看出要實現(xiàn)這些功能在技術(shù)上也是可行的。那些數(shù)據(jù)記錄的實現(xiàn)可以用Ms SQL Server、Access、VFP中建立一定的關(guān)系表來實現(xiàn)。我在設(shè)計這個數(shù)據(jù)庫時是在mysql的環(huán)境下實現(xiàn)的。具體實施時分為前臺部分和后臺 管理維護兩部分來設(shè)計。在建立好數(shù)據(jù)庫后,可以應(yīng)用在VB、.net、JAVA的一些應(yīng)用程序中,前臺查詢可以客房信息、為客戶辦理登記和預(yù)定信息并將其錄入到數(shù)據(jù)庫中。后臺管理員具有對數(shù)據(jù)庫修改、維護、更新等所有操作權(quán)限。所以說該系統(tǒng)的實現(xiàn)在技術(shù)上來說也是可行的。 .系統(tǒng)目標(biāo)和建設(shè)原則 .1 系統(tǒng)設(shè)計目標(biāo) 本系統(tǒng)現(xiàn)在只是在局域網(wǎng)中應(yīng)用,但是將來可以將其進行進一步的更改使其完善且可應(yīng)用于廣域網(wǎng)中,這樣就可成為網(wǎng)上預(yù)約定房系統(tǒng),可擴大經(jīng)營范圍提高酒店影響力等。對于系統(tǒng)本身可將其應(yīng)用到大、中、小等各酒店之中,來提高工作效率??傊潜局奖阌脩羰褂茫奖憬?jīng)營者管理客房,客房工作人員更快捷了解客房,客戶更方便辦理入住手續(xù)等目標(biāo)來設(shè)計的。 .2 系統(tǒng)建設(shè)原則 本數(shù)據(jù)庫在設(shè)計的過程中始終堅持以下四點基本原則: (1) 實現(xiàn)整體數(shù)據(jù)的結(jié)構(gòu)性原則。即在數(shù)據(jù)庫中的數(shù)據(jù)不在僅僅針對某一個應(yīng) 用,而是面向全組織;不僅數(shù)據(jù)內(nèi)部是結(jié)構(gòu)化的,數(shù)據(jù)之間也是具有聯(lián)系的。 (2) 盡量保持數(shù)據(jù)的共享性高,冗余度低,并且容易擴充的原則。由于設(shè)計的 數(shù)據(jù)是面對整個系統(tǒng)且有結(jié)構(gòu)的數(shù)據(jù),不僅可以被多個用戶使用,而且可以增加新的應(yīng)用,使得數(shù)據(jù)庫系統(tǒng)彈性大,易于擴充,可以適應(yīng)各種需求,用戶可以選取整體數(shù)據(jù)的各種子集用于不同的系統(tǒng),當(dāng)應(yīng)用需求改變或增加時,只要重新選取不同的子集或加上一部分數(shù)據(jù)便可以滿足新的需求。 (3) 保持數(shù)據(jù)高度獨立性的原則。數(shù)據(jù)與程序的獨立把數(shù)據(jù)的定義從程序中分離出去,加上數(shù)據(jù)的存儲又由DBMS負責(zé),從而簡化了應(yīng)用程序的編制,大大減少了應(yīng)用程序的維護和修改。 (4) 設(shè)計時必須滿足關(guān)系數(shù)據(jù)庫的三類完整性約束:實體完整性、參照完整性和用戶定義的完整性。這是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)的變化,以保證數(shù)據(jù)正確、有效、相容。 .支撐環(huán)境規(guī)劃 .1 網(wǎng)絡(luò)邏輯結(jié)構(gòu) 本系統(tǒng)基于的網(wǎng)絡(luò)邏輯結(jié)構(gòu)是三層C/S體系結(jié)構(gòu)。三層C/S結(jié)構(gòu)分為三部分:客戶、應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器。客戶:實現(xiàn)用戶界面,提供一個可視化接口來顯示信息和收集數(shù)據(jù),只與應(yīng)用服務(wù)器打交道。應(yīng)用服務(wù)器:實現(xiàn)應(yīng)用邏輯,是連接客戶與數(shù)據(jù)庫服務(wù)器的橋梁,它響應(yīng)用戶發(fā)來的請求執(zhí)行某種業(yè)務(wù)任務(wù),并與數(shù)據(jù)庫服務(wù)器打交道。在應(yīng)用過程中,該層的組件通??煞譃閮蓚€以上的層次。數(shù)據(jù)庫服務(wù)器:實現(xiàn)數(shù)據(jù)的定義、維護、訪問、更新以及管理,并響應(yīng)應(yīng)用服務(wù)器的數(shù)據(jù)請求。物理實現(xiàn)可以在某一種數(shù)據(jù)庫管理系統(tǒng)中,也可以是多個異種數(shù)據(jù)庫的集合,這種數(shù)據(jù)庫可以駐留在多種平臺上。 基于三層C/S的酒店客房管理系統(tǒng)的結(jié)構(gòu)示意圖下: .2 軟件支撐環(huán)境及開發(fā)工具 系統(tǒng)可以在Windows98以上系列操作系統(tǒng)正確運行。 系統(tǒng)開發(fā)環(huán)境及開發(fā)工具: 操作系統(tǒng):Microsoft Windows XP Professional 版本2002 Service Pack2 開發(fā)工具:mysql IDE 5.0 .系統(tǒng)總體結(jié)構(gòu) .1 總體DFD ,數(shù)據(jù)流圖可以表示現(xiàn)行系統(tǒng)的信息流動和加工處理等詳細情況,是現(xiàn)行系統(tǒng)的一種邏輯抽象,獨立于系統(tǒng)的實現(xiàn)。在系統(tǒng)的設(shè)計過程中可以根據(jù)系統(tǒng)的業(yè)務(wù)流程分別來設(shè)計數(shù)據(jù)流圖。通過對系統(tǒng)業(yè)務(wù)流程進行分析,可以初步預(yù)定系統(tǒng)的總體數(shù)據(jù)流圖如下: .2 功能結(jié)構(gòu)設(shè)計 根據(jù)題目所給要求知道該系統(tǒng)的主要具有以下幾個功能: (1)入住:就是客戶通過在酒店前臺服務(wù)員登記后直接住入自己所要求客房。 入住客房流程如下圖(1)所示。 (2)退房:就是客戶結(jié)束與該酒店之間的業(yè)務(wù)。 退房流程如下圖所示。 (3)轉(zhuǎn)房:客戶在一個房間入住一段時間后,又通過申請轉(zhuǎn)到另一間客房入住。 轉(zhuǎn)房業(yè)務(wù)如上圖(2)所示。 (4)房租:指客戶從入住到客房到退房的這個過程中,按照單價和住宿時間應(yīng)該向酒店繳納的住房費用。 (5)房間狀況:指房間內(nèi)的軟硬件狀況。 (6)房間預(yù)定:指客戶在入住之前首先與酒店聯(lián)系,繳納一定的定金后與酒店約定在將來的某個時候入住哪個或一些房間。 4.3 數(shù)據(jù)庫結(jié)構(gòu) .3.1數(shù)據(jù)字典 數(shù)據(jù)字典表達了數(shù)據(jù)和處理的關(guān)系,是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進行詳細的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要成果。數(shù)據(jù)字典的內(nèi)容將在數(shù)據(jù)庫的設(shè)計過程中不斷的修改、充實和完善。一般數(shù)據(jù)字典中包含以下幾部分的數(shù)據(jù)描述: 數(shù)據(jù)項:數(shù)據(jù)的最小單位。描述包含數(shù)據(jù)項名、含義、別名、類型、長度、取值范圍以及與其他數(shù)據(jù)項的邏輯關(guān)系。 數(shù)據(jù)結(jié)構(gòu):若干數(shù)據(jù)項有意義的集合。描述包含數(shù)據(jù)結(jié)構(gòu)名、含義說明和組成該數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)項名。 數(shù)據(jù)流:可以是數(shù)據(jù)項,更一般的情況下是數(shù)據(jù)結(jié)構(gòu),表示某一處理過程的輸入或輸出數(shù)據(jù)。描述包含數(shù)據(jù)流名、說明、從什么處理過程來,到什么處理過程去以及組成該數(shù)據(jù)流的數(shù)據(jù)結(jié)構(gòu)或數(shù)據(jù)項。 通過對本系統(tǒng)業(yè)務(wù)流程的理解分析可以建立以下數(shù)據(jù)項: 客房類型的數(shù)據(jù)項描述: 客房的數(shù)據(jù)項描述: 酒店員工的數(shù)據(jù)項描述: 客戶的數(shù)據(jù)項描述: 預(yù)定房的數(shù)據(jù)項描述: 住房情況的數(shù)據(jù)項描述: .3.2 E-R圖設(shè)計 R圖提供了表示實體型、屬性和聯(lián)系的方法。實體型用矩形表示,矩形框內(nèi)寫明實體名。屬性用橢圓形表示,并用無向邊將其與相應(yīng)的實體連接起來。聯(lián)系用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實體型連接起來,同時在無向邊旁標(biāo)上聯(lián)系的類型。如果一個聯(lián)系也具有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來。下面將要對所設(shè)計數(shù)據(jù)庫中涉及到的實體、實體屬性和實體間的聯(lián)系進行分析和設(shè)計。 (1)實體及其屬性分析 根據(jù)分析可以確定數(shù)據(jù)庫中游以下四個實體:酒店員工、客房類型、客房和客戶。其中酒店員工這個實體包含的屬性有員工編號、員工姓名、員工性別、聯(lián)系方式、所屬部門??头款愋蛯嶓w包含的屬性有類型編號、類型名稱、客房面積、床位個數(shù)、單價、條件描述??头繉嶓w包含的屬性有客房編號、類型編號、客房狀態(tài)、客房位置??蛻魧嶓w包含的屬性有證件號碼、客戶姓名、客戶性別客戶電話。 (2)分E-R圖設(shè)計 )客房類型與客房之間的關(guān)系。一間客房只能屬于一種類型,但是一種類型的客房可以有多間,它們間的實體聯(lián)系圖可以表示為: )客房與客戶之間的關(guān)系。一個客房可能同時有幾個客戶入住,但是一個客戶依次只能入住一個房間,它們間的實體聯(lián)系圖可以表示為: 3)員工與客戶之間的關(guān)系。一個員工可以為多個客戶辦理預(yù)定房手續(xù),一個客戶也可以找多個員工辦理預(yù)定房手續(xù),它們間的實體聯(lián)系圖可以表示為: (3)整體E-R設(shè)計 對于分E-R圖,它們之間往往存在沖突。合并時不能簡單的將上述的各個分E-R圖畫在一起,必須要消除各個分E-R圖中的沖突,以形成一個能為全系統(tǒng)所有用戶所共同理解和接受的統(tǒng)一的概念模型。該系統(tǒng)整體E-R圖如下: 4.3.3 關(guān)系數(shù)據(jù)庫模式 關(guān)系模型的邏輯結(jié)構(gòu)是一組關(guān)系模式的集合。將E-R圖轉(zhuǎn)換為關(guān)系模型實際上就是將實體型、實體型的屬性和實體之間的聯(lián)系轉(zhuǎn)換為一組關(guān)系模式。根據(jù)設(shè)計好的E-R圖和轉(zhuǎn)換需要遵守以下原則可以將本系統(tǒng)E-R圖轉(zhuǎn)換為以下一組關(guān)系模式,其中關(guān)系模式的碼用下橫線標(biāo)出。 酒店員工(員工編號,員工姓名,員工性別,聯(lián)系方式,所屬部門) 客房類型(類型編號,類型名稱,客房面積,床位個數(shù),單價,條件描述) 客房(客房編號,類型編號,客房狀態(tài),客房位置) 客戶(證件號碼,客戶姓名,客戶性別,客戶電話) 入住信息(客房編號,入住時間,證件號碼,退房時間,住房費用) 預(yù)定信息(員工編號,證件號碼,預(yù)定時間,客房編號) .總體實施計劃 .1 基本表的建立 根據(jù)4.3.3節(jié)中建立的關(guān)系數(shù)據(jù)庫模式可以建立一個數(shù)據(jù)庫,切概述句哭中包括了6個基本表。數(shù)據(jù)庫及基本表可以直接在SQL Server的企業(yè)管理器中建立,也可以用SQL語句在SQL Server的查詢分析器中建立。因為在SQL Server的企業(yè)管理器中建立是可視化的操作,這里就不詳述,讀者可以自己根據(jù)提示去建立。以下描述用SQL語句在SQL Server的查詢分析器中建立的方法,在建的過程中注意設(shè)置一些完整性的約束,以保持數(shù)據(jù)的一致性。 .2 關(guān)系圖設(shè)計 在建立好基本表之后,可以在企業(yè)管理器你所建的數(shù)據(jù)庫的關(guān)系圖欄目中建立6個表的關(guān)系圖如下: .3 創(chuàng)建角色 由于不用的系統(tǒng)用戶會擁有不同的權(quán)限,這樣才能保證數(shù)據(jù)庫的安全性。所以為了合理的分配權(quán)限,可以在數(shù)據(jù)庫中建立不同的角色,并授于不同的權(quán)限,再把這些角色的權(quán)限分配給用戶。在這個系統(tǒng)中我建立了兩個角色:一個相當(dāng)與管理員,他擁有對該數(shù)據(jù)庫的所有操作權(quán)限;一個相當(dāng)于酒店前臺服務(wù)員,他擁有多昂信息的查詢,為客戶處理業(yè)務(wù)(包括登記和預(yù)定)等業(yè)務(wù)。 管理員這個角色我命名為admin,賦予的權(quán)限如下: .應(yīng)用程序訪問 經(jīng)過上面的設(shè)計,進行數(shù)據(jù)庫相關(guān)的初始化后,利用JAVA語言設(shè)計出系統(tǒng)的雛形,并實現(xiàn)和設(shè)計出的數(shù)據(jù)庫互連。鑒于演示和測試,這里只實現(xiàn)功能需求中的2個模塊:員工登陸和入住登記。 選擇入住功能界面為: 輸入正確后信息,在數(shù)據(jù)庫表客戶,客房,入住登記中的數(shù)據(jù)記錄均顯示正確。 .研制報告 7.1研制過程 本次課程設(shè)計在研制的過程中,我到圖書館借閱了許多的許多參考文獻,另外還在互連網(wǎng)上下載了寫相關(guān)的資料作為參考,再結(jié)合自己的理解及和同學(xué)們的討論最終研制完成的。其中在研制的過程中,遇到的最大困難就是在于確定實體及實體間的聯(lián)系,并畫出合理的E-R圖。在和同學(xué)的討論過程中大家提出了不少意見,但都不太合理,最后是把自己的理解和同學(xué)們的意見綜合完成的。但是,老師在檢查時提了不少問題,給了不少很好的意見,最終根據(jù)老師的意見在原來的基礎(chǔ)上修改成現(xiàn)在這個數(shù)據(jù)庫。 .2系統(tǒng)的特點、不足 我認為這個系統(tǒng)的最大不足在于沒有實現(xiàn)和客戶的交互部分。因為現(xiàn)在的大型酒店隨處都有供客戶查詢信息的設(shè)備,而該系統(tǒng)中沒有設(shè)定客戶級的使用權(quán)限,所以對于大型酒店來說是不適用的。另外現(xiàn)在許多酒店都實現(xiàn)了網(wǎng)絡(luò)互聯(lián),客戶在網(wǎng)上看到有關(guān)酒店的各種信息,還可以直接在網(wǎng)上實現(xiàn)預(yù)定的業(yè)務(wù)。雖然這個系統(tǒng)存在這些不足,但它完全本次課程設(shè)計的要求,實現(xiàn)入住、退房、轉(zhuǎn)房、房租、房間狀況、房間預(yù)定等主要功能。 .3心得體會 通過此次數(shù)據(jù)庫的課程設(shè)計我感覺收獲很多。不僅僅溫故了學(xué)過的課本知識,更重要的是為我們提供了一次專業(yè)方面的實踐機會,為我們積累了實踐經(jīng)驗。數(shù)據(jù)庫可以說是一門及其重要的課程,尤其我們作為軟件工程專業(yè)的學(xué)生,因為任何一個系統(tǒng)都離不數(shù)據(jù)庫。只靠在書本上學(xué)的那點知識要來開發(fā)一個高效的數(shù)據(jù)庫是遠遠不夠的。這次課程設(shè)計為我們提供了一次實踐的好機會,提高了我們把課本所學(xué)的知識運用到實踐中來,利用所掌握的課本知識來分析解決實際問題的能力。另外,通過此次課程設(shè)計,讓我充分任務(wù)到了自己在許多方面的不足之處,使自己給以后的學(xué)習(xí)過程中不斷改進,從而取得更大的進步。
信息發(fā)布:廣州名易軟件有限公司 http://www.jetlc.com
|