酒店管理系統(tǒng)畢業(yè)設(shè)計(jì)_第1頁(yè)
酒店管理系統(tǒng)畢業(yè)設(shè)計(jì)_第2頁(yè)
酒店管理系統(tǒng)畢業(yè)設(shè)計(jì)_第3頁(yè)
酒店管理系統(tǒng)畢業(yè)設(shè)計(jì)_第4頁(yè)
酒店管理系統(tǒng)畢業(yè)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩69頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、. . . . 酒店管理系統(tǒng)畢業(yè)設(shè)計(jì)摘 要本文主要介紹了“榮豐酒店管理系統(tǒng)”的項(xiàng)目背景和意義,著重闡述了該系統(tǒng)開(kāi)發(fā)實(shí)現(xiàn)過(guò)程,從系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)、軟件測(cè)試、詳細(xì)設(shè)計(jì)到系統(tǒng)測(cè)試等各個(gè)環(huán)節(jié)都進(jìn)行了詳盡的分析和描述。本文還簡(jiǎn)略的介紹了主要的開(kāi)發(fā)工具C#和SQL數(shù)據(jù)庫(kù)的功能特性。傳統(tǒng)手工的客房管理,管理過(guò)程繁瑣而復(fù)雜,執(zhí)行效率低,并且易于出錯(cuò)。隨著社會(huì)的的不斷進(jìn)步,賓館酒店業(yè)的競(jìng)爭(zhēng)也愈來(lái)愈激烈,要想在競(jìng)爭(zhēng)中取得優(yōu)勢(shì),必須在經(jīng)營(yíng)管理、產(chǎn)品服務(wù)等方面提高管理意識(shí)。如何利用先進(jìn)的管理手段,提高客房的管理水平,是每一個(gè)賓館管理者所面臨的重大問(wèn)題。 本系統(tǒng)采用C#語(yǔ)言編輯,實(shí)現(xiàn)了與windows操作系

2、統(tǒng)良好的兼容性,通過(guò)代碼與SQL語(yǔ)言實(shí)現(xiàn)了客房查詢功能、客戶查詢功能、入住登記功能、續(xù)費(fèi)管理功能、退房管理功能、每日結(jié)算功能、結(jié)算報(bào)表功能、房間基本信息修改功能、權(quán)限用戶修改與房間價(jià)格調(diào)整功能。通過(guò)這樣的系統(tǒng),我們可以做到信息的規(guī)管理和快速查詢,實(shí)現(xiàn)了客房信息管理的系統(tǒng)化、規(guī)化和自動(dòng)化,這樣不僅減少了管理工作量,還提高了管理效率,降低了管理成本,以應(yīng)付當(dāng)今日趨激烈的競(jìng)爭(zhēng)環(huán)境。關(guān)鍵字:榮豐酒店管理系統(tǒng);C#;SQLAbstractAs society progresses, the hotel industry increasingly fierce competition, in order

3、to gain advantage in the competition must be in management, products, services and so improve the management awareness. How to make use of advanced management tools to improve the management level rooms, a hotel manager every face major problems.Traditional hand-rooms in the management of the proces

4、s tedious and complicated, inefficient and error-prone. Through such a system, we can do the standard management of information and quick queries, information management realized the room systematic, standardized and automated, so that the management not only reduces the workload, but also improve m

5、anagement efficiency and reduce management costs.This article briefly describes the Rongfeng hotel management system project background and significance, focusing on the implementation of the system development process, from system analysis, system design, system implementation, software testing, de

6、tailed design to system testing carried out in all aspects of a detailed analysis and description. This article also briefly introduced the main development tools, C #, and SQL database features.Keyword:Rongfeng hotel management system; C #; SQL69 / 74目 錄引言11 基礎(chǔ)知識(shí)21.1 C#語(yǔ)言21.2 SQL Server數(shù)據(jù)庫(kù)介紹32 系統(tǒng)分析

7、52.1 開(kāi)發(fā)背景與意義52.2 可行性研究52.3 功能需求62.3.1 用例分析62.3.2 概念類描述92.3.3 行為描述112.4 性能需求112.4.1 響應(yīng)時(shí)間112.4.2 吞吐量112.4.3 并發(fā)用戶數(shù)132.4.4 資源利用率132.5 環(huán)境需求132.5.1 硬件環(huán)境132.5.2 軟件環(huán)境133 系統(tǒng)設(shè)計(jì)133.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)133.1.1 軟件設(shè)計(jì)的原則133.1.2 系統(tǒng)層次結(jié)構(gòu)133.2 設(shè)計(jì)階段類圖133.3 數(shù)據(jù)庫(kù)設(shè)計(jì)133.3.1 數(shù)據(jù)庫(kù)概念設(shè)計(jì)133.3.2 數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)133.4 人機(jī)界面設(shè)計(jì)133.4.1 人機(jī)界面設(shè)計(jì)指南133.4.2 用戶界面

8、設(shè)計(jì)133.5 系統(tǒng)詳細(xì)設(shè)計(jì)133.5.1 入住登記PAD圖133.5.2 房間查詢PAD圖133.5.3 退房管理PAD圖134 系統(tǒng)實(shí)現(xiàn)134.1 語(yǔ)言選擇原因134.2 軟件開(kāi)發(fā)環(huán)境134.3 系統(tǒng)功能實(shí)現(xiàn)134.3.1 管理員登錄134.3.2 空余房間查詢134.3.3 客戶查詢134.3.4 入住登記134.3.5 退房操作134.3.6 今日結(jié)算134.3.7 結(jié)算報(bào)表134.3.8 酒店基本信息管理135 軟件測(cè)試135.1 測(cè)試計(jì)劃的制定135.1.1 調(diào)試計(jì)劃的整體目標(biāo)135.1.2 定義軟件測(cè)試的標(biāo)準(zhǔn)135.1.3 測(cè)試實(shí)施策略的制定135.1.4 軟件測(cè)試管理流程135

9、.1.5 測(cè)試計(jì)劃的要點(diǎn)135.2 測(cè)試的基礎(chǔ)135.2.1 測(cè)試的目標(biāo)135.2.2 白盒測(cè)試和黑盒測(cè)試135.2.3 測(cè)試的準(zhǔn)則135.3 測(cè)試用例設(shè)計(jì)135.3.1 等價(jià)類測(cè)試用例設(shè)計(jì)135.3.2 邊界值測(cè)試用例設(shè)計(jì)135.3.3 功能圖法測(cè)試用例設(shè)計(jì)135.4 軟件可靠性135.4.1 基本定義135.4.2 估算平均無(wú)故障時(shí)間的方法135.4.3 MTTF和ASS的估算13結(jié)論13致13參考文獻(xiàn)13附錄13附錄A JSP Introduction13附錄B JSP介紹13附錄C 程序主要代碼13引 言當(dāng)今時(shí)代的兩個(gè)顯著特點(diǎn)就是世界經(jīng)濟(jì)一體化和以計(jì)算機(jī)為代表的信息技術(shù)的快速發(fā)展。一個(gè)

10、組織要在激烈的競(jìng)爭(zhēng)中保持優(yōu)勢(shì)和不斷發(fā)展,必須對(duì)迅速變化的環(huán)境靈敏地做出有效地反應(yīng)。管理信息系統(tǒng)的應(yīng)用能夠提供這種有效的決策支持。系統(tǒng)效能,是預(yù)期一個(gè)系統(tǒng)滿足一組特定任務(wù)的程度的量度。它是系統(tǒng)綜合性能的反映,是系統(tǒng)的整體屬性。效能評(píng)估,就是要對(duì)系統(tǒng)進(jìn)行綜合分析,把系統(tǒng)的各項(xiàng)性能與任務(wù)要求綜合比較,最終得到表示系統(tǒng)的優(yōu)劣程度的結(jié)果。榮豐酒店管理系統(tǒng)的效能,可以細(xì)分為系統(tǒng)的自身效能和應(yīng)用效能。自身效能是酒店管理系統(tǒng)本身固有的性能,它體現(xiàn)了系統(tǒng)本身的完備性;應(yīng)用效能是酒店管理系統(tǒng)在應(yīng)用過(guò)程中體現(xiàn)的效能,是通過(guò)對(duì)信息的搜集、傳輸和處理對(duì)平時(shí)有利作用的程度。信息管理的過(guò)程包括信息收集、信息傳輸、信息加工和

11、信息儲(chǔ)存。信息收集就是對(duì)原始信息的獲取。信息傳輸是信息在時(shí)間和空間上的轉(zhuǎn)移,因?yàn)樾畔⒅挥信c時(shí)準(zhǔn)確地送到需要者的手中才能發(fā)揮作用。信息加工包括信息形式的變換和信息容的處理。信息的形式變換是指在信息傳輸過(guò)程中,通過(guò)變換載體,使信息準(zhǔn)確地傳輸給接收者。信息的容處理是指對(duì)原始信息進(jìn)行加工整理,深入揭示信息的容。信息送到使用者手中,有的并非使用完后就無(wú)用了。信息系統(tǒng)從技術(shù)上說(shuō)就是為了支持決策和組織控制而收集(或獲?。?、處理、存儲(chǔ)、分配信息的一組相互關(guān)聯(lián)的組件。除了支持決策、協(xié)作和控制,信息系統(tǒng)也可用來(lái)幫助經(jīng)理和工人分子問(wèn)題,使復(fù)雜性可視化,以與創(chuàng)造新的產(chǎn)品,從商業(yè)角度看,一個(gè)信息系統(tǒng)是一個(gè)用于解決環(huán)境提

12、出的挑戰(zhàn)的,基于信息技術(shù)的組織管理方案。我們用“信息系統(tǒng)”這個(gè)詞時(shí),特指依賴于計(jì)算機(jī)技術(shù)的信息系統(tǒng)。一個(gè)基于計(jì)算機(jī)的信息系統(tǒng)是以計(jì)算機(jī)軟件、硬件、存儲(chǔ)和電信等技術(shù)為核心的人機(jī)系統(tǒng)。酒店管理系統(tǒng)主要是從酒店日常管理入手,嚴(yán)格的遵守系統(tǒng)的效能,是一個(gè)結(jié)構(gòu)復(fù)雜、功能強(qiáng)大的管理信息系統(tǒng)。酒店部的基本信息、入住、退房和結(jié)算、房間基本信息的管理是一項(xiàng)重要的任務(wù)。本系統(tǒng)中將引入管理信息系統(tǒng)對(duì)酒店的基本信息、入住、退房和結(jié)算、房間基本信息進(jìn)行管理,可以方便管理員對(duì)酒店信息的查詢,簡(jiǎn)化了酒店管理的統(tǒng)計(jì)計(jì)算,從而真正減少管理員日常的工作量,使管理人員輕松、快捷、高效、高質(zhì)量的完成各項(xiàng)工作。1 基礎(chǔ)知識(shí)1.1 C#

13、語(yǔ)言C#是微軟公司發(fā)布的一種面向?qū)ο蟮摹⑦\(yùn)行于.NET Framework之上的高級(jí)程序設(shè)計(jì)語(yǔ)言。并定于在微軟職業(yè)開(kāi)發(fā)者論壇(PDC)上登臺(tái)亮相。C#是微軟公司研究員Anders Hejlsberg的最新成果。C#看起來(lái)與Java有著驚人的相似;它包括了諸如單一繼承、接口、與Java幾乎同樣的語(yǔ)法和編譯成中間代碼再運(yùn)行的過(guò)程。但是C#與Java有著明顯的不同,它借鑒了Delphi的一個(gè)特點(diǎn),與COM(組件對(duì)象模型)是直接集成的,而且它是微軟公司.NET windows網(wǎng)絡(luò)框架的主角1。 1C#介紹C#(讀做 C sharp,中文譯音暫時(shí)沒(méi)有.專業(yè)人士一般讀C sharp,現(xiàn)在很多非專業(yè)一般讀C

14、井。C#是一種安全的、穩(wěn)定的、簡(jiǎn)單的,由C和C+衍生出來(lái)的面向?qū)ο蟮木幊陶Z(yǔ)言。它在繼承C和C+強(qiáng)大功能的同時(shí)去掉了一些它們的復(fù)雜特性(例如沒(méi)有宏和模版,不允許多重繼承)。C#綜合了VB簡(jiǎn)單的可視化操作和C+的高運(yùn)行效率,以其強(qiáng)大的操作能力、優(yōu)雅的語(yǔ)法風(fēng)格、創(chuàng)新的語(yǔ)言特性和便捷的面向組件編程的支持成為.NET開(kāi)發(fā)的首選語(yǔ)言2。并且C#成為ECMA與ISO標(biāo)準(zhǔn)規(guī)。C#看似基于C+寫(xiě)成,但又融入其它語(yǔ)言如Delphi、Java、VB等。在本文中,我將考察創(chuàng)建一種新計(jì)算機(jī)語(yǔ)言的一般動(dòng)機(jī),并將特別指明是什么原因?qū)е铝薈#的出現(xiàn).然后我將介紹C#和它與Java,c,c+的相似之處.其次我將討論一些存在于J

15、ava和C#之間的高層次的,和基礎(chǔ)的差別。我將以衡量在用多種語(yǔ)言開(kāi)發(fā)大型應(yīng)用程序的時(shí)候所需的知識(shí)(或者對(duì)這種知識(shí)的缺乏程度)來(lái)結(jié)束本文,而這正是.NET和C#的一個(gè)主要戰(zhàn)略。目前,C#和.NET還只能以C#語(yǔ)言規(guī)則,以與Windows 2000的一個(gè)d預(yù)覽版本,還有MSDN上迅速增多的文檔集子的形式獲得(還沒(méi)有最終定型)。2泛型編程介紹微軟本打算繼續(xù)保證開(kāi)發(fā)進(jìn)度,并在2004年推出Visual Studio .NET 2004,但由于其間軟件工程學(xué)尤其是軟件管理學(xué)的大規(guī)模進(jìn)步,微軟所提供的這種僅具備開(kāi)發(fā)和調(diào)試功能的IDE已經(jīng)無(wú)法滿足團(tuán)隊(duì)開(kāi)發(fā)的需求3。因此微軟決定在項(xiàng)目設(shè)計(jì)和管理工具方面進(jìn)行了進(jìn)

16、一步研發(fā),并將其集成到Visual Studio中,以贏回原有的市場(chǎng)。因此,微軟將Visual Studio.NET 2004“改名”為Visual Studio 2005,并決定推遲一年發(fā)布。不過(guò),微軟還是堅(jiān)持在2004年的6月份發(fā)布了Visual Studio2005的第一個(gè)Beta 版,同時(shí)向開(kāi)發(fā)者展示了C#語(yǔ)言的2.0版本4。2005年4月,微軟發(fā)布了Visual Studio 2005 Beta2,這已經(jīng)是具備了幾乎全部功能的VisualStudio,包括的產(chǎn)品有SQL Server2005、Team Foundation Server和TeamSuite。這時(shí)的C#編譯器已經(jīng)能夠處

17、理C# 2.0中所有的新特性5。1.2 SQL Server數(shù)據(jù)庫(kù)介紹SQL Server是微軟公司開(kāi)發(fā)的一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),以Transact SQL的數(shù)據(jù)庫(kù)查詢和編程語(yǔ)言。T-SQL 是結(jié)構(gòu)化查詢語(yǔ)言SQL的一種,支持ANSI SQL92標(biāo)準(zhǔn)。但說(shuō)起它的歷史,卻得從Sybase開(kāi)始的。SQL Server從20 世紀(jì)80年代后期開(kāi)始開(kāi)發(fā),最早起源于1987年的Sybase SQL Server。SQL Server最初是由Microsoft、Sybase 和Ashton-Tate三家公司共同開(kāi)發(fā)的,1988年,Microsoft公司、Sybase公司和Aston-Tate公司把該產(chǎn)品移

18、植到OS/2上。后來(lái)Aston-Tate公司退出了該產(chǎn)品的開(kāi)發(fā),而Microsoft公司、Sybase公司則簽署了一項(xiàng)共同開(kāi)發(fā)協(xié)議,這兩家公司的共同開(kāi)發(fā)結(jié)果是發(fā)布了用于Windows NT操作系統(tǒng)的SQL Server,1992年,將SQL Server移植到了Windows NT平臺(tái)上6。在SQL Server 4版本發(fā)行以后,Microsoft公司和Sybase公司在SQL Server的開(kāi)發(fā)方面分道揚(yáng)鑣,取消了合同,各自開(kāi)發(fā)自己的SQL Server。Microsoft公司專注于Windows NT平臺(tái)上的SQL Server開(kāi)發(fā),而Sybase公司則致力于UNIX平臺(tái)上的SQL Ser

19、ver的開(kāi)發(fā)。本文中介紹的是Microsoft SQL Server 以后簡(jiǎn)稱為SQL Server或MS SQL Server。SQL Server6.0版是第一個(gè)完全由Microsoft公司開(kāi)發(fā)的版本。1996年,Microsoft公司推出了SQL Server 6.5版本,接著在1998年又推出了具有巨大變化的7.0版,這一版本在數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)庫(kù)引擎方面發(fā)生了根本性的變化。又經(jīng)過(guò)兩年的努力開(kāi)發(fā),Microsoft公司于2000年9月布了SQL Server 2000,其中包括企業(yè)版、標(biāo)準(zhǔn)版、開(kāi)發(fā)版、個(gè)人版四個(gè)版本。從SQL Server 7.0到SQL Server 2000的變化是漸進(jìn)

20、的,沒(méi)有從6.5到7.0變化那么大,只是在SQL Server 7.0的基礎(chǔ)上進(jìn)行了增強(qiáng)7。數(shù)據(jù)庫(kù)技術(shù)從60年代末期至今只有不到40年的歷史,但其發(fā)展速度之快是其它技術(shù)所不與的。它已由第一代的層次型、網(wǎng)狀型數(shù)據(jù)庫(kù),第二代的關(guān)系型數(shù)據(jù)庫(kù)發(fā)展到今天以面向?qū)ο鬄橹饕P偷臄?shù)據(jù)庫(kù),即第三代數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)技術(shù)和網(wǎng)絡(luò)通信技術(shù)、面向?qū)ο缶幊碳夹g(shù)、并行計(jì)算機(jī)技術(shù)、人工智能技術(shù)相互融合、相互滲透,促進(jìn)了數(shù)據(jù)庫(kù)技術(shù)的廣泛應(yīng)用8。數(shù)據(jù)庫(kù)通常有兩個(gè)主要部分:一個(gè)是保存物理數(shù)據(jù)庫(kù)的文件,一個(gè)是應(yīng)用程序用于訪問(wèn)數(shù)據(jù)的數(shù)據(jù)庫(kù)管理系統(tǒng) (DBMS) 軟件。DBMS 負(fù)責(zé)維護(hù)數(shù)據(jù)庫(kù)的結(jié)構(gòu),包括: 1據(jù)庫(kù)數(shù)據(jù)間的關(guān)系。2數(shù)據(jù)存儲(chǔ)

21、正確,定義數(shù)據(jù)間關(guān)系的規(guī)則未被違反。3系統(tǒng)崩潰的情況下,按照已知的一致性程度恢復(fù)所有數(shù)據(jù)。2 系統(tǒng)分析2.1 開(kāi)發(fā)背景與意義信息在社會(huì)和經(jīng)濟(jì)的發(fā)展中所起的作用越來(lái)越為人們所重視。信息資源的開(kāi)發(fā)利用水平成為衡量一個(gè)國(guó)家綜合國(guó)力的重要標(biāo)志之一。計(jì)算機(jī)作為信息處理的工具,為適應(yīng)數(shù)據(jù)處理需求的迅速提高,滿足各類信息系統(tǒng)對(duì)數(shù)據(jù)管理的要求,在文件系統(tǒng)的基礎(chǔ)上發(fā)展基礎(chǔ)數(shù)據(jù)庫(kù)系統(tǒng),數(shù)據(jù)庫(kù)方法針對(duì)事物處理量數(shù)據(jù)管理需求。我國(guó)自從80年代上半期,國(guó)家計(jì)委統(tǒng)計(jì)局計(jì)算中心在第一次全國(guó)人口普查、工業(yè)普查中使用了數(shù)據(jù)庫(kù)管理技術(shù)以來(lái),隨著微機(jī)管理系統(tǒng)的推廣,數(shù)據(jù)庫(kù)信息管理系統(tǒng)的應(yīng)用逐漸展露頭腳,但是也由于發(fā)展晚起步低的原因

22、和當(dāng)代技術(shù)的占有獨(dú)享性質(zhì),導(dǎo)致我國(guó)雖然在這方面發(fā)展迅速但是發(fā)展規(guī)模普遍都是中小型方向而且運(yùn)作機(jī)制還很不完善。酒店管理是一項(xiàng)瑣碎、復(fù)雜而又十分細(xì)致的工作,工作量很大,一般不允許出錯(cuò),如果實(shí)行手工操作,每天須手工填制大量的表格,這就會(huì)耗費(fèi)工作人員大量的時(shí)間和精力,利用計(jì)算機(jī)進(jìn)行酒店日常管理,不僅能夠保證核算準(zhǔn)確無(wú)誤、快速輸出,而且還可以利用計(jì)算機(jī)對(duì)有關(guān)的各種信息進(jìn)行統(tǒng)計(jì),同時(shí)計(jì)算機(jī)具有手工管理所無(wú)法比擬的優(yōu)點(diǎn)。例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極提高酒店管理的效率,也是酒店管理管理科學(xué)化、正規(guī)化,與世界接軌的重要條件。2.2 可行性研究系統(tǒng)的可行性研

23、究在系統(tǒng)的整個(gè)過(guò)程中占有很重要的地位,它決定所選項(xiàng)目是不是可能實(shí)現(xiàn)或值得去實(shí)現(xiàn)??尚行匝芯康哪康木褪怯米钚〉拇鷥r(jià)在盡可能短的時(shí)間確定問(wèn)題是否能夠解決。它主要包括技術(shù)、經(jīng)濟(jì)、運(yùn)行、法律等方面的可行性:現(xiàn)有技術(shù)是否能夠?qū)崿F(xiàn)本系統(tǒng)的設(shè)計(jì)開(kāi)發(fā);經(jīng)濟(jì)上是否值得去實(shí)現(xiàn);是否能夠在一般平臺(tái)下運(yùn)行等。技術(shù)可行性是指開(kāi)發(fā)一個(gè)新系統(tǒng)所需要的技術(shù)是否具備,如支持新系統(tǒng)的軟硬件功能以與技術(shù)人員的數(shù)量和水平。本系統(tǒng)是進(jìn)行酒店日常管理,所以結(jié)合實(shí)際需要,經(jīng)過(guò)仔細(xì)斟酌,本系統(tǒng)的開(kāi)發(fā)過(guò)程采用的是C#+windows窗體的模式。使用SQL Server 2005作為后臺(tái)數(shù)據(jù)管理系統(tǒng),而在前端使用dataGridView組件來(lái)訪

24、問(wèn)實(shí)際的數(shù)據(jù)庫(kù),這樣就基本實(shí)現(xiàn)了程序代碼和數(shù)據(jù)庫(kù)的無(wú)關(guān)性。經(jīng)濟(jì)可行性是評(píng)價(jià)一個(gè)計(jì)算機(jī)管理系統(tǒng)是否可行的最基本的一種方法,是對(duì)管理系統(tǒng)解決方案的成本有效性的量度。管理系統(tǒng)的開(kāi)發(fā)是一種投資,因此對(duì)于酒店來(lái)說(shuō),首先關(guān)心的是,是否值得開(kāi)發(fā)一個(gè)酒店管理系統(tǒng)。而在效益方面,首先關(guān)心的是,當(dāng)使用了這套管理系統(tǒng)后,酒店日常管理的效率是否提高了,人員使用的資金是否節(jié)省了。而本系統(tǒng)的設(shè)計(jì)和開(kāi)發(fā)事實(shí)上恰好能滿足其這些要求。還有該系統(tǒng)對(duì)硬件的要求不高,而且由于.NET系統(tǒng)的可移植性,只要是裝有Windows系列操作系統(tǒng)的計(jì)算機(jī)通過(guò)配置一般就能運(yùn)行系統(tǒng),所以在系統(tǒng)運(yùn)行方面也不存在問(wèn)題。運(yùn)行可行性方面,酒店管理系統(tǒng)是酒店

25、日常操作進(jìn)行統(tǒng)一的管理,可以簡(jiǎn)單方便高效的進(jìn)行錄入、查詢、修改、刪除、退出。隨時(shí)把握酒店部的情況,為酒店日常管理管理提供了解決方案。2.3 功能需求榮豐酒店管理系統(tǒng)主要實(shí)現(xiàn)對(duì)酒店部信息的操作和管理,系統(tǒng)的用戶是負(fù)責(zé)管理設(shè)備的管理人員,系統(tǒng)具有房間信息查詢、入住與退房操作管理、房?jī)r(jià)調(diào)整管理、結(jié)算管理等主要功能。2.3.1 用例分析用例圖主要用來(lái)圖示化系統(tǒng)的主事件流程,它主要用來(lái)描述需求,即希望系統(tǒng)具備的完成一定功能的動(dòng)作,通俗地理解用例就是軟件的功能模塊,是設(shè)計(jì)系統(tǒng)分析階段的起點(diǎn),設(shè)計(jì)人員根據(jù)需求來(lái)創(chuàng)建和解釋用例圖,用來(lái)描述軟件應(yīng)具備哪些功能模塊以與這些模塊之間的調(diào)用關(guān)系,用例圖圖符如表2.1所

26、示。表2.1 uml用例圖圖符可視化圖符名稱描述系統(tǒng)用來(lái)表示系統(tǒng)邊界,所有用例放在系統(tǒng)之中 用例用來(lái)表示用例圖中的用例 執(zhí)行者用于描述與系統(tǒng)功能有關(guān)的外部實(shí)體,可以是用戶,也可以是外部系統(tǒng)關(guān)聯(lián)連接執(zhí)行者和用例通過(guò)系統(tǒng)的功能需求分析,可得到系統(tǒng)的執(zhí)行者為管理員、管理員添加人員和數(shù)據(jù)庫(kù)系統(tǒng),系統(tǒng)的用例為結(jié)算管理、酒店基本信息管理、入住管理、房間狀態(tài)管理、續(xù)費(fèi)管理和退房管理,系統(tǒng)總體用例圖如圖2.1所示。圖2.1 系統(tǒng)總體用例圖結(jié)算管理:對(duì)酒店當(dāng)日與按月份的結(jié)算信息進(jìn)行統(tǒng)計(jì)計(jì)算,如果有必要,還可以打印導(dǎo)出詳細(xì)信息,為了能更快更準(zhǔn)的對(duì)賬目信息進(jìn)行查看,可以進(jìn)行賬目信息詳細(xì)報(bào)表,結(jié)算管理的用例圖如圖2.

27、2所示。圖2.2 結(jié)算管理用例圖酒店基本信息管理:對(duì)酒店中的所有的房間和人員信息進(jìn)行添加信息、核實(shí)并修改現(xiàn)有信息等操作,并且可以查看房間價(jià)格信息,如果需要調(diào)整房間價(jià)格,可以進(jìn)行總體修改,酒店基本信息管理用例圖如圖2.3所示。圖2.3 酒店基本信息管理用例圖入住管理:對(duì)前來(lái)入住的客戶進(jìn)行統(tǒng)一的登記。可根據(jù)要入住的房間類型,填寫(xiě)相應(yīng)的信息并實(shí)現(xiàn)錄入數(shù)據(jù)庫(kù)。同時(shí)相應(yīng)的房間信息也會(huì)跟隨改變,并將本次操作的金額存入結(jié)算信息表中,以備以后核對(duì)賬目,入住管理的用例圖如圖2.4所示。圖2.4 入住管理用例圖房間狀態(tài)管理:可以根據(jù)選擇的房間類型與房間狀態(tài)信息來(lái)分類顯示當(dāng)前符合條件的信息記錄,以便登記入住時(shí)的房間

28、狀態(tài)查詢之用,房間狀態(tài)查詢用例圖如圖2.5所示。圖2.5 房間狀態(tài)查詢用例圖續(xù)費(fèi)管理:可以對(duì)已登記入住的客戶房間進(jìn)行續(xù)費(fèi)操作、同時(shí)會(huì)將記錄信息添加到相應(yīng)的收費(fèi)報(bào)表容里,以便日后核對(duì),續(xù)費(fèi)管理的用例圖如圖2.6所示。圖2.6 續(xù)費(fèi)管理用例圖退房管理:可以已入住房間的基本信息,為了方便用戶簡(jiǎn)化操作,退房時(shí)會(huì)自動(dòng)計(jì)算用戶當(dāng)前所剩余金額并找零,用戶管理的用例圖如圖2.7所示。圖2.7用戶管理用例圖2.3.2 概念類描述類圖是由若干類關(guān)聯(lián)在一起,反映系統(tǒng)或者子系統(tǒng)組成結(jié)構(gòu)的靜態(tài)圖。類圖的建模貫穿工程的分析和設(shè)計(jì)階段的始終,通常從商務(wù)伙伴能夠理解的類開(kāi)始建模,最終往往成為只有開(kāi)發(fā)小組才能夠完全理解的類。類

29、圖是在面向?qū)ο蟮南到y(tǒng)模型中使用得最普遍的圖。類圖包含了一組類、接口和協(xié)作以與其之間的關(guān)系。使用類圖來(lái)為系統(tǒng)的靜態(tài)視圖建模。通常這包括模型化系統(tǒng)的詞匯(從系統(tǒng)的詞匯表中發(fā)現(xiàn)類),模型化協(xié)作,或則模型化模式。類圖還是一些相關(guān)的圖的基礎(chǔ),包括組件圖、分布圖。類圖的重要性不僅僅體現(xiàn)在為系統(tǒng)建立可視化的、文檔化的結(jié)構(gòu)模型,同樣重要的是構(gòu)建通過(guò)正向和反向工程建立執(zhí)行系統(tǒng)。沒(méi)有類是單獨(dú)存在的,類通常和別的類協(xié)作,創(chuàng)造比單獨(dú)工作更大的語(yǔ)義。使用類圖來(lái)表達(dá)這種協(xié)作,類圖圖符如表2.2所示。表2.2 類圖圖符可視化圖符名稱描述類表示具體的一個(gè)類,第一欄為類名,第二欄為類的屬性,第三欄為類的方法包一種分組機(jī)制,表示

30、一個(gè)類圖的集合關(guān)聯(lián)表示類的對(duì)象間的關(guān)系,包括聚集關(guān)聯(lián)和組成關(guān)聯(lián)泛化關(guān)系描述類或包的一般元素與特殊元素之間的分類關(guān)系創(chuàng)建類圖最好的起點(diǎn)是用例圖,根據(jù)上面的用例圖很容易確定類與其關(guān)聯(lián)、屬性和操作。概念類的類圖如圖2.8所示。圖2.8 概念類類圖2.3.3 行為描述系統(tǒng)的行為是通過(guò)對(duì)象的動(dòng)作來(lái)描述的,通??梢酝ㄟ^(guò)順序圖來(lái)描述對(duì)象之間如何進(jìn)行消息的傳遞。順序圖是一種動(dòng)態(tài)建模方法。一般用于確認(rèn)和豐富一個(gè)使用情境的邏輯。一個(gè)使用情境就是系統(tǒng)潛在的使用方式的描述,也就是它的名稱所要描述的。通過(guò)觀察什么消息被發(fā)送給一個(gè)對(duì)象,以與通過(guò)概略的觀察運(yùn)行被調(diào)用的方法需要花費(fèi)多長(zhǎng)時(shí)間,很快就能了解哪里的設(shè)計(jì)需要變化,以

31、達(dá)到在系統(tǒng)部平衡負(fù)荷的目的,uml順序圖圖符如表2.3所示。表2.3 uml順序圖圖符可視化圖符名稱描述帶有生命線的對(duì)象用于表示順序圖中參與交互的對(duì)象激活表示在這個(gè)時(shí)間段,對(duì)象處于活動(dòng)狀態(tài)消息用于表示對(duì)象之間傳遞的消息返回消息用于表示對(duì)象之間傳遞的消息要繪制系統(tǒng)的順序圖首先要了解系統(tǒng)的過(guò)程,根據(jù)系統(tǒng)類圖中的方法可以獲得詳細(xì)的系統(tǒng)過(guò)程,系統(tǒng)管理操作順序圖如圖2.9所示。2.4 性能需求系統(tǒng)的性能是系統(tǒng)的一種非功能特性,它關(guān)注的不是系統(tǒng)是否能夠完成特定的功能,而是在完成功能時(shí)展示出來(lái)的與時(shí)性。為了能夠客觀地度量系統(tǒng)的性能,定義了一系列的性能指標(biāo),以便于在不同情況下度量系統(tǒng)的性能。2.4.1 響應(yīng)時(shí)

32、間響應(yīng)時(shí)間是指在操作系統(tǒng)中,用戶發(fā)出請(qǐng)求或者指令到系統(tǒng)做出反應(yīng)(響應(yīng))的時(shí)間。在討論系統(tǒng)的響應(yīng)時(shí)間時(shí),通常是指系統(tǒng)所有功能的平均響應(yīng)時(shí)間或者所有功能的最大響應(yīng)時(shí)間。對(duì)一個(gè)系統(tǒng),其響應(yīng)時(shí)間如果小于1秒應(yīng)該是不錯(cuò)的,如果達(dá)到5秒就完全難以接受了。2.4.2 吞吐量吞吐量是指在沒(méi)有幀丟失的情況下,軟件能夠接受的最大速率。對(duì)于無(wú)并發(fā)的系統(tǒng)而言,吞吐量與響應(yīng)時(shí)間成嚴(yán)格的反比關(guān)系,實(shí)現(xiàn)上此時(shí)吞吐量就是響應(yīng)時(shí)間的倒數(shù)。由于本系統(tǒng)的響應(yīng)時(shí)間比較短,所以系統(tǒng)的吞吐量比較大。圖2.9 系統(tǒng)管理操作順序圖2.4.3 并發(fā)用戶數(shù)并發(fā)用戶數(shù)是同時(shí)執(zhí)行一個(gè)操作的用戶,或者是同時(shí)執(zhí)行腳本的用戶,這個(gè)并發(fā)在設(shè)置不同場(chǎng)景的時(shí)候

33、并發(fā)的情況是不一樣的,在實(shí)際的測(cè)試中需要根據(jù)具體的需求進(jìn)行設(shè)計(jì)。實(shí)際上,并發(fā)用戶數(shù)是一個(gè)非常不準(zhǔn)確的指標(biāo),因?yàn)橛脩舨煌氖褂媚J綍?huì)導(dǎo)致不同用戶在單位時(shí)間發(fā)出不同數(shù)量的請(qǐng)求。2.4.4 資源利用率資源利用率反映的是在一段時(shí)間資源平均占用的情況。對(duì)于數(shù)量為1的資源(如CPU),資源利用率可以表示為資源被占用的時(shí)間與整段時(shí)間的比值;對(duì)于數(shù)量不為1的資源(如存),資源利用率可以表示為在該段時(shí)間平均被占用的資源數(shù)與總資源數(shù)的比值。2.5 環(huán)境需求2.5.1 硬件環(huán)境介于本軟件采用的數(shù)據(jù)庫(kù)連接方式而定,并不存在C/S,B/S結(jié)構(gòu),而是單一的操作端,服務(wù)端一體化結(jié)構(gòu),數(shù)據(jù)庫(kù)連接方式也是默認(rèn)為本地,所以本系統(tǒng)

34、操作端的配置如下:處理器:Inter Pentium4 2.4GHz 或更高存:256MB硬盤(pán)空間:80GB顯卡:GF5200。因?yàn)椴僮鞫送瑫r(shí)進(jìn)行數(shù)據(jù)處理和操作執(zhí)行,因此需要的配置應(yīng)該高于下面的配置:處理器: Inter Pentium3 1.6GHz 或更高存: 128MB硬盤(pán)空間:40GB顯卡: MX440。2.5.2 軟件環(huán)境操作端要求如下:操作系統(tǒng):Windows 2000 Server或更高版本W(wǎng)indows網(wǎng)絡(luò)協(xié)議:TCP/IP系統(tǒng)軟件:Microsoft Visual Studio 2005或更高版本數(shù)據(jù)庫(kù): Mircrosoft SQLserver2005應(yīng)用軟件:Micros

35、oft Office2003或更高版本3 系統(tǒng)設(shè)計(jì)3.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)3.1.1 軟件設(shè)計(jì)的原則1模塊化模塊化就是把程序劃分成獨(dú)立命名且可獨(dú)立訪問(wèn)的模塊,每個(gè)模塊完成一個(gè)子功能,把這些模塊集成起來(lái)構(gòu)成一個(gè)整體,可以完成指定的功能滿足用戶的需求。下面五條標(biāo)準(zhǔn)可以評(píng)價(jià)一種設(shè)計(jì)方法定義有效的模塊系統(tǒng)的能力。(1)模塊可分解性如果一種設(shè)計(jì)方法提供了把問(wèn)題分解為子問(wèn)題的系統(tǒng)化機(jī)制,它就能降低整個(gè)問(wèn)題的復(fù)雜性,從而可以實(shí)現(xiàn)一種有效的模塊化解決方案。(2)模塊可組裝性如果一種設(shè)計(jì)方法能把現(xiàn)有的(可重用的)設(shè)計(jì)構(gòu)件組裝成新系統(tǒng),它就能提供一種并非一切都從頭開(kāi)始做的模塊化解決方案。(3)模塊可理解性如果可以把一

36、個(gè)模塊作為一種獨(dú)立單元(無(wú)需參考其他模塊)來(lái)理解,那么,這樣的模塊是易于構(gòu)造和易于修改的。(4)模塊連續(xù)性如果對(duì)系統(tǒng)需求的微小修改只導(dǎo)致對(duì)個(gè)別模塊,而不是對(duì)整個(gè)系統(tǒng)的修改,則修改所引起的副作用將最小。(5)模塊保護(hù)性如果在一個(gè)模塊出現(xiàn)異常情況時(shí),它的影響局限在該模塊部,則由錯(cuò)誤引起的副作用將最。采用模塊化原理可以使軟件結(jié)構(gòu)清晰,不僅容易設(shè)計(jì)也容易閱讀和理解。模塊化也有助于軟件開(kāi)發(fā)工程的組織管理,一個(gè)復(fù)雜的大型程序可以由許多程序員分工編寫(xiě)不同的模塊,并且可以進(jìn)一步分配技術(shù)熟練的程序員編寫(xiě)困難的模塊。2抽象人類在實(shí)踐中認(rèn)識(shí)到,在現(xiàn)實(shí)世界中一定事物、狀態(tài)或過(guò)程之間總存在著某些相似的方面。把這些相似的

37、方面集中和概括起來(lái),暫時(shí)忽略它們之間的差異,這就是抽象。3逐步求精逐步求精是人類解決復(fù)雜問(wèn)題時(shí)采用的基本技術(shù),是許多軟件工程技術(shù)的基礎(chǔ)??砂阎鸩角缶x為:“為了能集中精力解決主要問(wèn)題而盡量推遲對(duì)問(wèn)題細(xì)節(jié)的考慮。”求精實(shí)際上是細(xì)化過(guò)程。要從在高抽象級(jí)別定義的功能述(或信息描述)開(kāi)始。求精要求設(shè)計(jì)者細(xì)化原始述,隨著每個(gè)后續(xù)求精(細(xì)化)步驟的完成而提供越來(lái)越多的細(xì)節(jié)。4信息隱藏應(yīng)用模塊化原理時(shí),自然會(huì)產(chǎn)生的一個(gè)問(wèn)題是:“為了得到最好的一組模塊,應(yīng)該怎樣分解軟件”。信息隱藏原理指出:應(yīng)該這樣設(shè)計(jì)和確定模塊,使得一個(gè)模塊包含的信息(過(guò)程和數(shù)據(jù))對(duì)于不需要這些信息的模塊來(lái)說(shuō),是不能訪問(wèn)的。3.1.2 系

38、統(tǒng)層次結(jié)構(gòu)HIPO圖是IBM公司發(fā)明的“層次圖加輸人/處理/輸出圖”的英文縮寫(xiě)。它既可以描述軟件總的模塊層次結(jié)構(gòu)H圖(層次圖),又可以描述每個(gè)模塊輸入/輸出數(shù)據(jù)/處理功能與模塊調(diào)用的詳細(xì)情況IPO圖(也稱IPO表)。HIPO圖以模塊分解的層次性以與模塊部輸入、處理、輸出三大基本部分為基礎(chǔ)建立的。本系統(tǒng)的最頂層的矩形框代表酒店管理系統(tǒng)的主控模塊,調(diào)用下層模塊以完成全部管理功能;第二層的每個(gè)模塊控制完成系統(tǒng)的一個(gè)主要功能,如此實(shí)現(xiàn)自頂向下逐步求精,系統(tǒng)的H圖如圖3.1所示。圖3.1 系統(tǒng)的H圖H圖只說(shuō)明了系統(tǒng)由那些模塊組成與其控制層次結(jié)構(gòu),并未說(shuō)明模塊間的信息傳遞與模塊部的處理。因此對(duì)一些重要模塊

39、還必須根據(jù)H圖繪制具體的IPO表。用戶和管理人員可利用IPO表編寫(xiě)、修改和維護(hù)程序。IPO表中包含的附加信息主要有系統(tǒng)名稱、圖的作者,完成的日期,本圖描述的模塊的名字,模塊在層次圖中的編號(hào),調(diào)用本模塊的模塊清單,本模塊調(diào)用的模塊的清單、注釋以與本模塊使用的局部數(shù)據(jù)元素等。房間查詢的上層調(diào)用模塊為客房管理,沒(méi)有下層模塊可調(diào)用,房間查詢的IPO表如表3.1所示。表3.1房間查詢的IPO表系統(tǒng)名稱:榮豐酒店管理系統(tǒng)設(shè)計(jì)者:唐睿模塊名:房間查詢?nèi)掌冢?009-11-20模塊編號(hào):1.1上層調(diào)用模塊:客房管理下層被調(diào)用的模塊:無(wú)輸入數(shù)據(jù):要查詢的房間信息輸出數(shù)據(jù):查詢得到的結(jié)果處理:根據(jù)查詢的信息判斷庫(kù)

40、中是否有相應(yīng)的記錄,如果有則顯示查詢的結(jié)果客戶查詢的上層調(diào)用模塊為客房管理,沒(méi)有下層模塊可調(diào)用,客戶查詢的IPO表如表3.2所示。表3.2客戶查詢的IPO表系統(tǒng)名稱:榮豐酒店管理系統(tǒng)設(shè)計(jì)者:唐睿模塊名:客戶查詢?nèi)掌冢?009-11-20模塊編號(hào):1.2上層調(diào)用模塊:客房管理下層被調(diào)用的模塊:無(wú)輸入數(shù)據(jù):要查詢的客戶信息輸出數(shù)據(jù):查詢得到的結(jié)果處理:判斷修改信息的合法性,查詢成功后顯示查詢的結(jié)果3.2 設(shè)計(jì)階段類圖在系統(tǒng)分析階段,已經(jīng)找出了主要的概念類和類的方法、類間的關(guān)系。到了系統(tǒng)設(shè)計(jì)階段,需要從軟件系統(tǒng)的角度來(lái)重新設(shè)計(jì)類圖。分析階段的類到了設(shè)計(jì)階段有的可能變成一組類,有的可能消失。分析階段的

41、類圖主要是用來(lái)描述現(xiàn)實(shí)世界中的問(wèn)題;而設(shè)計(jì)階段的類圖主要是對(duì)解決方案進(jìn)行描述。因此設(shè)計(jì)階段的類圖描述了軟件的系統(tǒng)結(jié)構(gòu)。創(chuàng)建設(shè)計(jì)類圖的過(guò)程包括以下幾步:1識(shí)別設(shè)計(jì)階段出現(xiàn)的類,為這些類添加屬性和方法。2建立類間關(guān)系,最終完成對(duì)屬性和方法的細(xì)節(jié)描述。系統(tǒng)設(shè)計(jì)階段的類圖如圖3.2所示。圖3.2 系統(tǒng)設(shè)計(jì)階段的類圖3.3 數(shù)據(jù)庫(kù)設(shè)計(jì)3.3.1 數(shù)據(jù)庫(kù)概念設(shè)計(jì)1.EnterUser表:存儲(chǔ)操作員的基本信息。2.Room表:存儲(chǔ)酒店客房的基本信息。3.Customer表:存儲(chǔ)入住客戶的基本信息。4.Balance表:存儲(chǔ)酒店日常賬目的基本信息。3.3.2 數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)EnterUser表是用來(lái)存放操作員

42、的詳細(xì)信息的數(shù)據(jù)表,里面存有不同級(jí)別的用戶,可以在系統(tǒng)中實(shí)現(xiàn)不同的功能操作,容如表3.3所示。表3.3 EnterUser表字段字段名類型長(zhǎng)度允許空備注用戶名稱UserNamechar10N主鍵用戶密碼UserPwdchar8N用戶權(quán)限UserPowernchar4NRoom表包括房間編號(hào)、房間類型、入住日期、退房日期等其他有關(guān)房間信息的一切特征信息。由于和很多容相互關(guān)聯(lián),所以合并為一個(gè)數(shù)據(jù)表,容如表3.4所示。表3.4 Room表字段字段名類型長(zhǎng)度允許空備注房間編號(hào)RIDchar3N房間類型RTypenchar3N入住日期RFromDatedatetime19Y到期時(shí)間RToDatedate

43、time19Y房間狀態(tài)RStatusnchar3N是否含有早餐RBreakfastnchar1N房間價(jià)格RPricesmallmoney12N已付押金RDepositsmallmoney12NCustomer表是用來(lái)存放酒店登記入住客戶人員的數(shù)據(jù)表,也就是當(dāng)有客人入住本酒店時(shí)客人的身份信息將會(huì)保存在此表中,而退房離開(kāi)時(shí)自動(dòng)在此表中消除相應(yīng)的客戶記錄,容如表3.5所示。表3.5 Customer表字段字段名類型長(zhǎng)度允許空備注房間編號(hào)RIDchar3Y客戶CNamenchar4Y客戶性別CGendrnchar1Y客戶證件號(hào)CIDchar18YBalance表是用來(lái)存所有有關(guān)金額操作記錄的數(shù)據(jù)表,當(dāng)

44、用戶進(jìn)行退房,入住,續(xù)費(fèi)等操作時(shí),將會(huì)自動(dòng)保存在該表中,容如表3.6所示。表3.6 Balance表字段字段名類型長(zhǎng)度允許空備注金額日期BDatedatetime19N收入金額BEarningsmallmoney12N支出金額BPayoutsmallmoney12N房間編號(hào)BRoomchar3N3.4 人機(jī)界面設(shè)計(jì)3.4.1 人機(jī)界面設(shè)計(jì)指南用戶界面設(shè)計(jì)主要依靠設(shè)計(jì)者的經(jīng)驗(yàn)。總結(jié)眾多設(shè)計(jì)者的經(jīng)驗(yàn)而得出的設(shè)計(jì)指南,有助于設(shè)計(jì)者設(shè)計(jì)出友好、高效的人機(jī)界面。人機(jī)界面的設(shè)計(jì)過(guò)程可分為以下幾個(gè)步驟:1. 創(chuàng)建系統(tǒng)功能的外部模型設(shè)計(jì)模型主要是考慮軟件的數(shù)據(jù)結(jié)構(gòu)、總體結(jié)構(gòu)和過(guò)程性描述,界面設(shè)計(jì)一般只作為附屬

45、品,只有對(duì)用戶的情況(包括年齡、性別、心理情況、文化程度、個(gè)性、種族背景等)有所了解,才能設(shè)計(jì)出有效的用戶界面;根據(jù)終端用戶對(duì)未來(lái)系統(tǒng)的假想(簡(jiǎn)稱系統(tǒng)假想)設(shè)計(jì)用戶模型,最終使之與系統(tǒng)實(shí)現(xiàn)后得到的系統(tǒng)映象(系統(tǒng)的外部特征)相吻合,用戶才能對(duì)系統(tǒng)感到滿意并能有效的使用它;建立用戶模型時(shí)要充分考慮系統(tǒng)假想給出的信息,系統(tǒng)映象必須準(zhǔn)確地反映系統(tǒng)的語(yǔ)法和語(yǔ)義信息。總之,只有了解用戶、了解任務(wù)才能設(shè)計(jì)出好的人機(jī)界面。2. 確定為完成此系統(tǒng)功能人和計(jì)算機(jī)應(yīng)分別完成的任務(wù)任務(wù)分析有兩種途徑。一種是從實(shí)際出發(fā),通過(guò)對(duì)原有處于手工或半手工狀態(tài)下的應(yīng)用系統(tǒng)的剖析,將其映射為在人機(jī)界面上執(zhí)行的一組類似的任務(wù);另一種

46、是通過(guò)研究系統(tǒng)的需求規(guī)格說(shuō)明,導(dǎo)出一組與用戶模型和系統(tǒng)假想相協(xié)調(diào)的用戶任務(wù)。逐步求精和面向?qū)ο蠓治龅燃夹g(shù)同樣適用于任務(wù)分析。逐步求精技術(shù)可把任務(wù)不斷劃分為子任務(wù),直至對(duì)每個(gè)任務(wù)的要求都十分清楚;而采用面向?qū)ο蠓治黾夹g(shù)可識(shí)別出與應(yīng)用有關(guān)的所有客觀的對(duì)象以與與對(duì)象關(guān)聯(lián)的動(dòng)作。3. 考慮界面設(shè)計(jì)中的典型問(wèn)題設(shè)計(jì)任何一個(gè)機(jī)界面,一般必須考慮系統(tǒng)響應(yīng)時(shí)間、用戶求助機(jī)制、錯(cuò)誤信息處理和命令方式四個(gè)方面。系統(tǒng)響應(yīng)時(shí)間過(guò)長(zhǎng)是交互式系統(tǒng)中用戶抱怨最多的問(wèn)題,除了響應(yīng)時(shí)間的絕對(duì)長(zhǎng)短外,用戶對(duì)不同命令在響應(yīng)時(shí)間上的差別亦很在意,若過(guò)于懸殊用戶將難以接受;用戶求助機(jī)制宜采用集成式,避免疊加式系統(tǒng)導(dǎo)致用戶求助某項(xiàng)指南而

47、不得不瀏覽大量無(wú)關(guān)信息;錯(cuò)誤和警告信息必須選用用戶明了、含義準(zhǔn)確的術(shù)語(yǔ)描述,同時(shí)還應(yīng)盡可能提供一些有關(guān)錯(cuò)誤恢復(fù)的建議。此外,顯示出錯(cuò)信息時(shí),若再輔以聽(tīng)覺(jué)(鈴聲)、視覺(jué)(專用顏色)刺激,則效果更佳;命令方式最好是菜單與鍵盤(pán)命令并存,供用戶選用。4. 借助CASE工具構(gòu)造界面原型真正實(shí)現(xiàn)設(shè)計(jì)模型軟件模型一旦確定,即可構(gòu)造一個(gè)軟件原形,此時(shí)僅有用戶界面部分,此原形交用戶評(píng)審,根據(jù)反饋意見(jiàn)修改后再交給用戶評(píng)審,直至與用戶模型和系統(tǒng)假想一致為止。一般可借助于用戶界面工具箱(Userinterfacetoolkits)或用戶界面開(kāi)發(fā)系統(tǒng)(Userinterfacedevelopmentsystems)提供

48、的現(xiàn)成的模塊或?qū)ο髣?chuàng)建各種界面基本成分的工作。3.4.2 用戶界面設(shè)計(jì)本系統(tǒng)的管理員在使用該系統(tǒng)時(shí),首先要通過(guò)管理員登錄模塊對(duì)身份進(jìn)行驗(yàn)證,當(dāng)確認(rèn)和法后可進(jìn)入系統(tǒng)的主界面。系統(tǒng)主界面要提供包括信息查詢、入住與退房、結(jié)算、報(bào)表、酒店基本信息管理、幫助等模塊的。每個(gè)模塊都具有自己的頁(yè)面和功能,根據(jù)人機(jī)界面設(shè)計(jì)指南和模塊功能可以設(shè)計(jì)用戶界面。由于系統(tǒng)的用戶界面眾多,不可能將所有的用戶界面都進(jìn)行簡(jiǎn)介,為了能看到直觀的用戶界面,在此僅以用戶主界面、入住登記界面、結(jié)算報(bào)表等為例,進(jìn)行簡(jiǎn)介。系統(tǒng)管理員通過(guò)管理員登錄界面輸入相應(yīng)信息,系統(tǒng)對(duì)其身份進(jìn)行驗(yàn)證,驗(yàn)證合法后便可以進(jìn)入到系統(tǒng)的主界面。系統(tǒng)主界面如圖3.

49、3所示。圖3.3 系統(tǒng)主界面在系統(tǒng)的主界面中可以看到信息查詢、入住與退房、結(jié)算、報(bào)表、酒店基本信息管理、幫助等菜單操作界面,入住登記的用戶界面如圖3.4所示。圖3.4 入住登記界面在系統(tǒng)的主界面中可以看到報(bào)表模塊,在報(bào)表模塊中可以對(duì)結(jié)算進(jìn)行報(bào)表操作,結(jié)算報(bào)表的用戶界面如圖3.5所示。圖3.5 結(jié)算報(bào)表界面3.5 系統(tǒng)詳細(xì)設(shè)計(jì)程序員根據(jù)這個(gè)藍(lán)圖寫(xiě)出實(shí)際的代碼。因此,過(guò)程設(shè)計(jì)的結(jié)果基本上決定了最終的程序代碼的質(zhì)量。過(guò)程設(shè)計(jì)的任務(wù)不是具體地編寫(xiě)程序,而是要設(shè)計(jì)出程序的“藍(lán)圖”,在軟件的生命周期中,實(shí)際上對(duì)于長(zhǎng)期使用的軟件系統(tǒng)而言,人讀程序的時(shí)間可能比寫(xiě)程序的時(shí)間還要長(zhǎng)得多。因此,衡量程序的質(zhì)量不僅要

50、看它的邏輯是否正確,性能是否滿足要求,更主要的是要看它是否容易閱讀和理解。過(guò)程設(shè)計(jì)的目標(biāo)不僅僅是邏輯上正確地實(shí)現(xiàn)每個(gè)模塊的功能,更重要的是設(shè)計(jì)出的處理過(guò)程應(yīng)該盡可能簡(jiǎn)明易懂。結(jié)構(gòu)程序設(shè)計(jì)技術(shù)是實(shí)現(xiàn)上述目標(biāo)的關(guān)鍵技術(shù),因此是過(guò)程設(shè)計(jì)的邏輯基礎(chǔ)。PAD 是問(wèn)題分析圖(Problem Analysis Diagram)的英文縮寫(xiě),它用二維樹(shù)形結(jié)構(gòu)的圖來(lái)表示程序的控制流,是一種用結(jié)構(gòu)化程序設(shè)計(jì)思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具,將這種圖翻譯成程序代碼比較容易。PAD圖的主要優(yōu)點(diǎn)如下:(1)使用表示結(jié)構(gòu)化控制的PAD符號(hào)所設(shè)計(jì)出來(lái)的程序必然是結(jié)構(gòu)化程序。(2)PAD圖描述的程序結(jié)構(gòu)十分清晰。圖中最左面的豎線

51、是程序的主線,即第一層結(jié)構(gòu)。隨著程序?qū)哟卧黾?,PAD圖逐漸向右延伸,每增加一個(gè)層次,圖形向右擴(kuò)展一條豎線,PAD圖中豎線的總條數(shù)就是程序的層次數(shù)。(3)用 PAD 圖表現(xiàn)程序邏輯易讀、易懂、易記。 PAD圖是二維樹(shù)形結(jié)構(gòu)的圖形,程序從圖中最左豎線上端的結(jié)點(diǎn)開(kāi)始執(zhí)行,自上而下,從左到右順序執(zhí)行,遍歷所有結(jié)點(diǎn)。(4)有利于提高軟件的可靠性和軟件生產(chǎn)率。容易將PAD圖轉(zhuǎn)換成高級(jí)語(yǔ)言源程序,這種轉(zhuǎn)換可用軟件工具自動(dòng)完成,從而可以省去人工編碼的工作,有利于提高軟件的可靠性和軟件生產(chǎn)率。(5)既可用于表示程序邏輯,也可用于描述數(shù)據(jù)結(jié)構(gòu)。(6)PAD 圖的符號(hào)支持自頂向下、逐步求精方法的使用。開(kāi)始設(shè)計(jì)者可以

52、定義一個(gè)抽象的程序,隨著設(shè)計(jì)工作的深入而使用 def 符號(hào)逐步增加細(xì)節(jié),直至完成詳細(xì)設(shè)計(jì)。本系統(tǒng)的功能模塊有客房查詢查詢、入住登記、退房管理、每日結(jié)算、結(jié)算報(bào)表、客戶查詢、房間基本信息管理、價(jià)格調(diào)整等。每一個(gè)模塊又包含有自己的子模塊,并具有其相應(yīng)的功能。由于系統(tǒng)的功能模塊眾多,在此不能對(duì)每個(gè)模塊都設(shè)計(jì)其PAD圖,所以僅以入住登記操作、房間查詢操作、退房管理操作的PAD圖來(lái)進(jìn)行說(shuō)明。3.5.1 入住登記PAD圖用戶經(jīng)過(guò)登錄模塊驗(yàn)證成功后可以進(jìn)行入住登記模塊操作,在用戶進(jìn)行入住登記時(shí)要輸入正確的房間的信息,系統(tǒng)對(duì)庫(kù)存中的記錄進(jìn)行遍歷,查詢正確后才能進(jìn)行入住登記的操作入住登記的E-R圖如圖3.6所示

53、。查詢是否存在輸入房間名查詢登記信息While(True)提示信息有誤登記返回主窗體圖3.6 入住登記PAD圖3.5.2 房間查詢PAD圖用戶進(jìn)行房間查詢操作時(shí),首先要填寫(xiě)相應(yīng)的查詢條件信息,系統(tǒng)會(huì)根據(jù)調(diào)選擇的條件來(lái)篩選數(shù)據(jù)表中符合條件的記錄顯示,房間查詢的PAD圖如圖3.7所示。查詢是否存在輸入查詢條件記錄存在While(True)提示信息不存在查詢顯示繼續(xù)查詢或其它操作圖3.7 房間查詢用PAD圖3.5.3 退房管理PAD圖用戶進(jìn)行退房操作時(shí),首先要驗(yàn)證房間信息是否為“已入住”,如果為真的話,將執(zhí)行退房操作并計(jì)算找零功能,退房操作的PAD圖如圖3.8所示。查詢是否已住輸入房間號(hào)查詢顯示W(wǎng)h

54、ile(True)提示信息有誤退房并找零返回主界面圖3.8 退房管理PAD圖4 系統(tǒng)實(shí)現(xiàn)4.1 語(yǔ)言選擇原因本系統(tǒng)在實(shí)現(xiàn)系統(tǒng)功能時(shí)使用的是C#語(yǔ)言。C#語(yǔ)言具有許多先進(jìn)的特性,也正是因?yàn)槠溆羞@些特性所以才選擇用C#語(yǔ)言來(lái)開(kāi)發(fā)本系統(tǒng),C#的特點(diǎn)如下:1簡(jiǎn)潔的語(yǔ)法在缺省的情況下,C#的代碼在.NET框架提供的“可操縱”環(huán)境下運(yùn)行,不允許直接地存操作。它所帶來(lái)的最大的特色是沒(méi)有了指針。與此相關(guān)的是,那些在C+中被瘋狂使用的操作符(例如:“:”、“-”和“.,”)已經(jīng)不再出現(xiàn)。C#只支持一個(gè)“.”,對(duì)于我們來(lái)說(shuō),現(xiàn)在需要理解的一切僅僅是名字的嵌套而已。C#用真正的關(guān)鍵字換掉了那些把活動(dòng)模板庫(kù)(Acti

55、ve Template Library,ALT)和COM搞得亂糟糟的偽關(guān)鍵字,如OLE_COLOR、BOOL、VARIANT_BOOL、DISPID_XXXXX等等。每種C#操作符在.NET類庫(kù)中都有了新名字。語(yǔ)法中的冗余是C+中的常見(jiàn)的問(wèn)題,比如const和#define、各種各樣的字符類型等等。C#對(duì)此進(jìn)行了簡(jiǎn)化,只保留了常見(jiàn)的形式,而別的冗余形式從它的語(yǔ)法結(jié)構(gòu)中被清除了出去。2精心地面向?qū)ο笤O(shè)計(jì)C#具有面向?qū)ο蟮恼Z(yǔ)言所應(yīng)有的一切特性:封裝、繼承與多態(tài)性,這并不出奇。然而,通過(guò)精心地面向?qū)ο笤O(shè)計(jì),從高級(jí)商業(yè)對(duì)象到系統(tǒng)級(jí)應(yīng)用,C#建造廣泛組件的絕對(duì)選擇。在C#的類型系統(tǒng)中,每種類型都可以看作一個(gè)對(duì)象。C#提供了一個(gè)叫做裝箱(boxing)與拆箱(unboxing)的機(jī)制來(lái)完成這種操作,而不給使用者帶來(lái)麻煩,這在以后的章節(jié)中將進(jìn)行更為詳細(xì)的介紹。C#只允許單繼承,即一個(gè)類不會(huì)有多個(gè)基類,從而避免了類型定義的混亂。在后面的學(xué)習(xí)中很快會(huì)發(fā)現(xiàn),C#中沒(méi)有了全局函數(shù),沒(méi)有了全局變量,也沒(méi)有了全局常數(shù)。一切的一切,都必須封裝在一個(gè)類之中。代碼將具有更好的可讀性,并且減少了發(fā)生命名沖突的可能。整個(gè)C#的類模型是建立在.NET虛擬對(duì)象系統(tǒng)(Visual Object System,VOS)的基礎(chǔ)之上,其對(duì)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論