酒店管理系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)論文
《酒店管理系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)論文》由會員分享,可在線閱讀,更多相關(guān)《酒店管理系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)論文(34頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、酒店管理系統(tǒng)的設(shè)計與實現(xiàn)摘 要本文完整的描述了一個酒店管理系統(tǒng)的設(shè)計與實現(xiàn)的過程,采用真正的跨平臺Java 技術(shù)為基礎(chǔ),利用 eclipse 編程平臺結(jié)合 sqlserver2005 數(shù)據(jù)庫,完成了酒店管理系統(tǒng)的功能?,F(xiàn)代化的賓館是集客房、餐飲、商務(wù)文化及其他各種服務(wù)與設(shè)施為一體化的消費場所,酒店賓館組織龐大,服務(wù)項目多,信息量大,要想提高勞動生產(chǎn),降低成本,提高服務(wù)質(zhì)量和管理水平,進(jìn)而促進(jìn)經(jīng)濟效益,必須借助計算機來進(jìn)行現(xiàn)代化的信息管理,本系統(tǒng)是一套適用于中、小型星級賓館使用的優(yōu)秀系統(tǒng),操作簡單,靈活性好、系統(tǒng)安全性高,運行穩(wěn)定。該酒店管理系統(tǒng),該系統(tǒng)可供用戶進(jìn)行菜系管理,菜種類查詢、臺號管理
2、以及功能強大的記賬信息管理,可以實現(xiàn)日結(jié)帳,月結(jié)帳和年結(jié)帳的功能,方便了用戶的帳務(wù)分析。用戶只需要簡單的輸入,所有數(shù)據(jù)都由數(shù)據(jù)庫管理系統(tǒng)管理。本文中數(shù)據(jù)庫服務(wù)器端采用了流行的功能強大的 SQLserver2005 作為后臺數(shù)據(jù)庫,為數(shù)據(jù)的安全和程序的穩(wěn)定運行提供了保障。關(guān)鍵詞:酒店管理系統(tǒng) JAVA SQLserver2005 Abstract This paper describes a complete hotel management system, using a true cross-platform Java technology-based and eclipse program
3、ming platform combines sqlserver2005 database. With them the autor complete hotel management system functions. The hotel is a modern guest rooms, restaurants, business culture and other types of services and facilities for the integration of entertainment establishments, hotel and hostel organized i
4、nto a vast, services and more informative, in order to improve labor productivity, reduce costs, improve service quality and management level, thus contributing to economic efficiency, have to rely on computers to carry out the modernization of information management, this system is applicable to sm
5、all and medium sized star hotel an excellent system to use, simple operation, good flexibility and high security systems, running stable. The hotel management system, which users of cuisine available to management, and food type queries, seats, powerful accounting management, and information managem
6、ent which can be achieved on checkout, month and year checkout checkout functionality to facilitate the users accounting analysis. Users need only a simple input, and all the data be computed by the database management system management. This article, the database server uses the popular and powerfu
7、l SQLserver2005 as a back-end database for data security and procedures to provide a guarantee stable operation. Keywords: Hotel Management System JAVA SQLserver2005 目 錄第一章 緒論.11.1 研發(fā)背景.11.2 系統(tǒng)目標(biāo).1第二章 系統(tǒng)分析.32.1 酒店管理系統(tǒng)可行性分析.32.2 系統(tǒng)需求分析 .3第三章 系統(tǒng)總體設(shè)計.73.1 系統(tǒng)功能結(jié)構(gòu).73.2 系統(tǒng)概念設(shè)計.73.3 數(shù)據(jù)庫表結(jié)構(gòu).9第四章 系統(tǒng)詳細(xì)設(shè)計.124.
8、1 JAVA類的設(shè)計 .124.2 酒店業(yè)務(wù)模塊.134.2.1 菜品相關(guān)信息查詢.134.2.2 用戶模塊.134.2.3 訂單信息管理模塊.144.2.4 數(shù)據(jù)庫管理模塊.14第五章 系統(tǒng)實現(xiàn).155.1 開發(fā)環(huán)境的搭建.155.1.1 JDK 簡介.155.1.2 Eclipse 簡介.155.1.3 SQL Server 2005 簡介.165.2 用戶業(yè)務(wù)的實現(xiàn).175.3 酒店管理員業(yè)務(wù) .19第六章 系統(tǒng)測試.246.1 軟件測試的方法.246.2 模塊測試.24第七章 結(jié)論.267.1 概述工作.267.2 體會與收獲.267.3 今后的發(fā)展方向.27謝 辭.28參考文獻(xiàn).29
9、引 言當(dāng)今社會,是個高科技、高效率、高度競爭的全新社會。隨著人們物質(zhì)水平的逐步提高,人們的精神生活也開始趨向豐富多彩。人們已經(jīng)不再僅僅局限于待在家中,不再把自己局限在周圍的生活圈子里。為了豐富自己的文化生活和自身娛樂,人們已經(jīng)習(xí)慣了利用假期外出旅游。各個地區(qū)的旅游業(yè)也因此出現(xiàn)了持續(xù)增長的好勢頭。這對于各地的酒店來說是一種機遇也是一種挑戰(zhàn)。商場如戰(zhàn)場,競爭十分激烈 ,在競爭中如果企業(yè)本身不能從企業(yè)內(nèi)部入手,提高自身的競爭力,就有可能被社會所淘汰。只有提高企業(yè)自身的生命力才是企業(yè)正確的發(fā)展方向。酒店部門以前那種老的運作機制已經(jīng)不能適應(yīng)當(dāng)今社會的需要,單純靠手工去進(jìn)行大量的信息處理,不但給企業(yè)本身帶
10、來很大的不便,同時也給顧客帶來很大的麻煩,造成企業(yè)耗費大量的人力、物力和時間,仍然導(dǎo)致工作效率的降低。所以,對于酒店部門來說,建立一套合理有效的管理信息系統(tǒng)迫在眉睫,這也是適應(yīng)社會發(fā)展和增強競爭力的主要手段。大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計1第一章 緒論1.1 研發(fā)背景當(dāng)今社會,因特網(wǎng)技術(shù)的飛速發(fā)展正在迅速地改變著人們的生活方式,因特網(wǎng)正在由科學(xué)工作者的工具變?yōu)槠胀ò傩斋@取信息、進(jìn)行交流的場所,而因特網(wǎng)的商業(yè)應(yīng)用則尤為引人注目。21 世紀(jì)的酒店,從內(nèi)部管理到外部銷售都將發(fā)生質(zhì)的變化。激烈的市場競爭,要求酒店引入更多、更新、更高的 IT 技術(shù),非單一的前臺管理軟件甚至傳統(tǒng)的前、后臺軟件所
11、能滿足?,F(xiàn)代化的酒店是集客房、餐飲、通訊、娛樂,商務(wù)文化及其他各種服務(wù)與設(shè)施為一體化的消費場所,酒店組織龐大,服務(wù)項目多,信息量大,要想提高勞動生產(chǎn),降低成本,提高服務(wù)質(zhì)量和管理水平,進(jìn)而促進(jìn)經(jīng)濟效益,必須借助計算機來進(jìn)行現(xiàn)代化的信息管理。 成功的酒店是將經(jīng)濟效益作為酒店的運營宗旨,管理的核心是在于如何提高經(jīng)濟效益。優(yōu)秀的酒店客房信息管理系統(tǒng)以酒店的經(jīng)濟效益為目標(biāo),為酒店管理人員和員工提供簡單易用、功能強大并高度靈活的應(yīng)用工具,激勵他們的積極性,促使他們向酒店提供更好的服務(wù)。這些改進(jìn)使賓客感到更加滿意,為酒店帶來更多的回頭客和收入。同時,通過對人流、物流、資金流的科學(xué)管理和有效控制,提高員工的
12、工作效率,降低各種經(jīng)營成本,從而獲取持久的利潤,因此酒店行業(yè)對于酒店管理系統(tǒng)的引進(jìn)勢在必行。1.2 系統(tǒng)目標(biāo)此次設(shè)計將要模擬完成建立一個酒店管理系統(tǒng)系統(tǒng),實現(xiàn)信息化。通過先進(jìn)的Java 技術(shù)實現(xiàn)前臺的智能點菜,獲取菜品,和自動結(jié)帳等功能。對于酒店管理者可以實現(xiàn)臺號管理,菜系的管理和菜品的管理,正對財務(wù)還可以實現(xiàn)日結(jié)帳報表,月結(jié)帳報表和年結(jié)帳報表等財務(wù)分析,節(jié)省了大量的勞力財力,加強了公司的現(xiàn)代化管理和高效的服務(wù)。酒店日常管理中所涉及到的大量數(shù)據(jù)都由數(shù)據(jù)庫管理系統(tǒng)管理。本文中數(shù)據(jù)庫服務(wù)器端采用了商業(yè)流行的 SQLSERVER2005 作為后臺數(shù)據(jù)庫,結(jié)合 SQL 語句強大的處理功能實現(xiàn)酒店管理中
13、各個對象的分類、添加、刪除、修改等操作,采用免費的 eclipse 編程平臺,使開發(fā)成本降到最小。經(jīng)過對酒店管理業(yè)務(wù)的具體分析,精心對相關(guān)信息的學(xué)習(xí)和在指導(dǎo)老師的指導(dǎo)下,朋友的幫助下多次改進(jìn)終于開發(fā)制作了這個酒店管理系統(tǒng),本系統(tǒng)的設(shè)計遵循軟件開發(fā)的全過程,在做需求分析的時候?qū)嶋H到酒店企業(yè)中熟悉酒店的業(yè)務(wù)流程和管理,然后概要設(shè)計,詳細(xì)設(shè)計和編碼測試。每個過程都按照軟件工程的規(guī)范進(jìn)行。本系統(tǒng)的設(shè)計中運用 Java 技術(shù)和 SQL 語言操作后臺數(shù)據(jù)庫。由于 Java 虛擬機,實現(xiàn)了各種平臺的兼容性,體現(xiàn)了良好的跨平臺特點和編程技術(shù)的優(yōu)點。該系統(tǒng)的操作界面簡潔,適合各類管理人員應(yīng)用。在安全性方面,通過
14、數(shù)據(jù)庫的權(quán)限管理和 Java 的優(yōu)秀技術(shù),實現(xiàn)系統(tǒng)的靈活性和系統(tǒng)的安全性。管理者還可以通過修改密碼來進(jìn)行用戶管理。筆大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計2者完成了酒店管理系統(tǒng)的全部制作,從需求分析到編碼測試,從概要設(shè)計到詳細(xì)設(shè)計,通過筆者的努力基本實現(xiàn)了酒店管理系統(tǒng)的基本功能,并對業(yè)務(wù)所需要信息進(jìn)行維護(hù)。本系統(tǒng)有以下特點:系統(tǒng)中模塊劃分明確,模塊功能設(shè)計有較強的針對性。系統(tǒng)操作界面簡單,靈活性好、響應(yīng)時間短,系統(tǒng)安全性高,運行穩(wěn)定。設(shè)計完全符合軟件工程中的各個階段的要求,模塊間具有高內(nèi)聚,低耦合的良好性能。大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計3第二章第二章 系統(tǒng)分析系統(tǒng)分析2.1 酒店
15、管理系統(tǒng)可行性分析2.1.1 經(jīng)濟可行性分析 模擬酒店管理系統(tǒng)的開發(fā)從長遠(yuǎn)的角度來看,投資可以完全收回,并可以節(jié)省管理費用,避免了人工填單操作所帶來的一系列不必要的麻煩,節(jié)省了用戶和相關(guān)工作人員的時間,能夠很好地提高工作效率,改進(jìn)決策質(zhì)量。同時也對酒店的靈活管理有了很大的提升,有利于提高酒店的運營和服務(wù)效率,其開發(fā)前景良好并能產(chǎn)生很好的經(jīng)濟和社會效益。本系統(tǒng)采用 Java 技術(shù)和微軟商業(yè)數(shù)據(jù)庫,在服務(wù)器端和客戶端都必須有對應(yīng)的運行環(huán)境。數(shù)據(jù)庫 SQLserver2005 也是個成熟的數(shù)據(jù)庫管理軟件,其安全性,可靠性和實用性滿足酒店管理系統(tǒng)的設(shè)計要求,估計利用現(xiàn)有技術(shù)條件應(yīng)完全可以達(dá)到該系統(tǒng)的功
16、能目標(biāo)。免費的 eclipse 編程平臺使得開發(fā)成本大大減少 。JDK 和 eclipse 都可以從 SUN 公司的網(wǎng)站中直接免費下載。2.1.2 幾個關(guān)鍵技術(shù)的可行性分析 Java 連接數(shù)據(jù)庫。主要由兩種方法,一種是 JDBC-ODBC 橋接,另外一種是純數(shù)據(jù)驅(qū)動連接。 JDBC(Java Data Base Connectivity,java 數(shù)據(jù)庫連接)是一種用于執(zhí)行 SQL 語句的 Java API,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用 Java 語言編寫的類和接口組成。JDBC 為工具/數(shù)據(jù)庫開發(fā)人員提供了一個標(biāo)準(zhǔn)的 API,據(jù)此可以構(gòu)建更高級的工具和接口,使數(shù)據(jù)庫開發(fā)人員能
17、夠用純 Java API 編寫數(shù)據(jù)庫應(yīng)用程序,同時,JDBC 也是個商標(biāo)名。 有了 JDBC,向各種關(guān)系數(shù)據(jù)發(fā)送 SQL 語句就是一件很容易的事。換言之,有了JDBC API,就不必為訪問 Sybase 數(shù)據(jù)庫專門寫一個程序,為訪問 Oracle 數(shù)據(jù)庫又專門寫一個程序,或為訪問 Informix 數(shù)據(jù)庫又編寫另一個程序等等,程序員只需用 JDBC API 寫一個程序就夠了,它可向相應(yīng)數(shù)據(jù)庫發(fā)送 SQL 調(diào)用。同時,將 Java 語言和 JDBC結(jié)合起來使程序員不必為不同的平臺編寫不同的應(yīng)用程序,只須寫一遍程序就可以讓它在任何平臺上運行,這也是 Java 語言“編寫一次,處處運行”的優(yōu)勢。Ja
18、va 數(shù)據(jù)庫連接體系結(jié)構(gòu)是用于 Java 應(yīng)用程序連接數(shù)據(jù)庫的標(biāo)準(zhǔn)方法。JDBC 對Java 程序員而言是 API,對實現(xiàn)與數(shù)據(jù)庫連接的服務(wù)提供商而言是接口模型。作為API,JDBC 為程序開發(fā)提供標(biāo)準(zhǔn)的接口,并為數(shù)據(jù)庫廠商及第三方中間件廠商實現(xiàn)與數(shù)據(jù)庫的連接提供了標(biāo)準(zhǔn)方法。JDBC 使用已有的 SQL 標(biāo)準(zhǔn)并支持與其它數(shù)據(jù)庫連接標(biāo)準(zhǔn),如 ODBC 之間的橋接。JDBC 實現(xiàn)了所有這些面向標(biāo)準(zhǔn)的目標(biāo)并且具有簡單、嚴(yán)格類型定義且高性能實現(xiàn)的接口。 JDBC-ODBC是微軟公司開放服務(wù)結(jié)構(gòu)(WOSA,Windows Open Services 大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計4Archit
19、ecture)中有關(guān)數(shù)據(jù)庫的一個組成部分,它建立了一組規(guī)范,并提供了一組對數(shù)據(jù)庫訪問的標(biāo)準(zhǔn)API(應(yīng)用程序編程接口) 。這些API利用SQL來完成其大部分任務(wù)。ODBC本身也提供了對SQL語言的支持,用戶可以直接將SQL語句送給ODBC。一個基于ODBC的應(yīng)用程序?qū)?shù)據(jù)庫的操作不依賴任何DBMS,不直接與DBMS打交道,所有的數(shù)據(jù)庫操作由對應(yīng)的DBMS的ODBC驅(qū)動程序完成。也就是說,不論是FoxPro、Access , MYSQL還是Oracle數(shù)據(jù)庫,均可用ODBC API進(jìn)行訪問。由此可見,ODBC的最大優(yōu)點是能以統(tǒng)一的方式處理所有的數(shù)據(jù)庫。缺點是連接的時候必須依靠ODBC,在其他非微軟
20、平臺沒有ODBC的情況下無法用該方法。 該酒店管理系統(tǒng)采用的是第二種連接方式,即純數(shù)據(jù)驅(qū)動連接的方法,這種方式不需要建立橋,設(shè)置數(shù)據(jù)源,由于不依賴于ODBC,使得程序具有更好的移植性,運行時只需要安裝SQLserver2005提供的純JAVA數(shù)據(jù)庫驅(qū)動程序就可以了。2.1.4 法律可行性分析本系統(tǒng)的開發(fā)作為計算機畢業(yè)設(shè)計以鞏固先前所學(xué)的知識,此程序以個人為單位,僅供個人所用,沒有侵犯任何版權(quán),也沒有違反國家相關(guān)法律法規(guī)及相關(guān)方面的規(guī)定,與業(yè)界有關(guān)規(guī)定也無矛盾之處,所以法律方面可行 。2.2 系統(tǒng)需求分析 2.2.1 系統(tǒng)的功能需求酒店管理信息管理系統(tǒng)是以顧客訂房信息為基礎(chǔ)建立的管理系統(tǒng), 是管
21、理酒店客房業(yè)務(wù)的重要方法、手段、技術(shù)和操作過程的集合。作為一個管理信息系統(tǒng),其服務(wù)的對象是雙方面的:酒店和顧客。因此,一個好的酒店管理系統(tǒng),必須讓雙方在使用時都快捷方便。顧客通過輸入姓名、密碼等基本信息,由系統(tǒng)自行生成酒店相應(yīng)的統(tǒng)計數(shù)據(jù)及各類統(tǒng)計報表以供用戶查詢、打印,另外操作人員還可以對這些基本信息進(jìn)行定期的更新和刪除, 酒店管理系統(tǒng)力求給用戶方便快捷的途徑去管理這些繁瑣的數(shù)據(jù)。為酒店帶來方便,也為顧客帶來方便,實現(xiàn)信息化。根據(jù)可行性研究的結(jié)果和客戶的要求,分析現(xiàn)有情況及問題,采用兩級管理結(jié)構(gòu),將酒店管理系統(tǒng)劃分為兩個子系統(tǒng):酒店管理人員,酒店前臺收銀員。系統(tǒng)的主要業(yè)務(wù)流程如下:第一步:登錄
22、系統(tǒng),選擇適合您的身份。根據(jù)登錄用戶和密碼進(jìn)行登陸。第二步:錄入顧客消費信息和菜單種類信息等。即吧臺查詢菜品,菜系和日結(jié)賬等詳細(xì)資料,提交訂單,將信息錄入酒店管理系統(tǒng)的數(shù)據(jù)庫中。一個姓名對應(yīng)一個臺號,臺號一定要確保準(zhǔn)確無誤,以便方便上菜。第三步:對顧客消費進(jìn)行銷賬處理。對顧客的消費信息進(jìn)行結(jié)賬。第四步:對日,月,年的消費信息進(jìn)行匯總處理。對整個酒店每日,每年,每月大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計5的消費信息進(jìn)行簡單的計算,方便酒店管理人員了解酒店的運行狀態(tài)和運營趨勢。管理人員登錄查詢菜單信息進(jìn)行預(yù)定。送菜等相關(guān)服務(wù)結(jié)賬,離開。圖 2-3 酒店管理系統(tǒng)流程圖綜上所述,酒店管理系統(tǒng)系統(tǒng)應(yīng)該
23、滿足以下一些基本要求:一是系統(tǒng)內(nèi)存儲的菜品菜系信息,應(yīng)至少包括:名稱、助記碼、菜系、單位、單價等信息。 二是每一位顧客應(yīng)該包括的信息至少有:對應(yīng)的臺號,開臺時間,消費金額,消費的菜品等詳細(xì)消費信息。 三是系統(tǒng)必須實現(xiàn)以下基本功能:錄入和查詢菜品:即用戶能錄入新到的菜品和查出酒店內(nèi)的所有菜品;酒店管理人員能隨時查詢出客人預(yù)訂菜品的具體情況,對應(yīng)的吧臺號可以對應(yīng)查詢對應(yīng)的客戶消費信息。承辦訂餐業(yè)務(wù):這是最基本的。訂餐的時候,要求輸入客戶資料;若要求的吧臺號尚有,則為其開臺,并保存信息;如果沒有,則顯示抱歉信息,并詢問用戶是否有其他要求。管理員業(yè)務(wù):首先對管理員身份進(jìn)行驗證,符合身份的管理員可以對信
24、息進(jìn)行維護(hù):對用戶的信息,訂餐信息,開臺信息,消費信息進(jìn)行增,刪,改,查。管理員可以按條件分類查詢菜品信息,用戶信息,日月年消費信息,單個顧客消費信息,如果不輸入查詢條件,則查詢?nèi)俊?.2.2 系統(tǒng)數(shù)據(jù)需求分析數(shù)據(jù)流圖:大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計6圖 2-4 系統(tǒng)數(shù)據(jù)流圖數(shù)據(jù)字典:數(shù)據(jù)存儲的數(shù)據(jù)字典:D1:吧臺信息表描述:記錄相關(guān)的吧臺信息情況表結(jié)構(gòu)(編號、座位數(shù))D2:菜單信息表描述:記錄相應(yīng)的菜單信息表結(jié)構(gòu)(編號、所屬類別、名稱、編碼、單元、價格、狀態(tài))D3:消費信息表描述:記錄顧客的消費信息表結(jié)構(gòu)(編號、吧臺號、時間、金額、人數(shù))D4:菜品類別信息表描述:記錄菜品的類別相
25、關(guān)信息表結(jié)構(gòu)(菜品編號、菜品名字)菜品信息D2臺號信息消費信息臺號信息表點餐消費信息表管理員菜品信息管理員菜品信息菜品信息表D1菜品信息查詢信息查詢顧客菜品信息添加刪除大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計7數(shù)據(jù)流的數(shù)據(jù)字典描述:菜品信息(編號、名稱、助記碼、菜系、單價、單位)查詢信息(日月年消費額)顧客消費信息(臺號、消費菜品羅列、開臺時間、消費金額)吧臺信息(吧臺號、座位數(shù))相關(guān)條件:訂餐結(jié)果=訂餐成功|非法用戶|訂餐失敗查詢條件=查詢?nèi)障M條件|查詢月消費條件|查詢年消費條件大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計8第三章 系統(tǒng)總體設(shè)計3.1 系統(tǒng)功能結(jié)構(gòu)系統(tǒng)主要功能結(jié)構(gòu)如下圖所示:酒
26、店管理系統(tǒng)收銀員用戶管理菜單管理菜系管理營業(yè)額查詢管理員模塊吧臺收銀員添加消費清單消費結(jié)帳吧臺管理年結(jié)帳查詢?nèi)战Y(jié)帳查詢月結(jié)帳查詢 圖 3-1 系統(tǒng)主要功能結(jié)構(gòu)圖3.2 系統(tǒng)概念設(shè)計3.2.1 系統(tǒng)實體描述一是菜單實體,菜單實體是酒店對酒菜的描述,它保存的是關(guān)于酒菜的所有信息:實體集菜單,有菜單編號、菜名、菜系別、助記碼、計量單位、單價和狀態(tài)。其中以“菜單號“作為主鍵。大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計9狀態(tài)單價計量單位菜助記碼菜單號菜系別菜名菜實體圖 3-3 菜單實體屬性圖二是吧臺(桌子)實體,消費臺實體是酒店對消費位置桌號的描述,它保存的是消費臺位置的信息:圖 3-4 消費臺實體屬性圖
27、實體集消費臺,有屬性臺號和座位數(shù)量。每一個作為都是與眾不同的,都是唯一和不重復(fù)的,所以以臺號作為主鍵。三是用戶實體,用戶實體是酒店管理員對具體操作人員的描述,它保存的是酒店操作人員的信息:圖 3-5 用戶實體屬性圖實體集用戶,有用戶編號、姓名、性別,出生年月,密碼,工作卡號和狀態(tài)。因為姓名有可能重名,所以不能作為主鍵;以“用戶編號“作為主鍵。消費臺實體座位數(shù)量臺號密碼性別生日工作卡號狀態(tài)用戶編號姓名用戶實體大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計10四是用菜系實體,菜系實體是酒店對菜的類別的描述,它保存的是所有菜類別的信息:圖 3-6 菜系實體屬性圖實體集菜系,有編號和菜系類別名 2 個屬性,
28、其中以“編號”作為主鍵 。3.2.2 系統(tǒng)實體聯(lián)系圖包含點菜包含酒店吧臺菜品隸屬菜系1N1NNMM1圖 3-7 系統(tǒng)實體 E-R 圖3.3 數(shù)據(jù)庫表結(jié)構(gòu)3.3.1 消費座位信息表標(biāo)識名稱:tb_desk主要作用:此表主要用來存儲消費臺,即座位的狀態(tài),包括臺號和座位的數(shù)量,便于以后系統(tǒng)查詢信息等操作的實現(xiàn)。表 3-1 消費臺信息表字段名字段解釋字段類型是否空num吧臺號Varchar(5)非空seating座位數(shù)量Int非空3.3.2 菜單信息表菜系實體類別名編號包含大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計11標(biāo)識名稱:tb_menu主要作用:此表主要用來存儲菜單信息,包括有菜單編號、菜名、菜系
29、別、助記碼、計量單位、單價和狀態(tài)。實現(xiàn)系統(tǒng)對菜單信息的查詢、修改等相關(guān)管理工作,方便用戶和管理員的相關(guān)系統(tǒng)操作。表 3-2 菜單信息表字段名字段解釋字段類型是否空Num菜單號Varchar(8)非空Sort_id菜系號Int非空Name菜名Varchar(20)非空Code所屬菜系Varchar(10)非空Unit計量單位Varchar(4)非空Unit_price單價Int非空state該菜狀態(tài)char(4)非空3.3.3 用戶信息表標(biāo)識名稱:tb_user主要作用:此表主要用來存儲操作員用戶信息,其中包括編號、姓名、性別、工作證卡號,管理密碼和狀態(tài)。它實現(xiàn)了管理者對操作員,同時可以實現(xiàn)系統(tǒng)
30、查詢數(shù)據(jù)庫相關(guān)信息時的相關(guān)功能。表 3-3 用戶信息表字段名字段解釋字段類型是否空Id用戶編號int (自加一)非空Name姓名Varchar(8)非空Sex性別 char(2)非空Birthday生日datetime非空Id_card工作卡號Varchar(20)非空Password 管理密碼Varchar(20)非空freeze當(dāng)前狀態(tài) char(4)非空3.3.4 訂單信息表標(biāo)識名稱:tb_order_form主要作用:此表用來存儲每一個消費臺的具體消費記錄,主要包括主鍵序號、臺桌號、時間和消費者編號。根據(jù)此表可以進(jìn)行營業(yè)額查詢,和每一個消費臺(桌子)的消費狀態(tài)。表 3-4 訂單信息表字
31、段名字段解釋字段類型是否空num唯一標(biāo)識char(11)非空Desk_num臺號char(5)非空datatime消費時間date可以空大連交通大學(xué) 2010 屆本科生畢業(yè)設(shè)計12money消費金額int非空Uer_id消費者編號int非空3.3.5 菜系信息表標(biāo)識名稱:tb_sort主要作用:此表主要用來存儲登陸信息,包括主鍵序號、管理員帳戶和管理員密碼。在管理員登錄時系統(tǒng)主動訪問此表,進(jìn)行相關(guān)信息的驗證。可以實現(xiàn)數(shù)據(jù)庫表結(jié)構(gòu)的相關(guān)功能。表 3-5 菜系信息表字段名字段解釋字段類型是否空id唯一標(biāo)識int 非空name菜系名Varchar(20)非空3.3.6 訂菜信息表標(biāo)識名稱:tb_or
32、der_item主要作用:此表用來存儲每一個消費臺的具體點菜記錄,消費時以臺號為單位,以消費臺進(jìn)行增加菜品。主要包括主鍵序號、臺桌號、菜單編號和數(shù)量和總金額。根據(jù)此表可以查詢每一桌客人具體都定了那些菜品,和每一個消費臺的消費金額的狀態(tài)。表 3-6 訂單信息表字段名字段解釋字段類型是否空id唯一標(biāo)識int非空Order_form_num臺號char(11)非空Meun_num菜品號char(8)非空amount消費菜品數(shù)量int非空total消費金額int非空13第四章 系統(tǒng)詳細(xì)設(shè)計4.1 Java 類的設(shè)計MenuDialog.java:主要記錄菜品的相關(guān)信息。菜品信息管理界面只有兩個功能,就
33、是管理員對菜品信息進(jìn)行添加和刪除。它是通過 HbBean.java 對菜品信息表 tb_menu 進(jìn)行操作.通過輸入菜品相關(guān)信息進(jìn)行添加和刪除。在菜品信息的界面的實現(xiàn)過程中,需要調(diào)用 addButton.addActionListener(new ActionListener() delButton.addActionListener(new ActionListener()對表中的信息進(jìn)行添加和刪除。再通過如下代碼將每個字段循環(huán)顯示在頁面上。添加菜品核心代碼:Vector newMenuV = new Vector();newMenuV.add(row + 1);/ 添加序號for (int
34、 i = 0; i 0) / 還擁有菜品if (row table.getRowCount() / 刪除的不是位于表格最后的菜系for (int i = row; i table.getRowCount(); i+) table.setValueAt(i + 1 + , i, 0);/ 修改位于刪除菜系序號table.setRowSelectionInterval(row, row);/ 設(shè)置上移到刪除行索引的菜系為被選中 else table.setRowSelectionInterval(row - 1, row - 1);/ 設(shè)置當(dāng)前位于表格最后的菜系被選中SortDialog.java
35、:對菜系進(jìn)行分類操作。管理員對菜系的類別進(jìn)行添加和刪除。它是通過 SortDialog.java 對菜品信息表tb_sort 進(jìn)行操作.通過輸入菜品相關(guān)類別信息進(jìn)行添加和刪除。核心代碼如下:int row = tableModel.getRowCount();/ 獲得當(dāng)前擁有菜系名稱的個數(shù)14Vector newSortV = new Vector();/ 創(chuàng)建一個代表新菜系名稱的向量newSortV.add(new Integer(row + 1);/ 添加序號newSortV.add(sortName);/ 添加菜系名稱tableModel.addRow(newSortV);/ 將新菜系名
36、稱信息添加到表格中table.setRowSelectionInterval(row, row);/ 設(shè)置新添加的菜系名稱為選中的DeskNumDialog.java:主要對臺號進(jìn)行操作。管理員對臺號進(jìn)行操作。它是通過 DeskNumDialog.java 對菜品信息表 tb_desk 進(jìn)行操作.通過輸入臺號相關(guān)信息進(jìn)行檢索,為用戶提供方便。在進(jìn)行相應(yīng)的后臺管理員增、刪、改、查操作時,輸入修改后提交給 Servlet 調(diào)用后臺 OrderBean.java 中的update()方法進(jìn)行對數(shù)據(jù)庫的更新操作。核心代碼如下:for (int row = 0; row openedDeskTable.
37、getRowCount(); row+) / 查看該餐臺是否正在被使用if (deskNum.equals(openedDeskTable.getValueAt(row, 1) JOptionPane.showMessageDialog(null,該餐臺正在使用,不能刪除!, 友情提示,JOptionPane.INFORMATION_MESSAGE);return;/ 該餐臺正在被使用,不能刪除,返回4.2 酒店業(yè)務(wù)模塊酒店業(yè)務(wù)模塊主要是對酒店進(jìn)行管理。下面分別介紹酒店業(yè)務(wù)模塊各個功能實現(xiàn)的具體算法,以偽代碼的形式給出。4.24.2.1菜品相關(guān)信息查詢模塊表結(jié)構(gòu):查詢菜品信息,條件查詢 tb_
38、menu 和 tb_desk 等菜品信息表。模塊功能:菜品信息添加和刪除。輸入:菜品編號,菜品名稱,助記碼,單價等。查找按鈕功能。會調(diào)出另外一個窗口來顯示顧客所要查詢的符合條件年月日消費額。根據(jù)信息中的各字段,選擇相應(yīng)的條件操作符輸入相應(yīng)的值即可進(jìn)行信息查詢。該模塊的主要分為兩部分:一是完成選擇要查找的字段、條件操作符等功能;二是用來顯示顧客進(jìn)行查詢的完整條件及查詢、退出按鈕。當(dāng)查找的條件選擇完畢,點擊查找按鈕,在顯示部分顯示出來后,點擊查找按鈕才正式完成該模塊的查找功能。154.2.2 用戶模塊模塊功能:實現(xiàn)管理,注冊,登陸模塊。算法功能:實現(xiàn)管理員登錄功能。算法名稱:管理員登錄算法輸入:管
39、理員姓名,密碼輸出:登錄失敗,報告出錯信息;登錄成功,進(jìn)入操作界面選擇用戶,輸入密碼。(1)用戶合法性檢驗,查詢用戶 tb_user 信息表,若存在則可以登錄,執(zhí)行(2)。否則退出;(2)執(zhí)行相應(yīng)模塊操作:執(zhí)行查詢菜單,結(jié)賬等操作;(3)返回。4.2.34.2.3 訂單信息管理模塊訂單信息管理模塊算法功能:實現(xiàn)訂單信息管理功能。算法名稱:訂單信息管理算法輸入:顧客編號,菜品系列輸出:操作失敗,報告出錯信息;操作成功,返回相應(yīng)界面。核心代碼為:4.2.44.2.4 數(shù)據(jù)庫管理模塊數(shù)據(jù)庫管理模塊SQLServer2005 可以通過企業(yè)內(nèi)部網(wǎng)絡(luò) Internet 很簡便地實現(xiàn)信息共享,而且它可以很容
40、易地將數(shù)據(jù)庫定位到瀏覽器中,它將桌面數(shù)據(jù)庫的功能和網(wǎng)站的功能結(jié)合在一起。核心代碼如下:try Class.forName(DRIVERCLASS).newInstance();/ 加載數(shù)據(jù)庫驅(qū)動 catch (Exception e) e.printStackTrace(); public static Connection getConnection() / 創(chuàng)建數(shù)據(jù)庫連接的方法Connection conn = threadLocal.get();/ 從線程中獲得數(shù)據(jù)庫連接if (conn = null) / 沒有可用的數(shù)據(jù)庫連接try conn = DriverManager.getCo
41、nnection(URL, USERNAME, PASSWORD);/ 創(chuàng)建新的數(shù)據(jù)庫連接threadLocal.set(conn);/ 將數(shù)據(jù)庫連接保存到線程中16 catch (SQLException e) e.printStackTrace();return conn;17第五章 系統(tǒng)實現(xiàn)5.1 開發(fā)環(huán)境的搭建硬件配置: 800Mhz 以上,內(nèi)存 512M;軟件配置:Window XP professional 操作系統(tǒng)、jdk5.0、SQL2005 數(shù)據(jù)庫,Eclipse編程平臺。5.1.15.1.1 JDKJDK 簡介簡介 JDK(Java Development Kit)是整個J
42、ava的核心,包括了Java運行環(huán)境(Java Runtime Envirnment) ,一堆Java工具和Java基礎(chǔ)的類庫(rt.jar)。不論什么Java應(yīng)用服務(wù)器實質(zhì)都是內(nèi)置了某個版本的JDK。因此掌握 JDK是學(xué)好Java的第一步。最主流的JDK是Sun公司發(fā)布的JDK,除了Sun之外,還有很多公司和組織都開發(fā)了自己的JDK,例如IBM公司開發(fā)的JDK,BEA公司的Jrocket,還有GNU組織開發(fā)的JDK等等。其中IBM的JDK包含的JVM(Java Virtual Machine)運行效率要比Sun JDK包含的JVM高出許多。而專門運行在x86平臺的Jrocket在服務(wù)端運行效
43、率也要比Sun JDK好很多。 從SUN的JDK5.0開始,提供了泛型等非常實用的功能,其版本信息也不再延續(xù)以前的1.2,1.3,1.4,而是變成了5.0,6.0了。從6.0開始,其運行效率得到了非常大的提高,尤其是在桌面應(yīng)用方面。5.1.25.1.2 EclipseEclipse 簡介簡介 Eclipse是一個開放源代碼的軟件開發(fā)項目,專注于為高度集成的工具開發(fā)提供一個全功能的、具有商業(yè)品質(zhì)的工業(yè)平臺。它主要由Eclipse項目、Eclipse工具項目和Eclipse技術(shù)項目三個項目組成,具體包括四個部分組成Eclipse Platform、JDT、CDT和PDE.JDT支持Java開發(fā)、C
44、DT支持C開發(fā)、PDE用來支持插件開發(fā),Eclipse Platform則是一個開放的可擴展IDE,提供了一個通用的開發(fā)平臺。它提供建造塊和構(gòu)造并運行集成軟件開發(fā)工具的基礎(chǔ)。Eclipse Platform允許工具建造者獨立開發(fā)與他人工具無縫集成的工具從而無須分辨一個工具功能在哪里結(jié)束,而另一個工具功能在哪里開始。Eclipse SDK(軟件開發(fā)者包)是Eclipse Platform、JDT和PDE所生產(chǎn)的組件合并,它們可以一次下載。這些部分在一起提供了一個具有豐富特性的開發(fā)環(huán)境,允許開發(fā)者有效地建造可以無縫集成到Eclipse Platform中的工具。Eclipse SDK由Eclips
45、e項目生產(chǎn)的工具和來自其它開放源代碼的第三方軟件組合而成。Eclipse項目生產(chǎn)的軟件以 CPL發(fā)布,第三方組件有各自自身的許可協(xié)議。18 現(xiàn)在eclipse已經(jīng)成為最廣泛的Java開發(fā)平臺,成為廣大Java愛好者的首選編程平臺。憑借其免費和穩(wěn)定以及強大的功能和豐富的插件功能,所以本程序采用eclipse環(huán)境。5.1.35.1.3 SQLSQL ServerServer 20052005 簡介簡介 今天的商業(yè)環(huán)境要求不同類型的數(shù)據(jù)庫解決方案。性能、可伸縮性及可靠性是基本要求,而進(jìn)入市場時間也非常關(guān)鍵。除這些核心企業(yè)品質(zhì)外,SQL Server 2005 還為您的數(shù)據(jù)管理與分析帶來了靈活性,允許
46、單位在快速變化的環(huán)境中從容響應(yīng),從而獲得競爭優(yōu)勢。從數(shù)據(jù)管理和分析角度看,將原始數(shù)據(jù)轉(zhuǎn)化為商業(yè)智能和充分利用 Web 帶來的機會非常重要。作為一個完備的數(shù)據(jù)庫和數(shù)據(jù)分析包,SQL Server 2005 為快速開發(fā)新一代企業(yè)級商業(yè)應(yīng)用程序、為企業(yè)贏得核心競爭優(yōu)勢打開了勝利之門。作為重要的基準(zhǔn)測試可伸縮性和速度獎的記錄保持者,SQL Server 2005 是一個具備完全 Web 支持的數(shù)據(jù)庫產(chǎn)品,提供了對可擴展標(biāo)記語言 (XML) 的核心支持以及在 Internet 上和防火墻外進(jìn)行查詢的能力。采用SQL Server 2005 的優(yōu)點有: 第一 Sql2005具有完全的 Web 支持。SQL
47、 Server 2005 提供了以 Web 標(biāo)準(zhǔn)為基礎(chǔ)的擴展數(shù)據(jù)庫編程功能。豐富的 XML 和 Internet 標(biāo)準(zhǔn)支持允許您使用內(nèi)置的存儲過程以 XML 格式輕松存儲和檢索數(shù)據(jù)。您還可以使用 XML 更新程序容易地插入、更新和刪除數(shù)據(jù)。通過 Web 輕松訪問數(shù)據(jù)。有了 SQL Server 2005,您可以使用 HTTP 來向數(shù)據(jù)庫發(fā)送查詢、對數(shù)據(jù)庫中存儲的文檔執(zhí)行全文搜索、以及通過 Web 進(jìn)行自然語言查詢。 強大而靈活的基于 Web 的分析。SQL Server 2005 分析服務(wù)功能被擴展到了 Internet。您可以通過 Web 瀏覽器來訪問和控制多維數(shù)據(jù)。 第二 高度的可伸縮性和
48、可靠性。使用 SQL Server 2005 可以獲得非凡的可伸縮性和可靠性。通過向上伸縮和向外擴展的能力,SQL Server 滿足了苛刻的電子商務(wù)和企業(yè)應(yīng)用程序要求。 向上伸縮。SQL Server 2005 利用了對稱多處理器 (SMP) 系統(tǒng)。SQL Server Enterprise Edition 最多可以使用 32 個處理器和 64 GB RAM。向外擴展。向外擴展可以將數(shù)據(jù)庫和數(shù)據(jù)負(fù)載分配給多臺服務(wù)器。 可用性。通過增強的故障轉(zhuǎn)移群集、日志傳送和新增的備份策略,SQL Server 2005 達(dá)到了最大的可用性。 第三 最快的進(jìn)入市場時間。SQL Server 2005 是 M
49、icrosoft .NET Enterprise Server 的數(shù)據(jù)管理與分析中樞。SQL Server 2005 包括加速從概念到最后交付開發(fā)過程的工具。集成和可擴展的分析服務(wù)。有了 SQL Server 2005,您可以建立帶有集成工具的端到端分析解決方案,從數(shù)據(jù)創(chuàng)造價值。此外,還可以根據(jù)分析結(jié)果自動驅(qū)動商業(yè)過程以及從最復(fù)雜的計算靈活地檢索自定義結(jié)果集。快速開發(fā)、調(diào)試和數(shù)據(jù)轉(zhuǎn)換。SQL Server 192005 帶有交互式調(diào)節(jié)和調(diào)試查詢、從任何數(shù)據(jù)源快速移動和轉(zhuǎn)化數(shù)據(jù)、以及按 Transact-SQL 方式定義和使用函數(shù)等功能。您可以從任意 Visual Studio 工具以可視化方式
50、設(shè)計和編寫數(shù)據(jù)庫應(yīng)用程序。簡化的管理和調(diào)節(jié)。使用 SQL Server 2005,您可以很容易地在企業(yè)資源旁邊集中管理數(shù)據(jù)庫??梢栽诒3致?lián)機的同時輕松地在計算機間或?qū)嵗g移動和復(fù)制數(shù)據(jù)庫。5.2 酒店業(yè)務(wù)的實現(xiàn)運行軟件其實界面如圖 5-1,圖 5-1 用戶登錄界面輸入用戶名和密碼,通過使用純 Java 數(shù)據(jù)庫驅(qū)動程序,調(diào)用 JDBC.java 對象連接數(shù)據(jù)庫,在表 tb_user 中進(jìn)行核對,核心代碼如下所示:public Vector sUserByName(String name) return selectOnlyNote(select * from tb_user where name
51、= + name + );public boolean uPasswordByName(String name, String password) return super.longHaul(update tb_user set password= + password+ where name= + name + );,如果 userbyname,byname 都和數(shù)據(jù)庫的相應(yīng)數(shù)據(jù)想匹配,則說明驗證成功。驗證成功后,就可以進(jìn)入系統(tǒng)進(jìn)行操作管理界面如圖 5-2。20圖 5-2 系統(tǒng)操作管理界面該板塊用戶主要用戶為酒店管理人員和收銀員,酒店管理人員可以進(jìn)行菜系管理,菜品管理,臺號管理,和日結(jié)帳,月
52、結(jié)帳和年結(jié)帳等財務(wù)報表以及用戶管理等功能。對于收銀員操作者可以進(jìn)行消費訂單生成,對于每一個臺都可以隨便添加點菜,操作界面如圖 5-3 所示:圖 5-3 為消費臺添加菜品界面消費結(jié)束后,收銀員可以進(jìn)行結(jié)帳業(yè)務(wù)。在業(yè)務(wù)模塊主要實現(xiàn)了以下功能:登陸功能:通過用戶類別和密碼就可以進(jìn)入到系統(tǒng)中,執(zhí)行相關(guān)操作;添加和刪除功能:進(jìn)入系統(tǒng)后,酒店管理員可以執(zhí)行查詢,添加,刪除菜單和菜單類別功能,把最新的菜單的菜單信息及時反饋在系統(tǒng)上,方便管理和顧客點菜;計算匯總功能:酒店管理人員可以進(jìn)行結(jié)帳和相應(yīng)帳目的計算處理,讓管理人員及時了解當(dāng)前酒店的運行狀態(tài);分級管理功能:分酒店管理人員和吧臺管理員,他們的權(quán)限不一樣,
53、就就實現(xiàn)了多級管理,使管理更加快捷方便。5.3 酒店管理員業(yè)務(wù) 進(jìn)入管理員界面首先要進(jìn)行的就是管理員登陸,帳戶和密碼存在 User_tab 表中,這里的主要問題就是管理員的安全問題。因為非管理員身份是不能訪問數(shù)據(jù)庫中特定的表,也沒有權(quán)限去添加刪除有關(guān)的信息。只可以做管理員分配給其權(quán)限的相關(guān)操作。21作為管理員在這一模塊主要有菜品管理,菜系管理,前臺營業(yè)員用戶管理,和臺位管理,每一現(xiàn)都可以實現(xiàn)添加刪除和修改其狀態(tài)的功能。 后面的四個模塊的增加、修改、刪除、查詢業(yè)務(wù)基本相同,做法也基本上是一樣的。運行軟件進(jìn)入登陸界面,選擇管理員身份,并輸入密碼,其實現(xiàn)界面如圖下所示:圖 5-5 管理員登錄界面進(jìn)行
54、菜品管理的操作界面如圖 5-622圖 5-4 管理員職責(zé)界面圖 5-6 菜品管理界面此圖是管理員通過身份驗證之后,進(jìn)行對菜單的添加刪除界面,管理員可以對菜品進(jìn)行添加和刪除以及相應(yīng)的操作,用來儲存菜品信息,及時進(jìn)行更新,使酒店菜品信息智能化。進(jìn)行菜品管理的操作界面如圖 5-7 所示:圖 5-7 菜系信息管理界面上圖是管理員通過身份驗證之后,進(jìn)行對菜單類別的添加刪除界面,管理員可以對菜單類別進(jìn)行添加和刪除以及相應(yīng)的操作,用來儲存菜單類別信息,及時進(jìn)行更新,使酒店菜單類別信息智能化。進(jìn)行菜單類別管理的操作界面如圖 5-8:圖 5-6 訂票信息管理界面23圖 5-6 臺號結(jié)果圖 5-6 顯示了臺號管理
55、界面。該界面明確的顯示了臺號的序號,臺號,以及該臺號所擁有的座位數(shù),及時記錄酒店的座位情況,及時更新,方便管理。圖 5-7 酒店信息月結(jié)帳匯總界面圖 5-8 酒店信息日結(jié)帳匯總界面上面兩圖記錄了酒店的月日結(jié)帳匯總界面,酒店管理人員可以對酒店的日月年的24賬目進(jìn)行統(tǒng)計,及時了解酒店的運營信息和相關(guān)數(shù)據(jù)。核心代碼如下: VectorVector vector = dao.sMenu();for (int i = 0; i vector.size(); i+) tableColumnV.add(vector.get(i).get(2).toString();。yearComboBox.addActi
56、onListener(new ActionListener() public void actionPerformed(ActionEvent e) int year = (Integer) yearComboBox.getSelectedItem();judgeLeapYear(year);update()方法進(jìn)行對數(shù)據(jù)庫的更新操作。圖 5-8 用戶管理界面上圖為用戶管理界面,通過上圖可以對用戶管理信息進(jìn)行添加,添加和刪除吧臺管理人員,及時的對酒店進(jìn)行日常管理。以及進(jìn)行密碼修改,核心代碼如下: String password = user.get(5).toString();if (oldP
57、assword.equals(password) if (newPassword.equals(repeatPassword) String username = user.get(1).toString();user.set(5, newPassword);dao.uPasswordByName(username, newPassword);25JOptionPane.showMessageDialog(null, 密碼修改成功!, 友情提示,JOptionPane.INFORMATION_MESSAGE);dispose();26第六章 系統(tǒng)測試 6.1 軟件測試的方法軟件測試是軟件開發(fā)過
58、程中的一個重要環(huán)節(jié)。軟件測試是為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行程序的過程;好的測試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯誤的測試方案;成功的測試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯誤的測試。軟件測試是根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計出一批測試用例,并利用測試用例來運行程序,以發(fā)現(xiàn)程序錯誤的過程。測試任何產(chǎn)品都有兩種方法: 黑盒測試:黑盒測試時完全不考慮程序內(nèi)部的結(jié)構(gòu)和處理過程,只按照規(guī)格說明書的規(guī)定來檢查程序是否符合它的功能要求。黑盒測試是在程序接口進(jìn)行的測試,又稱為功能測試。白盒測試:白盒測試時將程序看作是一個透明的盒子,也就是說測試人員完全了解程序的內(nèi)部結(jié)構(gòu)和處理過程。所以測試時按照
59、程序內(nèi)部的邏輯測試程序、檢驗程序中的每條通路是否都能按預(yù)定的要求正確工作。白盒測試又稱為結(jié)構(gòu)測試。 從是否執(zhí)行程序的角度分為靜態(tài)測試和動態(tài)測試。從軟件開發(fā)的過程按階段劃分有單元測試,集成測試,確認(rèn)測試和系統(tǒng)測試驗收測試。測試過程按4個步驟進(jìn)行,即單元測試、集成測試、確認(rèn)測試和系統(tǒng)測試及發(fā)版測試。 不論采用何種測試方法,只要對每一種可能的情況都進(jìn)行測試,就可以得到完全正確的程序。包含所有可能情況的測試成為窮盡測試。但對于實際程序而然,窮盡測試是不可能的。6.2 模塊測試 模塊測試是針對概要設(shè)計中的一個一個模塊來進(jìn)行測試的,他的重點就是測module與module之間的關(guān)系。Module Test
60、ing 屬于 Integration Testing(集成測試)的范圍,測試內(nèi)容是被集成部分之間的關(guān)系。模塊測試的目的是保證每個模塊作為一個單元能正確運行,所以模塊測試通常又被稱為單元測試。在這個測試步驟中所發(fā)現(xiàn)的往往是編碼和詳細(xì)設(shè)計的錯誤。在設(shè)計得好的軟件系統(tǒng)中,每個模塊完成一個清晰定義的子功能,而且這個子功能和同其他模塊的功能之間沒有相互依賴關(guān)系。因此,可以把每個模塊作為一個單獨的實體來測試,而且通常比較容易設(shè)計檢驗?zāi)K正確性的測試方案。模塊測試的目的是保證每一個模塊作為一個單元能正確運行。6.2.1 測試內(nèi)容登陸模塊測試:27運行程序,首先是登陸界面,輸入各種組合的賬號和密碼,再輸入正確
61、的密碼進(jìn)行測試。只有輸入正確的密碼才可以進(jìn)入系統(tǒng),進(jìn)行操作。菜品管理模塊測試:本模塊實現(xiàn)菜品管理功能。首先輸入菜品編號、菜品名稱、助記碼,菜系。如果添加成功,會有相關(guān)的提示頁面;如果出錯,顯示相應(yīng)出錯信息。菜系管理模塊測試:本模塊實現(xiàn)菜系的管理功能。只要輸入菜系名稱就可以了,編號由系統(tǒng)自增量來生成。如果添加成功,會顯示添加成功后的界面;如果出錯,會顯示相應(yīng)的出錯信息。進(jìn)行刪除操作,輸入菜系名字,按刪除按鈕就可以實現(xiàn)刪除,如果刪除成功,會顯示刪除后的界面,否則,會顯示相應(yīng)的出錯信息。用戶管理模塊測試:本模塊實現(xiàn)對前臺營業(yè)員(用戶)的管理功能。如果添加用戶的話,輸入名字,選擇性別,添加出生日期和省
62、份證號就可以了,如果添加成功,會顯示添加成功后的界面;如果出錯,會顯示相應(yīng)的出錯信息。進(jìn)行刪除操作,如果刪除成功,會顯示刪除后的界面,否則,會顯示相應(yīng)的出錯信息。修改密碼模塊模塊測試:為了體現(xiàn)安全性,本模塊實現(xiàn)實現(xiàn)管理員對登錄密碼修改的功能。輸入舊密碼,然后輸入新密碼,再確認(rèn)一下新密碼,操作成功就可以返回相應(yīng)界面。如果失敗,有相關(guān)提示。財務(wù)查詢模塊測試:本模塊實現(xiàn)財務(wù)的查詢功能??梢赃M(jìn)行日結(jié)賬,月結(jié)帳,年結(jié)賬查詢,選擇正確的年份和月份就可以正確的查詢到相關(guān)信息。如果操作失敗,報告出錯信息。6.2.2 測試結(jié)果經(jīng)過對各個模塊的功能測試,已經(jīng)實現(xiàn)了各個功能,達(dá)到了任務(wù)書中的各種要求,軟件功能完整,
63、錯誤處理正確,且能正確提示錯誤種類。用戶能流暢的使用程序中的各項服務(wù),系統(tǒng)運行正常。28第七章 結(jié)論隨著酒店管理業(yè)的現(xiàn)代化發(fā)展和電子商務(wù)的發(fā)展,酒店管理者進(jìn)行計算機管理已經(jīng)成為未來勢不可擋的發(fā)展趨勢。通過酒店管理系統(tǒng)的開發(fā)與設(shè)計,使我將大學(xué)五年所學(xué)到的知識進(jìn)行了融會貫通,把所掌握的書本知識充分應(yīng)用到實踐中,本次畢業(yè)設(shè)計的程序從需求分析、概要設(shè)計、詳細(xì)設(shè)計、編碼到測試等過程的分析、設(shè)計與實現(xiàn)都由自己獨立創(chuàng)作完成的,中間暈倒不少問題,在老師和網(wǎng)絡(luò)的幫助下都一一得到了解決。7.1 概述工作這次畢業(yè)設(shè)計大約 4 個月,在整個畢業(yè)設(shè)計過程中,學(xué)習(xí)了 Java 技術(shù)、熟悉了eclipse 編程環(huán)境,還有
64、sqlserver2005 的數(shù)據(jù)庫操作以及解決問題的能力。在學(xué)習(xí)相關(guān)的技術(shù)的同時,摸索著進(jìn)行畢業(yè)設(shè)計題目的相關(guān)制作。在 8 月初,已經(jīng)初步完成了預(yù)先所設(shè)計的“酒店管理系統(tǒng)的設(shè)計”的原型。通過這次實際開發(fā),我掌握了初步的Java 技術(shù)和 sql 語言。程序也基本上達(dá)到了預(yù)期的效果。7.2 體會與收獲Java 技術(shù)作為最流行的開發(fā)技術(shù),確實有它的獨特之處:一是它的語法較為簡單,如果你有相關(guān)的高級編程語言的基礎(chǔ)的話,它的語法根本不是障礙。二是 Java 的面向?qū)ο蟮木幊田L(fēng)格,使得開發(fā)更加簡單和方便。比如用戶管理這一模塊,就是借鑒其他程序的代碼編寫的,把接口和功能改成自己的就可以了。如果是一個經(jīng)常用
65、的移植性好的模塊,以后遇到相關(guān)的模塊時就可以直接拿過來用,方便,簡單,避免了重復(fù)編寫代碼的過程,縮短了開發(fā)周期。三是 sql 語言的學(xué)習(xí),其實隨著業(yè)務(wù)量的增加和操作終端的增加,SQL 優(yōu)化就顯的格外重要,在本程序中,沒有考慮到這一點,只是實現(xiàn)了功能,對于均衡負(fù)載,和查詢優(yōu)化和數(shù)據(jù)庫連接等方面沒有做代碼優(yōu)化,對于大型的程序和用戶巨大的程序而言,進(jìn)行 SQL 優(yōu)化是至關(guān)重要的一點,否則的話很容易造成系統(tǒng)崩潰。四是熟練掌握了 eclipse 平臺下創(chuàng)建 Java 項目和工程的方法。Eclipse 的管理功能比起人工管理方便簡單多了。在編寫代碼過程中,學(xué)會了加載外部類,添加運行環(huán)境,設(shè)置斷點檢查等,還
66、有代碼糾錯功能,使得我在編寫代碼的過程稱中少放低級錯誤,幫我養(yǎng)成良好的編程風(fēng)格起了很大的作用。 這次畢業(yè)設(shè)計中,讓我認(rèn)識到了在軟件開發(fā)過程中設(shè)計的重要性;設(shè)計一個好的軟件結(jié)構(gòu)(包括相關(guān)的模塊組成和調(diào)用關(guān)系、考慮模塊的相對獨立性、數(shù)據(jù)庫結(jié)構(gòu)設(shè)29計和實際的軟件流程)對于最終的軟件質(zhì)量和中間的開發(fā)量來說是十分至關(guān)重要的。其次,再設(shè)計初期得考慮到將來軟件的可擴展性,這一點對于將來的功能改動至關(guān)重要,這一點在后來的改動中由很深的體會。 通過這次畢業(yè)設(shè)計,把四年的書本知識轉(zhuǎn)變成實踐,收獲頗豐。在設(shè)計過程中,除了學(xué)習(xí)到了相關(guān)的技術(shù)之外,還學(xué)會了如何自學(xué)、如何獨立的解決相關(guān)的問題以及如何與同學(xué)、同事合作共同解決問題,同時學(xué)會了解了軟件測試的相關(guān)知識。一個軟件的成功與否不僅和程序設(shè)計有關(guān),還與自己的在各個方面的知識的掌握程度、與人合作的能力都有著密切的關(guān)系。7.3 今后的發(fā)展方向由于酒店行業(yè)的不斷發(fā)展過程,酒店管理業(yè)務(wù)會涉及到將來的各個方面,比如撿來還可以發(fā)展網(wǎng)上預(yù)訂系統(tǒng),職工考核模塊以及進(jìn)銷存等酒店相關(guān)的業(yè)務(wù)。這些都需要程序的健壯性。 在Java開發(fā)工具方面,eclipse仍是主流的開發(fā)工具,調(diào)查表
- 溫馨提示:
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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 第七章-透射電子顯微鏡
- 群落的結(jié)構(gòu)(課件)
- 焊接基礎(chǔ)知識
- 水文地質(zhì)學(xué)課件
- 某公司員工工傷安全管理規(guī)定
- 消防培訓(xùn)課件:安全檢修(要點)
- 某公司安全生產(chǎn)考核與獎懲辦法范文
- 安全作業(yè)活動安全排查表
- 某公司危險源安全辨識、分類和風(fēng)險評價、分級辦法
- 某公司消防安全常識培訓(xùn)資料
- 安全培訓(xùn)資料:危險化學(xué)品的類別
- 中小學(xué)寒假學(xué)習(xí)計劃快樂度寒假充實促成長
- 紅色插畫風(fēng)輸血相關(guān)知識培訓(xùn)臨床輸血流程常見輸血不良反應(yīng)
- 14.應(yīng)急救援隊伍訓(xùn)練記錄
- 某公司各部門及人員安全生產(chǎn)責(zé)任制