版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、資料內(nèi)容僅供您學(xué)習(xí)參考,如有不當(dāng)之處,請(qǐng)聯(lián)系改正或者刪除。摘 要基于web機(jī)票預(yù)定信息系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)的是為了方便全國乘坐民航的消費(fèi)者進(jìn)行機(jī)票預(yù)定而設(shè)計(jì)的。系統(tǒng)的用戶分為管理員和普通用戶, 經(jīng)過不同的用戶名和密碼來登陸系統(tǒng)來進(jìn)行所需要的操作, 管理員能夠?qū)笈_(tái)數(shù)據(jù)庫中的內(nèi)容進(jìn)行修改和管理。該系統(tǒng)的主要功能包括會(huì)員管理, 航線航班管理, 機(jī)票服務(wù)管理, 客戶留言信息管理, 以及管理員的后臺(tái)管理等。該系統(tǒng)其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng), 數(shù)據(jù)安全性好的數(shù)據(jù)庫。而對(duì)于后者則要求應(yīng)用程序功能完備, 易使用等。本設(shè)計(jì)采用ASP.N
2、ET為開發(fā)環(huán)境進(jìn)行操作界面和代碼的設(shè)計(jì); 數(shù)據(jù)庫采用Microsoft SQL Server 數(shù)據(jù)庫系統(tǒng)。論文的大致框架如下: 第一章 緒論; 第二章 可行性分析; 第三章介紹可行需求分析; 第四章介紹系統(tǒng)總體設(shè)計(jì); 第五章介紹系統(tǒng)數(shù)據(jù)庫設(shè)計(jì); 第六章介紹系統(tǒng)詳細(xì)設(shè)計(jì); 第七章和第八章介紹系統(tǒng)的測(cè)試與性能分析; 第九章是總結(jié)。關(guān)鍵詞: 會(huì)員管理; 航線航班管理; 機(jī)票服務(wù)管理; 客戶留言; 數(shù)據(jù)庫設(shè)計(jì)。AbstractDesign and Implementation of Booking Tickets for the Web-Based Information System is to f
3、acilitate the use of CAD booking tickets for the consumer designed. System have administrators and ordinary users, through different user names and passwords to the landing system to carry out some needed operations, Administrators can modify and manage the background database the its content . The
4、systems main functions include members of management, flight route management, ticket service management, customer information management messages, Administrators manage the background of system.The Development of the system including two facets which its database background to the establishment and
5、 maintenance and the development of the front-end applications .Regarding the former require to establish the stronger data consistency and integrity, good data security database. As for the latter we demanded the application Complete functions, and easy to use.The design used ASP.NET development en
6、vironment for the operation of the interface and code design; Database used Microsoft SQL Server database system. The thesiss general framework is as follows : Chapter 1 Introduction; Chapter 2 feasibility analysis; Chapter 3 introduce the possible demand analysis; Chapter 4 introduce the Overall de
7、sign; Chapter 5 introduce the database design; Chapter 6 introduce a detailed system design; Chapter 7 and Chapter 8 introduce the systems test and function analysis; Chapter 9 is a summary. Keywords : Member management; Flight route management; Ticket service management; Customers Message; Database
8、 design.目 錄 TOC o 1-3 f h z HYPERLINK l _Toc 第1章 緒 論 PAGEREF _Toc h 1 HYPERLINK l _Toc 1.1 系統(tǒng)的概述 PAGEREF _Toc h 1 HYPERLINK l _Toc 1.2 相關(guān)工具與開發(fā)工具介紹 PAGEREF _Toc h 2 HYPERLINK l _Toc 第2章 可行性分析 PAGEREF _Toc h 4 HYPERLINK l _Toc 2.1 技術(shù)可行性 PAGEREF _Toc h 4 HYPERLINK l _Toc 2.2 經(jīng)濟(jì)可行性 PAGEREF _Toc h 4 HYPE
9、RLINK l _Toc 2.3 操作可行性 PAGEREF _Toc h 5 HYPERLINK l _Toc 2.4 運(yùn)行環(huán)境 PAGEREF _Toc h 5 HYPERLINK l _Toc 第3章 需求分析 PAGEREF _Toc h 6 HYPERLINK l _Toc 3.1 系統(tǒng)環(huán)境的工作需求及流程 PAGEREF _Toc h 6 HYPERLINK l _Toc 3.2 系統(tǒng)數(shù)據(jù)流圖和數(shù)據(jù)字典 PAGEREF _Toc h 6 HYPERLINK l _Toc 第4章 總體設(shè)計(jì) PAGEREF _Toc h 11 HYPERLINK l _Toc 4.1 總述 PAGER
10、EF _Toc h 11 HYPERLINK l _Toc 4.2 系統(tǒng)結(jié)構(gòu)圖 PAGEREF _Toc h 11 HYPERLINK l _Toc 第5章 數(shù)據(jù)庫設(shè)計(jì) PAGEREF _Toc h 14 HYPERLINK l _Toc 5.1 概念設(shè)計(jì) PAGEREF _Toc h 14 HYPERLINK l _Toc 5.2 邏輯設(shè)計(jì) PAGEREF _Toc h 17 HYPERLINK l _Toc 5.3 物理設(shè)計(jì) PAGEREF _Toc h 19 HYPERLINK l _Toc 第6章 詳細(xì)設(shè)計(jì) PAGEREF _Toc h 21 HYPERLINK l _Toc 6.1
11、菜單設(shè)計(jì) PAGEREF _Toc h 21 HYPERLINK l _Toc 6.2 模塊設(shè)計(jì) PAGEREF _Toc h 22 HYPERLINK l _Toc 第7章 系統(tǒng)測(cè)試 PAGEREF _Toc h 38 HYPERLINK l _Toc 7.1測(cè)試的目的 PAGEREF _Toc h 38 HYPERLINK l _Toc 7.2測(cè)試的方法 PAGEREF _Toc h 38 HYPERLINK l _Toc 7.3測(cè)試的步驟 PAGEREF _Toc h 39 HYPERLINK l _Toc 7.4本系統(tǒng)的測(cè)試 PAGEREF _Toc h 40 HYPERLINK l
12、_Toc 第8章 系統(tǒng)維護(hù)與性能分析 PAGEREF _Toc h 41 HYPERLINK l _Toc 8.1系統(tǒng)維護(hù) PAGEREF _Toc h 41 HYPERLINK l _Toc 8.2性能分析 PAGEREF _Toc h 41 HYPERLINK l _Toc 第9章 總結(jié) PAGEREF _Toc h 43 HYPERLINK l _Toc 參考文獻(xiàn) PAGEREF _Toc h 44 HYPERLINK l _Toc 致 謝 PAGEREF _Toc h 45 HYPERLINK l _Toc 附 錄 I PAGEREF _Toc h 46緒 論系統(tǒng)的概述機(jī)票預(yù)定信息系統(tǒng)
13、的研究意義隨著社會(huì)發(fā)展的不斷進(jìn)步, 民航事業(yè)的壯大, 人們消費(fèi)水平的提高, 在現(xiàn)實(shí)生活中, 乘坐民航的消費(fèi)者也越來越多。由于中國人口眾多, 訂購機(jī)票成為了旅客們最頭疼的問題! 怎樣為旅客提供高效, 便捷的服務(wù)是國家在航空運(yùn)輸中應(yīng)該首要解決的問題。經(jīng)過網(wǎng)絡(luò)實(shí)現(xiàn)機(jī)票預(yù)定已經(jīng)成為一種消費(fèi)的時(shí)尚, 給消費(fèi)者帶來極大的便捷! 預(yù)定查詢系統(tǒng)因此在各機(jī)票預(yù)定網(wǎng)點(diǎn)中的作用也越顯重要。因此, 開發(fā)一套具有完整的存儲(chǔ), 查詢, 核對(duì), 打印機(jī)票功能的實(shí)時(shí)機(jī)票預(yù)定系統(tǒng)更顯緊迫。機(jī)票預(yù)定系統(tǒng)應(yīng)克服存儲(chǔ)乘客信息少, 查詢效率低下等問題外, 更重要的是其安全性, 可靠性, 這關(guān)系到航班的乘客的安全及準(zhǔn)確, 本系統(tǒng)因面向廣
14、大機(jī)票預(yù)定網(wǎng)點(diǎn), 因此要能在售票網(wǎng)點(diǎn)中普及, 則需要開發(fā)一個(gè)功能全, 價(jià)格能被顧客所接受的系統(tǒng)! 本系統(tǒng)的主要功能本系統(tǒng)最突出的一個(gè)特點(diǎn)是能夠經(jīng)過IP地址訪問數(shù)據(jù)庫。系統(tǒng)功能主要實(shí)現(xiàn)會(huì)員資料管理, 航線航班管理、 機(jī)票服務(wù), 客戶留言情況的統(tǒng)計(jì), 航班票價(jià)查詢, 航線航班的查詢等功能。管理員能夠輕松地對(duì)系統(tǒng)會(huì)員, 航線, 航班, 票價(jià)進(jìn)行修改, 也能夠經(jīng)過本系統(tǒng)來查看用戶訂票的的資料。本系統(tǒng)對(duì)會(huì)員資料管理包括添加會(huì)員, 刪除會(huì)員和修改會(huì)員資料并對(duì)會(huì)員進(jìn)行統(tǒng)計(jì)等。航線航班管理模塊有: 添加刪除航線、 添加刪除航班功能, 而且能夠修改現(xiàn)在的資料。在加入新航班航線的同時(shí)數(shù)據(jù)庫會(huì)隨時(shí)更新顯示出最新的數(shù)
15、據(jù), 方便用戶進(jìn)行查詢。機(jī)票服務(wù)模塊有: 機(jī)票的預(yù)定, 票價(jià)的查詢, 訂票信息的打印, 退票的服務(wù)等功能??蛻袅粞怨芾砟K有: 客戶留言功能??蛻裟軌蚋鶕?jù)自己對(duì)訂票的意見以及自己的要求進(jìn)行留言。管理員后臺(tái)管理模塊有: 會(huì)員的添加, 更名和刪除, 航線航班的添加刪除, 查詢客戶留言, 查詢訂票退票信息的操作。這樣方便進(jìn)行相應(yīng)的調(diào)動(dòng)調(diào)整, 反饋給客戶最新的信息! 另外, 本軟件還具有界面簡(jiǎn)捷美觀, 信息量大, 操作簡(jiǎn)單, 安全性好, 實(shí)現(xiàn)成本低等特點(diǎn)。除此之外使用了權(quán)限設(shè)置等技術(shù)使系統(tǒng)具備了良好的健壯性。相關(guān)工具與開發(fā)工具介紹本系統(tǒng)采用ASP.NET作為前臺(tái)程序開發(fā)環(huán)境, Microsoft SQ
16、L Server 作為后臺(tái)數(shù)據(jù)庫, 而且以Windows作為運(yùn)行平臺(tái), 以便更廣泛的適應(yīng)企業(yè)要求。ASP.NET語言環(huán)境的功能比較強(qiáng)大, Microsoft SQL Server 數(shù)據(jù)庫也具有廣泛的適應(yīng)性, Windows操作平臺(tái)具有很高的適應(yīng)性, 這樣的組合有利于降低成本, 服務(wù)于廣泛的用戶。ASP.NET 開發(fā)環(huán)境ASP.NET是美國微軟公司( Microsoft) 推出的Windows環(huán)境下的軟件開發(fā)工具。ASP.NET 是一種建立在通用語言上的程序構(gòu)架, 能被用于一臺(tái)Web服務(wù)器來建立強(qiáng)大的Web應(yīng)用程序。ASP.NET提供許多比現(xiàn)在的Web開發(fā)模式強(qiáng)大的的優(yōu)勢(shì)。因?yàn)锳SP.NET是基
17、于通用語言的編譯運(yùn)行的程序, 因此它的強(qiáng)大性和適應(yīng)性, 能夠使它運(yùn)行在Web應(yīng)用軟件開發(fā)者的幾乎全部的平臺(tái)上( 筆者到現(xiàn)在為止只知道它只能用在Windows Server上) 。通用語言的基本庫, 消息機(jī)制, 數(shù)據(jù)接口的處理都能無縫的整合到ASP.NET的Web應(yīng)用中。ASP.NET同時(shí)也是language-independent語言獨(dú)立化的, 因此, 你能夠選擇一種最適合你的語言來編寫你的程序, 或者把你的程序用很多種語言來寫, 現(xiàn)在已經(jīng)支持的有C#( C+和Java的結(jié)合體) , VB, Jscript。將來, 這樣的多種程序語言協(xié)同工作的能力保護(hù)您現(xiàn)在的基于COM+開發(fā)的程序, 能夠完整
18、的移植向ASP.NET。ASP.NET是運(yùn)行一些很平常的任務(wù)如表單的提交客戶端的身份驗(yàn)證、 分布系統(tǒng)和網(wǎng)站配置變得非常簡(jiǎn)單。應(yīng)用ASP.NET編譯出來的程序通俗易懂, 非常適合初學(xué)者應(yīng)用。Microsoft SQL Server 數(shù)據(jù)庫介紹數(shù)據(jù)庫技術(shù)是計(jì)算機(jī)軟件的一個(gè)重要分支, 它產(chǎn)生于20世紀(jì)60年代, 最早是由IBM公司推出的IMS數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)庫技術(shù)從開始到現(xiàn)在大致經(jīng)歷了三個(gè)階段, 分別是: 人工管理階段、 文件管理階段和數(shù)據(jù)庫管理階段。Microsoft SQL Server 是用來專門管理數(shù)據(jù)庫的應(yīng)用軟件。所謂數(shù)據(jù)庫是指經(jīng)過組織的、 關(guān)于特定主題或?qū)ο蟮男畔⒓?。?shù)據(jù)庫管理系統(tǒng)分為
19、兩類: 文件管理系統(tǒng)和關(guān)系型管理系統(tǒng)。除了這些外Microsoft SQL Server 還為你的數(shù)據(jù)管理和分析帶來了靈活性, 允許用戶在快速變化的環(huán)境中從容相應(yīng), Microsoft SQL Server 是一個(gè)具備完全web支持的數(shù)據(jù)庫產(chǎn)品, 不但易于使用, 而且界面友好, 如今在世界各地廣泛流行。Microsoft SQL Server 需要掌握的功能很多例如: 關(guān)系代數(shù)以編寫功能強(qiáng)大的查詢, 對(duì)索引進(jìn)行調(diào)優(yōu)使其成為數(shù)據(jù)和查詢之間的橋梁, 分析查詢執(zhí)行計(jì)劃以提高性能。Microsoft SQL Server 不需要進(jìn)行復(fù)雜的編程, 利用提供的工具和功能就能完成小型數(shù)據(jù)庫管理系統(tǒng)的設(shè)計(jì),
20、因此數(shù)據(jù)庫管理者使用起來非常的方便, 任何非專業(yè)的用戶都能夠用它來創(chuàng)立功能強(qiáng)大的數(shù)據(jù)庫管理系統(tǒng)。在SQL Server 中使用可擴(kuò)展標(biāo)記語言(XML)能夠在松散耦合系統(tǒng)之間交換數(shù)據(jù)。從瀏覽器經(jīng)過防火墻可方便而安全地訪問數(shù)據(jù), 并可對(duì)有格式文檔執(zhí)行快速全文檢索。分析和鏈接聯(lián)機(jī)分析處理(OLAP)多維數(shù)據(jù)集, 即使在 Web 上也是如此, 從而提供了強(qiáng)大的數(shù)據(jù)處理能力和通用性, 使其成為一個(gè)功能強(qiáng)大而且易于使用的桌面關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。一個(gè)Microsoft SQL Server 數(shù)據(jù)庫中能夠包含表、 關(guān)系圖、 視圖、 存儲(chǔ)過程、 用戶、 規(guī)則以角色等。使用單一的.mdf文件管理所有的信息, 這
21、種針對(duì)數(shù)據(jù)庫集成的最優(yōu)化文件結(jié)構(gòu)不但包括數(shù)據(jù)本身, 也包括了它的支持對(duì)象??尚行苑治隹尚行匝芯康哪康木褪怯米钚〉拇鷥r(jià)在盡可能短的時(shí)間內(nèi)確定問題是否能夠解決。在這個(gè)階段, 信息單位必須就時(shí)間、 人力、 物力、 財(cái)力、 效益、 技術(shù)等要素來評(píng)估她們是否有足夠的資源支持使用單位的需要。要從技術(shù)可行性、 經(jīng)濟(jì)可行性、 操作可行性三個(gè)方面來進(jìn)行研究。 技術(shù)可行性首先, 機(jī)票預(yù)定信息系統(tǒng)是以預(yù)定機(jī)票為主要功能的軟件, 附加包括航線航班的查詢, 會(huì)員的管理, 訂票的管理, 票價(jià)的管理等功能。它應(yīng)該是航空公司預(yù)定機(jī)票系統(tǒng)的一個(gè)模塊。主要包括一些基本功能而不是全部功能, 這樣方便各大航空公司應(yīng)用, 這就決定了它
22、的開發(fā)時(shí)間不能太久, 在給定的17周里有足夠的時(shí)間實(shí)現(xiàn)要求; 其次是人力資源, 開發(fā)該系統(tǒng)是有一個(gè)人獨(dú)立完成的, 雖然在開發(fā)前期有點(diǎn)困難, 但在調(diào)試過程中總體看來要容易的多。再次是技術(shù)能力方面, 本系統(tǒng)地開發(fā)采用ASP.NET環(huán)境, ASP.NET開發(fā)的系統(tǒng)是面向?qū)ο蟮? 開發(fā)出來的系統(tǒng)包括客戶端和服務(wù)器, 其中服務(wù)器和數(shù)據(jù)庫放在各大航空公司! 客戶端放在各個(gè)機(jī)票預(yù)定點(diǎn), 服務(wù)器給客戶端提供數(shù)據(jù)庫服務(wù)器ip,這樣用戶在客戶端登陸就能夠看到航空公司提供的數(shù)據(jù)進(jìn)行訂票。而且ASP.NET還具有很強(qiáng)的數(shù)據(jù)庫管理功能, 能夠有效的管理多種格式數(shù)據(jù)庫。在本軟件中以Microsoft SQL Server
23、 作為后臺(tái)數(shù)據(jù)庫, 在機(jī)票預(yù)定客戶端輸入的數(shù)據(jù)都將直接進(jìn)入數(shù)據(jù)庫集中存放。在ASP.NET中有很完美的能夠和它連接的數(shù)據(jù)庫對(duì)象和對(duì)數(shù)據(jù)庫的操作而且Microsoft SQL Server 具有廣泛的適應(yīng)性, 用來做本軟件的后臺(tái)是數(shù)據(jù)庫比較合適。經(jīng)濟(jì)可行性就是該系統(tǒng)的經(jīng)濟(jì)效益能否超過它的開發(fā)成本。本系統(tǒng)的開發(fā)潛力應(yīng)該是非常大的。因?yàn)楸鞠到y(tǒng)實(shí)現(xiàn)的機(jī)票預(yù)定的基本功能, 各大航空公司都能夠購買開發(fā), 本軟件主要實(shí)現(xiàn)機(jī)票預(yù)訂系統(tǒng)的基本功能和基本管理, 對(duì)于其它的附加功能特色功能則需要購買的航空公司根據(jù)需求自己開發(fā)。本軟件使用也非常方便只要管理者把數(shù)據(jù)庫添加進(jìn)去, 再發(fā)服務(wù)器的IP地址給到客戶端, 用戶便
24、能夠使用。對(duì)各個(gè)航空公司的利益不發(fā)生沖突, 允許多個(gè)航空公司購買使用, 提高了軟件經(jīng)濟(jì)效益, 達(dá)到了開發(fā)的目的! 一般情況下, 一個(gè)軟件的壽命是5年, 本系統(tǒng)的開發(fā)時(shí)間是17周?,F(xiàn)在的總體投入大約在5000元, 包括了購買開發(fā)本系統(tǒng)所需要的全部軟、 硬件及調(diào)研的費(fèi)用。今年的年利率是2.93%, 根據(jù)公式: ( 1-1) 公式中: i表示年利率; n表示軟件使用時(shí)間; P表示實(shí)際投入資金; F表示n年后收入的資金; 那么在5年后的收入為5776.7, 很明顯對(duì)企業(yè)是有好處的, 投資的回收率在15%以上, 因此本投資項(xiàng)目是值得的。操作可行性在整個(gè)資料管理系統(tǒng)中的操作都是采用大眾化的操作方式, 用戶
25、和管理員只要經(jīng)過簡(jiǎn)單的學(xué)習(xí), 熟悉軟件的功能就能輕松掌握, 并熟練的進(jìn)行操作, 因此操作方面可行。運(yùn)行環(huán)境硬件配置使用CPU P4 2.4GHz以上, 內(nèi)存在512M以上, 硬盤容量在80軟件配置操作系統(tǒng)平臺(tái)采用了Windows XP Professional , 選擇此版本操作系統(tǒng)主要是因?yàn)榻?jīng)過幾年的發(fā)展后, 這個(gè)版本是最為成熟的一個(gè)操作系統(tǒng), 在穩(wěn)定性、 兼容性等多個(gè)方面都很突出。數(shù)據(jù)庫采用Microsoft SQL Server , 與ASP.NET開發(fā)環(huán)境很好地兼容, 能夠方便安裝及使用, 節(jié)約成本。程序開發(fā)采用ASP.NET, 一個(gè)能夠方便快捷地開發(fā)Windows應(yīng)用軟件的開發(fā)程序,
26、 使用方便, 開發(fā)出來的程序也能很方便地被使用。需求分析系統(tǒng)環(huán)境的工作需求及流程 系統(tǒng)環(huán)境的工作需求無論是軟件開發(fā)還是硬件建設(shè), 需求分析是個(gè)非常重要的過程。嚴(yán)格來說, 需求分析需要系統(tǒng)分析員、 系統(tǒng)管理員、 用戶這三方面人員的通力合作, 以確定系統(tǒng)的功能要求、 系統(tǒng)的性能要求、 運(yùn)行要求以及將來可能提出的各種新的要求??尚行匝芯康碾A段產(chǎn)生的文檔, 特別是數(shù)據(jù)流圖是需求分析的出發(fā)點(diǎn)。數(shù)據(jù)流圖中以劃分出系統(tǒng)必須完成的基本功能, 在需求分析階段系統(tǒng)分析員將仔細(xì)研究這些功能并進(jìn)一步具體化。需求分析的結(jié)果是系統(tǒng)開發(fā)的基礎(chǔ), 是整個(gè)項(xiàng)目的起點(diǎn), 關(guān)系到工程的成敗的和軟件產(chǎn)品的質(zhì)量。因此, 必須用行之有效
27、的方法對(duì)軟件需求進(jìn)行嚴(yán)格的審查驗(yàn)證?;趙eb機(jī)票預(yù)定信息系統(tǒng)本著方便廣大旅客的需求為原則, 包含了機(jī)票預(yù)定的各項(xiàng)基本功能, 方便各個(gè)機(jī)票預(yù)定站使用。該系統(tǒng)應(yīng)該具備以下功能: 首先, 該系統(tǒng)的客戶端允許用戶會(huì)員登陸使用, 因此必須有系統(tǒng)登陸界面( 用戶名、 密碼核實(shí)等) , 只有正確的用戶名和相應(yīng)的密碼才能登陸系統(tǒng), 進(jìn)行相應(yīng)的航線航班查詢, 機(jī)票價(jià)格查詢等的操作; 其次, 要有后臺(tái)管理員管理功能( 添加、 修改、 刪除用戶資料、 查詢會(huì)員資料、 機(jī)票航線航班當(dāng)前狀況等) , 經(jīng)過此功能管理者能夠了解到每個(gè)功能實(shí)現(xiàn)的具體情況; 第三, 要有后臺(tái)修改功能( 修改當(dāng)前航線, 航班, 票價(jià), 會(huì)員密
28、碼等功能) , 經(jīng)過此功能管理者能夠隨時(shí)更新, 添加航線, 臨時(shí)添加航班給用戶查詢帶來最新的最準(zhǔn)確的消息; 第四, 應(yīng)具備客戶留言功能, 經(jīng)過此功能能夠?qū)崿F(xiàn)對(duì)客戶意見的反饋, 作出及時(shí)的調(diào)整來滿足客戶需求。系統(tǒng)數(shù)據(jù)流圖和數(shù)據(jù)字典系統(tǒng)的數(shù)據(jù)流圖數(shù)據(jù)流圖是一種圖形化技術(shù), 它描繪信息流和數(shù)據(jù)從輸入移動(dòng)到輸出的過程中所經(jīng)受的變換。在數(shù)據(jù)流圖中沒有具體的物理部件, 只是描繪數(shù)據(jù)在軟件中流動(dòng)和被處理的邏輯過程。另外, 設(shè)計(jì)數(shù)據(jù)流圖時(shí)只需考慮系統(tǒng)必須完成的基本邏輯功能, 而不必考慮具體這樣實(shí)現(xiàn)這些功能, 也就是說數(shù)據(jù)流圖的基本要點(diǎn)是描述”做什么”而不考慮”怎么做”, 因此它也是今后進(jìn)行軟件設(shè)計(jì)的出發(fā)點(diǎn)。其
29、實(shí), 軟件系統(tǒng)歸根到底是一個(gè)信息處理系統(tǒng), 其最基本的功能就是接收輸入的信息, 對(duì)輸入的信息按照規(guī)定的方法歸類、 處理、 存儲(chǔ), 轉(zhuǎn)變?yōu)樗枰男畔? 最后經(jīng)過輸出系統(tǒng)向用戶輸出所需求的信息。其中最核心的部分就是對(duì)信息( 或者稱作數(shù)據(jù)) 的處理, 因此不同的數(shù)據(jù)也就不決定了所需要的不同的處理方法和算法。數(shù)據(jù)流圖也就是以圖形的方式將系統(tǒng)中數(shù)據(jù)傳遞、 轉(zhuǎn)化的過程以直觀的方式表述出來。下面是根據(jù)分析繪制出的機(jī)票預(yù)定信息系統(tǒng)的頂層數(shù)據(jù)流圖: 用用戶基于web機(jī)票預(yù)定信息系統(tǒng)管理員事務(wù) 結(jié)果圖3.1 頂層數(shù)據(jù)流圖上面較抽象的系統(tǒng)流圖, 接下來將介紹該系統(tǒng)的幾個(gè)功能模塊的數(shù)據(jù)流圖, 來說明相關(guān)部分的具體實(shí)
30、現(xiàn)的功能。.2訂票查詢D1 新用戶信息旅客用戶訂票訂票旅客.1旅客登錄旅客訂票登錄會(huì)員信息旅客訂票 D2 訂票信息 圖3.2 旅客訂票數(shù)據(jù)流圖3.3.4修改更新信息3.3.3后臺(tái)3.3.4修改更新信息3.3.3后臺(tái)處理3.3.2票價(jià)查詢3.3.1航線查詢航班管理旅客事務(wù)事務(wù) 事務(wù) 結(jié)果航班管理旅客D2 管理員登錄 圖3.3 航班管理數(shù)據(jù)流圖數(shù)據(jù)字典數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合, 也就是對(duì)數(shù)據(jù)流圖中包含的所有元素的定義和集合。數(shù)據(jù)字典的最主要的用途是供人查閱對(duì)不了解的條目的解釋, 數(shù)據(jù)字典的作用也正是軟件分析和設(shè)計(jì)的過程中給人提供關(guān)于數(shù)據(jù)的描述信息。數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型,
31、沒有數(shù)據(jù)字典數(shù)據(jù)流圖就不嚴(yán)格, 然而沒有數(shù)據(jù)流圖數(shù)據(jù)字典也難于發(fā)揮作用。只有數(shù)據(jù)流圖和對(duì)數(shù)據(jù)流圖中每個(gè)元素的精確定義放在一起, 才能共同構(gòu)成系統(tǒng)的規(guī)格說明。數(shù)據(jù)字典最重要的用途是作為分析階段的工具。在數(shù)據(jù)字典中建立的一組嚴(yán)密一致的定義很有助于改進(jìn)分析員和用戶之間的通信, 因此將消除許多可能的誤解。對(duì)數(shù)據(jù)的這一系列嚴(yán)密一致的定義也有助于改進(jìn)不同的開發(fā)人員或不同開發(fā)小組之間的通信。如果要求所有開發(fā)人員都根據(jù)公共的數(shù)據(jù)字典描述數(shù)據(jù)和設(shè)計(jì)模塊, 則能避免許多麻煩的接口問題。數(shù)據(jù)字典的內(nèi)容一般包括: 數(shù)據(jù)流、 數(shù)據(jù)流分量、 數(shù)據(jù)存儲(chǔ)、 處理。數(shù)據(jù)字典中包含的每個(gè)數(shù)據(jù)元素的控制信息是很有價(jià)值的。因?yàn)榱谐隽?/p>
32、使用一個(gè)給定的數(shù)據(jù)元素的所有程序模塊, 因此很容易估計(jì)改變一個(gè)數(shù)據(jù)將產(chǎn)生的影響, 而且能對(duì)受影響的程序或模塊作出相應(yīng)的改變。因此數(shù)據(jù)字典是開發(fā)數(shù)據(jù)庫的第一步, 而且是很有價(jià)值的一步。由于在開發(fā)本系統(tǒng)是沒有數(shù)據(jù)字典處理程序, 因此采用了卡片的形式書寫數(shù)據(jù)字典。以下是本系統(tǒng)的數(shù)據(jù)字典: 下面是機(jī)票預(yù)定信息的部分?jǐn)?shù)據(jù)字典: 表3.1 旅客信息的定義名稱: 旅客信息描述: 用來記錄旅客的相關(guān)信息。定義: 旅客信息=姓名+密碼+聯(lián)系方式+主要內(nèi)容。位置: 旅客添加運(yùn)行窗口表3.2 管理員信息的定義名稱: 管理員信息描述: 用來記錄管理員的相關(guān)信息。定義: 管理員信息=姓名+密碼+聯(lián)系方式。位置: 旅客添
33、加運(yùn)行窗口 表3.3數(shù)據(jù)元素旅客訂票的定義名稱: 新用戶訂票描述: 新用戶注冊(cè)進(jìn)行訂票及進(jìn)行機(jī)票信息查詢類型: 字符型長度: 10位置: 新用戶信息列表 表3.4 數(shù)據(jù)元素客戶留言的定義名稱: 客戶留言描述: 對(duì)訂票的意見進(jìn)行留言, 管理員將會(huì)進(jìn)行查看。類型: 字符型長度: 50位置: 留言信息列表表3.5 數(shù)據(jù)元素票價(jià)查詢的定義名稱: 票價(jià)查詢描述: 對(duì)各地機(jī)票的票價(jià)查詢類型: 字符型長度: 50位置: 票價(jià)查詢信息列表表3.6 數(shù)據(jù)元素表3.6 數(shù)據(jù)元素航班管理的定義名稱: 管理員航班管理描述: 對(duì)國內(nèi), 國際, 座位以及數(shù)據(jù)庫的更新維護(hù)進(jìn)行管理類型: 時(shí)間型長度: 8位置: 航班管理列表
34、表3.7 數(shù)據(jù)元素退票的定義名稱: 退票名稱: 退票描述: 對(duì)臨時(shí)換乘航班的或其它原因需要退票的旅客進(jìn)行退票類型: 文本型長度: 16位置: 退票信息列表表3.8 數(shù)據(jù)元素航線管理的定義名稱: 航線管理描述: 對(duì)航線進(jìn)行管理, 管理員有權(quán)添加和修改。類型: 字符型長度: 50位置: 航線管理列表表3.9 數(shù)據(jù)元素訂票查詢的定義名稱: 訂票查詢描述: 用戶訂票后進(jìn)行查詢自己是否訂票成功, 并可打印出報(bào)表。類型: 字符型長度: 50位置: 訂票查詢信息列表表3.10 數(shù)據(jù)元素機(jī)票打印報(bào)表的定義名稱: 機(jī)票打印報(bào)表描述: 用戶訂票后可進(jìn)行打印憑證類型: 字符型長度: 50位置: 機(jī)票打印列表數(shù)據(jù)字典
35、最重要的用途是作為分析階段的工具。在數(shù)據(jù)字典中建立的一組嚴(yán)密一致的定義很有助于改進(jìn)分析員和用戶之間的通信, 因此將消除許多可能的誤解。對(duì)數(shù)據(jù)的這一系列嚴(yán)密一致的定義也有助于改進(jìn)在不同的開發(fā)人員和不同的開發(fā)小組之間的通信??傮w設(shè)計(jì) 總述經(jīng)過需求分析階段的工作, 我們已經(jīng)清楚了系統(tǒng)必須”做什么” , 接下來應(yīng)該確定我們應(yīng)該”怎么做” ??傮w設(shè)計(jì)的基本目的就是回答”概括的說, 系統(tǒng)應(yīng)該如何實(shí)現(xiàn)? ”這個(gè)問題, 因此, 總體設(shè)計(jì)又稱為概要設(shè)計(jì)或初步設(shè)計(jì)。經(jīng)過這個(gè)階段的工作將劃分出組成系統(tǒng)的物理元素程序, 文件, 數(shù)據(jù)庫, 人工過程和文檔等。總體設(shè)計(jì)階段的另一項(xiàng)重要任務(wù)是設(shè)計(jì)軟件結(jié)構(gòu), 也就是要確定系統(tǒng)
36、中每個(gè)程序是由哪些模塊組成的, 以及這些模塊相互間的關(guān)系。層次模型很適用于本系統(tǒng), 利用層次模型能夠很好地完成自上而下的軟件設(shè)計(jì)。把模塊組織成良好的層次系統(tǒng), 頂層模塊調(diào)用它的下層模塊以實(shí)現(xiàn)程序的完整功能, 每個(gè)下層模塊再調(diào)用更下層的模塊, 從而完成程序的一個(gè)子功能, 最下層的模塊完成最具體的功能。軟件結(jié)構(gòu)能夠經(jīng)過層次圖或結(jié)構(gòu)圖描繪。 系統(tǒng)結(jié)構(gòu)圖系統(tǒng)總體結(jié)構(gòu)圖: 登陸登陸系統(tǒng)登錄主界面會(huì)員管理航線航班機(jī)票服務(wù)客戶留言退出系統(tǒng)圖4.1系統(tǒng)總體結(jié)構(gòu)圖子功能模塊結(jié)構(gòu)圖 系統(tǒng)管理模塊結(jié)構(gòu)圖: 會(huì)員會(huì)員管理用戶添加用戶刪除權(quán)限設(shè)置退出系統(tǒng)修改密碼圖4.2系統(tǒng)管理模塊結(jié)構(gòu)圖 航線航班管理模塊結(jié)構(gòu)圖: 航線
37、航班航線航班航線管理航班管理添加航班添加航線刪除航線刪除航班航線修改圖4.3航線航班管理模塊結(jié)構(gòu)圖 機(jī)票服務(wù)模塊結(jié)構(gòu)圖: 機(jī)票服務(wù)機(jī)票服務(wù)客戶訂票國內(nèi)航班國際航班航線航班查詢票價(jià)查詢航線航班查詢票價(jià)查詢圖4.4機(jī)票服務(wù)模塊結(jié)構(gòu)圖客戶留言管理模塊結(jié)構(gòu)圖客戶留言客戶留言客戶意見留言客戶留言查詢圖4.5客戶留言管理模塊結(jié)構(gòu)圖以上是本系統(tǒng)的主要功能, 還有些附加功能暫不做闡述。數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫在一個(gè)信息管理系統(tǒng)中占有非常重要的地位, 數(shù)據(jù)庫設(shè)計(jì)的好壞將直接影響系統(tǒng)的效率以及實(shí)現(xiàn)效果。合理的數(shù)據(jù)庫設(shè)計(jì)能夠提高數(shù)據(jù)存儲(chǔ)的效率, 保證數(shù)據(jù)的完整和一致。同時(shí), 合理的數(shù)據(jù)庫結(jié)構(gòu)也將有利于程序的實(shí)現(xiàn)。數(shù)據(jù)庫除了
38、用戶的需求分析外, 還包括概念、 邏輯和物理設(shè)計(jì)三個(gè)階段。概念設(shè)計(jì)數(shù)據(jù)庫一般分為三級(jí)模式: 外模式、 概念模式和內(nèi)模式。其中概念模式是數(shù)據(jù)庫中全部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述, 一般以某種數(shù)據(jù)模型為基礎(chǔ)。概念設(shè)計(jì)是對(duì)顯示世界的一種抽象。所謂抽象是對(duì)實(shí)際人、 物、 事和概念進(jìn)行認(rèn)為處理, 抽取所關(guān)心的共同特征, 忽略非本質(zhì)的細(xì)節(jié), 并把這些特征用各種概念精確的假以描述, 這些概念組成了某種模型。數(shù)據(jù)庫的概念設(shè)計(jì)任務(wù)是依據(jù)需求分析的結(jié)果轉(zhuǎn)換成一個(gè)獨(dú)立于具體數(shù)據(jù)庫管理系統(tǒng)( Database Management System, 簡(jiǎn)稱DBMS) 的概念模型, 即實(shí)體關(guān)系圖( ER圖) 。在概念設(shè)計(jì)階段
39、就要開始設(shè)計(jì)數(shù)據(jù)庫的完整性。經(jīng)過對(duì)數(shù)據(jù)流圖和數(shù)據(jù)字典的分析, 能夠得到如下E-R圖: 用戶實(shí)體E-R圖: 用 戶用 戶用戶名密碼權(quán)限圖5.1用戶實(shí)體E-R圖機(jī)票實(shí)體聯(lián)系圖航 線航 線票 價(jià)地點(diǎn)地座位航 程國 際狀態(tài)機(jī)票國 內(nèi) 圖5.2 機(jī)票實(shí)體聯(lián)系圖旅客實(shí)體聯(lián)系圖姓 名旅 客姓 名旅 客密碼密碼聯(lián)系方式 圖5.3 旅客實(shí)體聯(lián)系圖訂票信息實(shí)體聯(lián)系圖訂票信息訂票信息票價(jià)座位航線目的地期訂票日期訂票數(shù)量圖5.4 定票信息實(shí)體聯(lián)系圖定票費(fèi)用實(shí)體聯(lián)系圖定票費(fèi)用定票費(fèi)用新用戶會(huì)員定票價(jià)定票價(jià)航班類型座位需求圖5.5 訂票費(fèi)用實(shí)體聯(lián)系圖( 5) 退票實(shí)體聯(lián)系圖預(yù)定編號(hào)退票日期預(yù)定編號(hào)退票日期數(shù)量票價(jià)退 票數(shù)
40、量票價(jià)退 票圖5.6 退票實(shí)體聯(lián)系圖( 6) 實(shí)體間聯(lián)系圖用戶退票查詢用戶退票查詢用戶訂票訂票用戶票價(jià)用戶管理票價(jià)MNMNMN圖5.7 實(shí)體間聯(lián)系圖邏輯設(shè)計(jì)( 一) 轉(zhuǎn)換原則邏輯結(jié)構(gòu)設(shè)計(jì)的主要任務(wù)是, 把由概念結(jié)構(gòu)設(shè)計(jì)階段得出的E-R圖轉(zhuǎn)換為相應(yīng)的邏輯結(jié)構(gòu)。所謂相應(yīng)是指, 轉(zhuǎn)換后的邏輯結(jié)構(gòu)要與開發(fā)者所選用的軟硬環(huán)境相容, 能被前臺(tái)與后臺(tái)工具所支持。邏輯結(jié)構(gòu)設(shè)計(jì)一般分為三步: 將概念結(jié)構(gòu)轉(zhuǎn)換為一般的關(guān)系網(wǎng)狀層次模型; 將轉(zhuǎn)換后的模型向特定的DBMS支持下的數(shù)據(jù)模型轉(zhuǎn)換; 對(duì)數(shù)據(jù)模型進(jìn)行優(yōu)化。將E-R圖轉(zhuǎn)換為關(guān)系模型實(shí)際上是要將實(shí)體實(shí)體的屬性實(shí)體之間的聯(lián)系轉(zhuǎn)換為關(guān)系模式, 這種轉(zhuǎn)換一般遵循以下原則
41、; 一個(gè)實(shí)體型轉(zhuǎn)換為一個(gè)關(guān)系模式。一個(gè)1: 1的聯(lián)系能夠轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式, 也能夠與任意一端對(duì)應(yīng)的關(guān)系模式合并。一個(gè)1: n的聯(lián)系能夠轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式, 也能夠與n端對(duì)應(yīng)的關(guān)系模式合并。一個(gè)m: n 的聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式。三個(gè)或三個(gè)以上實(shí)體間的一個(gè)多元聯(lián)系能夠轉(zhuǎn)換為一個(gè)關(guān)系模式。具有相同碼的關(guān)系模式能夠合并。轉(zhuǎn)換的難點(diǎn)在于屬性的 轉(zhuǎn)換, 具體方法請(qǐng)參看有關(guān)數(shù)據(jù)庫設(shè)計(jì)方面的書籍, 這里不作詳細(xì)分析。( 二) 解釋設(shè)計(jì) 我所設(shè)計(jì)的機(jī)票預(yù)定信息系統(tǒng)包括四大方向: 用戶資料管理基本信息管理航線航班管理機(jī)票打印管理。經(jīng)過實(shí)際考察, 我掌握了用戶日常處理的大部分?jǐn)?shù)據(jù)。我將需求分析階段得
42、到的數(shù)據(jù)進(jìn)行了歸類, 并建立了初步的邏輯設(shè)計(jì)結(jié)果。( 三) 建立邏輯設(shè)計(jì)結(jié)果資料管理子系統(tǒng) 邏輯設(shè)計(jì)結(jié)果: 由上面機(jī)票預(yù)訂系統(tǒng)的E-R圖得到的關(guān)系模型如下( 關(guān)系的碼由下劃線標(biāo)出) : 會(huì)員表( 會(huì)員編號(hào), 姓名, 身份證號(hào), 聯(lián)系方式) 管理員表( 管理員編號(hào), 姓名, 身份證號(hào), 密碼) 航線航班管理子系統(tǒng) 邏輯設(shè)計(jì)結(jié)果: 航班表( 航班編號(hào), 航班票價(jià)) 航線表( 航線編號(hào), 航線名稱) 票價(jià)表( 航班號(hào), 國內(nèi), 國際) 訂票管理子系統(tǒng) 邏輯設(shè)計(jì)結(jié)果: 訂票表( 訂票編號(hào), 金額, 日期) 機(jī)票打印子系統(tǒng) 邏輯設(shè)計(jì)結(jié)果: 機(jī)票表( 機(jī)票編號(hào), 身份證編號(hào), 交費(fèi)日期, 票價(jià)) 表4.1
43、 所有用戶列表字段類型長度NULL備注用戶名Char10否無密碼Char10否無表4.2 訂票信息列表字段類型長度NULL備注航班號(hào)Char10否無日期Datetime8否無票價(jià)Char10否無身份證號(hào)Varchar50否無數(shù)量Char10否無表4.3 會(huì)員列表字段類型長度NULL備注會(huì)員編號(hào)Char10否無姓名Varchar50否無密碼Char10否無表4.4 航線航班信息列表 字段類型長度NULL備注國內(nèi)航班Char10否無國際航班Char10否無訂票日期Datetime8否無座位Char10否無票價(jià)Char10否無表4.5 退票表字段類型長度NULL備注退票編號(hào)Char10否無票價(jià)Cha
44、r10否無退票意見Char10否無物理設(shè)計(jì)數(shù)據(jù)庫在物理設(shè)備上的存儲(chǔ)結(jié)構(gòu)與存儲(chǔ)方法稱為數(shù)據(jù)庫的物理結(jié)構(gòu), 它依賴于給定的計(jì)算機(jī)系統(tǒng)。為一個(gè)給定邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用要求的物理結(jié)構(gòu)的過程, 就是數(shù)據(jù)庫的物理設(shè)計(jì)。數(shù)據(jù)庫的物理設(shè)計(jì)一般分為兩步: 確定數(shù)據(jù)庫的物理結(jié)構(gòu), 在關(guān)系數(shù)據(jù)庫中主要指存取方法和存儲(chǔ)結(jié)構(gòu); 對(duì)物理結(jié)構(gòu)進(jìn)行評(píng)價(jià), 評(píng)價(jià)的重點(diǎn)是時(shí)間和空間效率。不同的數(shù)據(jù)庫產(chǎn)品所提供的物理環(huán)境、 存取方法和存儲(chǔ)結(jié)構(gòu)有很大的差別, 能供設(shè)計(jì)人員使用的設(shè)計(jì)變量、 參數(shù)范圍也很不相同, 因此沒有通用的物理設(shè)計(jì)方法可遵循, 只能給出一般的設(shè)計(jì)內(nèi)容和原則。希望設(shè)計(jì)優(yōu)化的物理數(shù)據(jù)庫結(jié)構(gòu), 使得在數(shù)據(jù)庫上運(yùn)
45、行的各種事務(wù)響應(yīng)時(shí)間小、 存儲(chǔ)空間利用率高、 事務(wù)吞吐率大。為此首先對(duì)要運(yùn)行的事務(wù)進(jìn)行詳細(xì)分析, 獲得選擇物理數(shù)據(jù)庫設(shè)計(jì)所需要的參數(shù)。其次, 要充分了解所用的RDBMS的內(nèi)部特征, 特別是系統(tǒng)提供的存取方法和存儲(chǔ)結(jié)構(gòu)。數(shù)據(jù)庫物理設(shè)計(jì)過程中需要對(duì)時(shí)間效率、 空間效率、 維護(hù)代價(jià)和各種用戶要求進(jìn)行權(quán)衡, 其結(jié)果能夠產(chǎn)生多種方案, 數(shù)據(jù)庫設(shè)計(jì)人員必須對(duì)這些方案進(jìn)行細(xì)致的評(píng)價(jià), 從中選擇一個(gè)較優(yōu)的方案作為數(shù)據(jù)庫的物理結(jié)構(gòu)。評(píng)價(jià)物理數(shù)據(jù)庫的方法完全依賴于所選用的DBMS, 主要是從定量估算各種方案的存儲(chǔ)空間、 存取時(shí)間和維護(hù)代價(jià)入手, 對(duì)估算結(jié)果進(jìn)行權(quán)衡、 比較, 選擇出一個(gè)較優(yōu)的合理的物理結(jié)構(gòu)。如果該
46、結(jié)構(gòu)不符合用戶需求, 則需要修改設(shè)計(jì)。 詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì)階段的根本目的是確定應(yīng)該怎樣具體的實(shí)現(xiàn)所要求的系統(tǒng), 給出軟件模塊結(jié)構(gòu)中各個(gè)模塊的內(nèi)部過程描述。經(jīng)過這個(gè)階段的設(shè)計(jì)工作, 應(yīng)該得出對(duì)目標(biāo)系統(tǒng)的精確描述, 從而在編碼階段能夠把這個(gè)描述直接翻譯成用某種程序設(shè)計(jì)語言書寫的程序。菜單設(shè)計(jì)菜單中集成了用戶在程序窗口中所完成的絕大部分操作, 是程序開發(fā)中的核心元素。在設(shè)計(jì)窗口上適當(dāng)?shù)倪\(yùn)用菜單, 能夠使生成的應(yīng)用程序更貼近用戶, 是命令項(xiàng)更加直觀, 便于用戶識(shí)別。而且使用菜單有兩個(gè)很突出的優(yōu)點(diǎn), 一是節(jié)省屏幕的顯示空間。幾十甚至是上百種功能的選擇集合到菜單中也只是占用一行的空間。二是對(duì)系統(tǒng)功能的分門別
47、類, 菜單能夠一級(jí)一級(jí)地展開, 形成樹型結(jié)構(gòu), 條理清晰, 查找快捷。方便用戶使用同時(shí)也方便了開發(fā)人員對(duì)系統(tǒng)功能的管理和設(shè)置。菜單有3種類型: 下拉菜單、 彈出式菜單和級(jí)聯(lián)菜單。下拉菜單有菜單標(biāo)題、 菜單項(xiàng)組成。用戶選擇菜單標(biāo)題后, 該標(biāo)題下的菜單即被彈出。彈出式菜單與對(duì)象關(guān)聯(lián), 一般有稱為上下文相關(guān)菜單。一般來說, 當(dāng)用戶右擊某個(gè)對(duì)象時(shí), 出現(xiàn)彈出式菜單。級(jí)聯(lián)菜單能夠出現(xiàn)在前兩種菜單中, 在其父菜單項(xiàng)的后面有個(gè)向右的箭頭符號(hào), 指示該菜單項(xiàng)后面有級(jí)聯(lián)菜單。一般來說級(jí)聯(lián)菜單不宜超過兩層。在本系統(tǒng)中主要采用了下拉菜單, 為了使使用者更了解本系統(tǒng)的功能還適當(dāng)?shù)夭捎昧思?jí)聯(lián)菜單。在本系統(tǒng)中為了方便使用
48、主要以下拉菜單為主, 有少量的級(jí)聯(lián)菜單。本系統(tǒng)采用了ASP.NET作為開發(fā)環(huán)境, ASP.NET提供了很好的菜單控件及編輯工具。利用菜單控件編輯器能夠很方便地編輯菜單內(nèi)容, 添加菜單內(nèi)容對(duì)菜單進(jìn)行編寫代碼, 完成菜單的制作。如圖所示是機(jī)票預(yù)訂系統(tǒng)客戶端的菜單界面, 雙擊任何一個(gè)子菜單能夠?qū)ζ溥M(jìn)行編程: 圖6.1 菜單控件MenuStrip.經(jīng)過菜單控件制作的下拉菜單如圖: 圖6.2經(jīng)過菜單控件制作的下拉菜單模塊設(shè)計(jì)詳細(xì)設(shè)計(jì)階段的根本目的是確定應(yīng)該怎樣具體的實(shí)現(xiàn)所要求的系統(tǒng), 給出軟件模塊結(jié)構(gòu)中各個(gè)模塊的內(nèi)部過程描述。經(jīng)過這個(gè)階段的設(shè)計(jì)工作, 應(yīng)該得出對(duì)目標(biāo)系統(tǒng)的精確描述, 從而在編碼階段能夠把
49、這個(gè)描述直接翻譯成用某種程序設(shè)計(jì)語言書寫的程序。按功能設(shè)計(jì), 本系統(tǒng)分: 用戶登錄模塊, 用戶查詢訂票模塊, 機(jī)票打印模塊, 系統(tǒng)更新維護(hù)管理模塊, 共四個(gè)模塊。各個(gè)模塊所完成的功能下面進(jìn)行詳細(xì)介紹。在設(shè)計(jì)各模塊時(shí), 經(jīng)過了解專業(yè)的.net程序員的開發(fā)經(jīng)驗(yàn)知道, 在設(shè)計(jì)時(shí)會(huì)用到很多數(shù)據(jù)控件, 幾乎每一個(gè)窗體至少有一兩個(gè), 這樣在設(shè)計(jì)時(shí)看到每一個(gè)窗體非常亂, 為了美觀和使用方便, 建立一個(gè)數(shù)據(jù)模塊Data module非常必要。而且我是采用配置文件(*.ini)來動(dòng)態(tài)的連接數(shù)據(jù)庫的, 這樣系統(tǒng)的移植性更加強(qiáng)大, 無論服務(wù)器的IP或者名稱如何變化, 無論登陸的用戶名和密碼如何變化, 只要對(duì)配置文件
50、的相關(guān)字段進(jìn)行配置就能輕而易舉的適應(yīng)各種環(huán)境, 增加的本軟件的健壯性。用戶登錄流程圖如下: 開始開始用戶名和密碼是否為空?用戶名和密碼是否為空?是是提示: 輸入用戶名和密碼提示: 輸入用戶名和密碼是輸入信息是否正確?是輸入信息是否正確?否否提示: 輸入用戶名或密碼錯(cuò)誤, 重新輸入提示: 輸入用戶名或密碼錯(cuò)誤, 重新輸入退出系統(tǒng)進(jìn)入系統(tǒng)退出系統(tǒng)進(jìn)入系統(tǒng)結(jié)束結(jié)束圖6.3系統(tǒng)登陸流程該登陸流程是對(duì)登陸系統(tǒng)的全部過程演示。在該過程中ip地址由管理端提供, 用戶只要有自己的用戶名和密碼就能夠。當(dāng)用戶名和密碼全輸入后, 再對(duì)她們進(jìn)行判斷, 只有輸入名稱和密碼全部正確, 才能順利登陸主系統(tǒng)。根據(jù)該設(shè)計(jì)思路,
51、 設(shè)計(jì)出的登陸界面如圖所示: 圖6.4登錄界面首先創(chuàng)立窗體Form1,”Text”設(shè)置為”客戶端” 。在窗體上添加Label1, Label2和Label3對(duì)其text屬性分別設(shè)置為 ”服務(wù)器地址”, ”用戶名”, ”密碼”和在窗體下方添加Button1 , Button2和Button3, 對(duì)其text屬性分別設(shè)置為”確定”關(guān)閉”和”注冊(cè)” 。同時(shí)也能夠在其屬性中添加Image圖片等內(nèi)容, 用于美化界面。雙擊確定按鈕進(jìn)行編寫代碼: conn con = new conn(this.textBox1.Text); SqlConnection sqlCon = con.createConn();
52、 SqlCommand cmd = new SqlCommand(select * from login where name= + this.textBox2.Text + ,sqlCon); cmd.ExecuteNonQuery(); /這一小部分代碼是連接號(hào)數(shù)據(jù)庫后執(zhí)行查詢操作; SqlDataReader dr = cmd.ExecuteReader(); dr.Read(); string temp1 = dr.GetValue(1).ToString().Trim(); string temp = dr.GetValue(2).ToString().Trim(); /這部分代碼是
53、從數(shù)據(jù)庫中取值; if (this.textBox3.Text = temp & this.textBox2.Text = temp1) ip = this.textBox1.Text; main newfrm = new main(); newfrm.Show(); /這部分代碼是轉(zhuǎn)到main窗體; else MessageBox.Show(密碼錯(cuò)誤, 登陸錯(cuò)誤); this.textBox2.Text = ; this.textBox3.Text = ; /顯示相關(guān)錯(cuò)誤提示; 經(jīng)過登陸界面就能進(jìn)入到系統(tǒng)操作界面。在操作界面中以菜單為主, 經(jīng)過菜單能夠找到系統(tǒng)中的全部動(dòng)能。該界面主要使用菜單
54、控件MenuStrip. 這個(gè)控件使用起來相當(dāng)方便, 首先點(diǎn)擊每個(gè)主目錄修改完名稱后, 會(huì)彈出下拉菜單然后編寫其它子功能的名稱, 依次這樣進(jìn)行便能夠完成。系統(tǒng)在后面還多次使用了該控件, 以后就不做仔細(xì)闡述。圖6.5操作界面經(jīng)過點(diǎn)選操作界面上方的菜單, 能夠選擇具體的功能。當(dāng)選擇對(duì)應(yīng)的功能項(xiàng)后, 在操作界面上會(huì)彈出一個(gè)新的操作窗體, 用戶能夠在這個(gè)新窗體中進(jìn)行所需操作, 并能夠隨時(shí)關(guān)閉窗體返回操作界面。在整個(gè)過程中, 操作界面的大窗體并不關(guān)閉, 這樣能夠方便用戶的操作。在會(huì)員管理的菜單中包括會(huì)員注冊(cè)。在客戶端這邊只需要進(jìn)行注冊(cè)。會(huì)員的修改密碼和其它信息等在服務(wù)器那邊進(jìn)行。會(huì)員注冊(cè)的操作界面如圖:
55、 圖6.6注冊(cè)新用戶界面圖服務(wù)器端管理員進(jìn)行對(duì)會(huì)員的修改包括: 密碼修改, 會(huì)員查詢, 刪除會(huì)員。還有客戶端的主要功能界面的各個(gè)顯示界面如下, 客戶端代碼這里就不寫出來了。該窗體主要使用的控件有dataGridView, button,textbox,combo等。圖6.7航班查詢界面圖圖6.8用戶訂票界面圖創(chuàng)立窗體dingpiao,”Text”設(shè)置為”訂票” 。在窗體上添加combo1, combo2對(duì)其text屬性分別設(shè)置為 ”航班號(hào)”, ”日期”,和在窗體下方添加Button1 , Button2對(duì)其text屬性分別設(shè)置為”確定”關(guān)閉”。同時(shí)添加打印機(jī)票按鈕, 點(diǎn)擊后可進(jìn)入打印界面。也能
56、夠在其屬性中添加Image圖片等內(nèi)容, 用于美化界面。雙擊確定按鈕進(jìn)行編寫代碼.這個(gè)窗體可是說是客戶端中的突出主要功能頁面, 它的主要實(shí)現(xiàn)代碼如下: private void dingpiao_Load(object sender, EventArgs e) boBox1.Text = ; this.textBox1.Text = ; this.textBox2.Text = ; /設(shè)置當(dāng)前的文本框?yàn)榭? SqlConnection Conn = new Conn.ConnectionString = workstation id=+Form1.ip+;Integrated Security=
57、SSPI;database=機(jī)票; /定義連接數(shù)據(jù)庫; SqlCommand cmd = new SqlCommand(); cmd.CommandText = select * from 票價(jià); cmd.Connection = Conn; Conn.Open(); cmd.ExecuteNonQuery(); /按照指定語句進(jìn)行查詢; private void button1_Click(object sender, EventArgs e) SqlConnection Conn = new Conn.ConnectionString = workstation id= + Form1.i
58、p + ;Integrated Security=SSPI;database=機(jī)票; SqlCommand cmd = new SqlCommand(); cmd.CommandText = insert into 訂票 (航班號(hào),日期,票價(jià),數(shù)量,身份證號(hào)) values ( + boBox1.Text + , + this.dateTimePicker1.Text + , + this.textBox1.Text + , + this.textBox2.Text + , + this.textBox3.Text + ); /往數(shù)據(jù)庫里面插入新數(shù)據(jù); cmd.Connection = Con
59、n; Conn.Open(); cmd.ExecuteNonQuery(); Conn.Close(); 用戶打印界面采用的是水晶報(bào)表的方式把用戶訂票的數(shù)據(jù)添加到報(bào)表中, 用戶可在其中進(jìn)行查詢完成打印。用戶訂票后打印憑證的界面如圖所示: 該窗體主要是水晶報(bào)表的使用即CrystalReport。這個(gè)報(bào)表在用戶打印, 和其它控件比如combo等一起使用時(shí), 非常方便靈活, 是當(dāng)前比較流行使用的控件。 圖6.9用戶訂票打印界面圖其主要實(shí)現(xiàn)代碼如下: private void button1_Click(object sender, EventArgs e) DataTable MyTable = n
60、ew DataTable(); cmd.ExecuteNonQuery(); /新定義一個(gè)數(shù)據(jù)表格, 執(zhí)行數(shù)據(jù)庫查詢; SqlDataReader dr = cmd.ExecuteReader(); MyTable.Load(dr); Conn.Close(); CrystalReport1 MyReport = new CrystalReport1(); MyReport.SetDataSource(MyTable); /從水晶報(bào)表中設(shè)置數(shù)據(jù)記錄數(shù)據(jù); this.crystalReportViewer1.ReportSource = MyReport; ; 在客戶端還對(duì)客戶實(shí)現(xiàn)了客戶留言功能
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年地產(chǎn)項(xiàng)目環(huán)保評(píng)估居間合同范本3篇
- 2024年食品研發(fā)代工生產(chǎn)及品牌授權(quán)協(xié)議2篇
- 2025年度消防技術(shù)服務(wù)與勞務(wù)派遣合作協(xié)議3篇
- 2025演出服務(wù)合同2
- 二零二五年度農(nóng)產(chǎn)品加工企業(yè)股權(quán)轉(zhuǎn)讓價(jià)格確認(rèn)協(xié)議3篇
- 2025年家長學(xué)校學(xué)生安全責(zé)任協(xié)議共保學(xué)生平安2篇
- 二零二五年家居建材市場(chǎng)攤位租賃合同范本6篇
- 2025采購合同示例
- 2024版施工項(xiàng)目承攬協(xié)議樣本版
- 2024新版殯葬業(yè)務(wù)合作合同范本版B版
- 2024年有限合伙股權(quán)代持
- 廣東珠海市駕車沖撞行人案件安全防范專題培訓(xùn)
- 花城版一年級(jí)上冊(cè)音樂 第3課 《國旗國旗真美麗》(教案)
- 2024年四川高校對(duì)口招生考試中職英語試卷真題(含答案)
- 食品質(zhì)量安全法律法規(guī)培訓(xùn)
- 醫(yī)療儀器安裝與調(diào)試方案
- 陜西省陜西師大附中2025屆高一物理第一學(xué)期期末統(tǒng)考模擬試題含解析
- 人教版2024年小學(xué)二年級(jí)上學(xué)期語文期末考試往年真題
- 2024年保安員證考試題庫及答案(共130題)
- 2024壓鑄機(jī)安全技術(shù)規(guī)范
- 期末綜合素養(yǎng)評(píng)價(jià) (三)(試題)-2024-2025學(xué)年一年級(jí)上冊(cè)數(shù)學(xué)
評(píng)論
0/150
提交評(píng)論