公交查詢(xún)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)論文_第1頁(yè)
公交查詢(xún)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)論文_第2頁(yè)
公交查詢(xún)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)論文_第3頁(yè)
公交查詢(xún)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)論文_第4頁(yè)
公交查詢(xún)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)論文_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、公交查詢(xún)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)論文1引言隨著城市經(jīng)濟(jì)的發(fā)展、規(guī)模的擴(kuò)大以及人口的增長(zhǎng),城市交通問(wèn)題日益突出。降低出行時(shí)間將使所有的公交利用者產(chǎn)生效益,快速的交通、更好的信息及更好的市場(chǎng)可以提高公交的形象,能夠增加公交乘坐者。城市公共交通運(yùn)輸以其覆蓋面廣、經(jīng)濟(jì)、快捷的特點(diǎn),成為絕大多數(shù)出行者的首選方式,也是各地城市政府大力發(fā)展的一種交通方式。本地市民特別是外來(lái)旅游、出差、就醫(yī)等急需了解本地道路情況的人可以利用本系統(tǒng)方便快捷的查詢(xún)出所有符合他們要求的公交路線,對(duì)他們的出行和生活提供幫助。我國(guó)城市公交乘客信息系統(tǒng)的發(fā)展處于一個(gè)落后的水平,廣大乘客可以獲得信息的方式很少,公交信息的完整性和準(zhǔn)確性得不到保證,而

2、且還沒(méi)有專(zhuān)門(mén)的機(jī)構(gòu)負(fù)責(zé)信息的發(fā)布和管理。出于這個(gè)目的,在老師的指導(dǎo)下,我設(shè)計(jì)了這個(gè)城市公交線路查詢(xún)系統(tǒng)。在對(duì)公交乘客出行心理特征進(jìn)行分析的基礎(chǔ)上,考慮乘客選擇公交線路決策的因素,進(jìn)行程序關(guān)鍵部分的框架設(shè)計(jì)?,F(xiàn)階段,人們的出入方式主要還是來(lái)源于城市公交,特別是對(duì)于那些到外地出差、打工,進(jìn)行商業(yè)有關(guān)或其他事情需要在外地進(jìn)行短暫停留的人而言,公交對(duì)他們是必不可少的,但是對(duì)于那個(gè)不屬于自己所熟悉的城市,坐公交也是一個(gè)很大的難題,因此,開(kāi)發(fā)一個(gè)公交查詢(xún)系統(tǒng)就顯得非常的重要。本系統(tǒng)的核心是對(duì)選擇好的車(chē)次進(jìn)行路線的查詢(xún),或者輸入所要查詢(xún)的車(chē)站名,點(diǎn)擊“查詢(xún)”按鈕,查詢(xún)所有含有該站的車(chē)次及相應(yīng)的停靠站。此處既

3、可以“精確查詢(xún)”也可以是“模糊查詢(xún)”,“模糊查詢(xún)”主要方便那些對(duì)站名不是很清楚,但知道其中的一部分的乘客,系統(tǒng)可以幫助他們快速的查出。1.1論文的研究?jī)?nèi)容 公交查詢(xún)系統(tǒng)是一個(gè)取代過(guò)去由人工查詢(xún)的查詢(xún)系統(tǒng)。本論文論述了一個(gè)基于瀏覽器/服務(wù)器(BB/Srowser/Server)模式的公交查詢(xún)系統(tǒng)的研究和實(shí)現(xiàn)的過(guò)程. 論文從開(kāi)發(fā)平臺(tái)和工具談起,對(duì)ASP.NET服務(wù)器所提供的組件及其屬性和方法做了一般介紹,更重要的是闡述了ASP.NET的數(shù)據(jù)庫(kù)訪問(wèn)組件ADO.NET的使用方法。最后,詳細(xì)介紹了如何創(chuàng)建“公交查詢(xún)系統(tǒng)”的全部過(guò)程。2 系統(tǒng)的開(kāi)發(fā)工具與環(huán)境2.1ASP.NET簡(jiǎn)介ASP.NET是一種建立

4、在通用語(yǔ)言上的程序構(gòu)架,能被用于一臺(tái)Web務(wù)器來(lái)建立強(qiáng)大的應(yīng)用程序。ASP.NET提供許多比現(xiàn)在的開(kāi)發(fā)模式強(qiáng)大的的優(yōu)勢(shì)。AS.PNET建立在.NET Framework的編程類(lèi)之上,它提供了一個(gè)web應(yīng)用程序模型,并且包含使生成web應(yīng)用程序變得簡(jiǎn)單的控件集和結(jié)構(gòu)。ASP.NET包含封裝公共用戶(hù)界面元素(如文本框和下拉菜單)的控件集。但這些控件在務(wù)器上運(yùn)行,并以HTML的形式將它們的用戶(hù)界面推送到瀏覽器。在服務(wù)器上,這些控件公開(kāi)一個(gè)面向?qū)ο蟮木幊棠P停瑸閣eb開(kāi)發(fā)人員提供了面向?qū)ο蟮木幊痰呢S富性。ASP.NET還提供結(jié)構(gòu)服務(wù)(如會(huì)話狀態(tài)管理和進(jìn)程回收),進(jìn)一步減少了開(kāi)發(fā)人員必須編寫(xiě)的代碼量并提

5、高了應(yīng)用程序的可靠性。另外,ASP.NET 使用這些同樣的概念使開(kāi)發(fā)人員能夠以服務(wù)的形式交付軟件。使用ML webservices功能ASP.NET開(kāi)發(fā)人員可以編寫(xiě)自己的業(yè)務(wù)邏輯并使ASP.NETT結(jié)構(gòu)通過(guò)SOAP交付該服務(wù)。Visual Studio .NET是一套完整的開(kāi)發(fā)工具,用于生成應(yīng)用程序、XML Web services、桌面應(yīng)用程序和移動(dòng)應(yīng)用程序。Visual Basic .NET、Visual C+ .NET、Visual C# .NET和VisualJ# .NET全都使用相同的集成開(kāi)發(fā)環(huán)境(IDE),該環(huán)境允許它們共享工具并有助于創(chuàng)建混合語(yǔ)言解決方案。另外,這些語(yǔ)言利用了.N

6、ET Framework的功能,此框架提供對(duì)簡(jiǎn)化應(yīng)用程序和XML Web services 開(kāi)發(fā)的關(guān)鍵技術(shù)的訪問(wèn)。 2.1.1ASP.NET技術(shù)的優(yōu)點(diǎn) ASP.NET是一種將各種Web元素組合在一起的服務(wù)器技術(shù),是一個(gè)統(tǒng)一的Web開(kāi)發(fā)平臺(tái),它提供了生成一個(gè)完整的Web應(yīng)用程序所必須要的各種服務(wù)。與以前的開(kāi)發(fā)模型相比較,它提供了以下數(shù)個(gè)重要的優(yōu)點(diǎn):(1) 增強(qiáng)的性能。ASP.NET是在服務(wù)器上運(yùn)行的編譯好的公共語(yǔ)言運(yùn)行庫(kù)代碼。與被解釋的前輩不同,.NET可利用早期綁定、實(shí)時(shí)編譯、本機(jī)優(yōu)化和盒外緩存服務(wù)。這相當(dāng)于在編寫(xiě)代碼之前便顯著提高了性能。(2) 世界級(jí)的工具支持。ASP.NET框架補(bǔ)充了Vi

7、sual Studio集成開(kāi)發(fā)環(huán)境中的大量工具箱和設(shè)計(jì)器。WYSIWYG編輯、拖放服務(wù)器控件和自動(dòng)部署只是這個(gè)強(qiáng)大的工具所提供功能中的少數(shù)幾種(3) 威力和靈活性。由于ASP.NET基于公共語(yǔ)言運(yùn)行庫(kù),因此應(yīng)用程序開(kāi)發(fā)人員可以利用整個(gè)平臺(tái)的威力和靈活性。.NET框架類(lèi)庫(kù)、消息處理和數(shù)據(jù)訪問(wèn)解決方案都可從 Web 無(wú)縫訪問(wèn)。ASP.NETT也與語(yǔ)言無(wú)關(guān),所以可以選擇最適合應(yīng)用程序的語(yǔ)言(如C#),或是跨多種語(yǔ)言分割應(yīng)用程序。另外,公共語(yǔ)言運(yùn)行庫(kù)的交互性保證在遷移到ASP.NET時(shí)保留基于COM的開(kāi)發(fā)中的現(xiàn)有投資。(4) 簡(jiǎn)易性。ASP.NET使執(zhí)行常見(jiàn)任務(wù)變得容易,從簡(jiǎn)單的窗體提交和客戶(hù)端身份驗(yàn)

8、證到部署的站點(diǎn)配置。(5)可管理性。ASP.NET采用基于文本的分層配置系統(tǒng),簡(jiǎn)化了將設(shè)置應(yīng)用于服務(wù)器環(huán)境和Web應(yīng)用程序。由于配置信息是以純文本形式存儲(chǔ)的,因此可以在沒(méi)有本地管理工具幫助的情況下應(yīng)用新設(shè)置。此“零本地管理”哲學(xué)也擴(kuò)展到了ASP.NET框架應(yīng)用程序的部署。只需將必要的文件復(fù)制到服務(wù)器,即可將ASP.NET框架應(yīng)用程序部署到服務(wù)器。不需要重新啟動(dòng)服務(wù)器,即使是在部署或替換運(yùn)行的編譯代碼時(shí)。(6)可縮放性和可用性。ASP.NET在設(shè)計(jì)時(shí)考慮了可縮放性,增加了專(zhuān)門(mén)用于在聚集環(huán)境和多處理器環(huán)境中提高性能的功能。另外,進(jìn)程受到ASP.NET 運(yùn)行庫(kù)的密切監(jiān)視和管理,以便當(dāng)進(jìn)程行為不正常(

9、泄漏、死鎖)時(shí),可就地創(chuàng)建新進(jìn)程,以幫助保持應(yīng)用程序始終可用于處理請(qǐng)求。2.1.2 .NET Framework概述NET Framework是用于生成、部署和運(yùn)行XML Web services 和應(yīng)用程序的多語(yǔ)言環(huán)境。它由以下幾個(gè)主要部分組成: 公共語(yǔ)言運(yùn)行庫(kù)運(yùn)行庫(kù)實(shí)際上在組件的運(yùn)行時(shí)和開(kāi)發(fā)時(shí)操作中都起到很大的作用,盡管名稱(chēng)中沒(méi)有體現(xiàn)這個(gè)意思。在組件運(yùn)行時(shí),運(yùn)行庫(kù)除了負(fù)責(zé)滿(mǎn)足此組件在其他組件上可能具有的依賴(lài)項(xiàng)外,還負(fù)責(zé)管理內(nèi)存分配、啟動(dòng)和停止線程和進(jìn)程,以及強(qiáng)制執(zhí)行安全策略。在開(kāi)發(fā)時(shí),運(yùn)行庫(kù)的作用稍有變化;由于做了大量的自動(dòng)處理工作(如內(nèi)存管理),運(yùn)行庫(kù)使開(kāi)發(fā)人員的操作非常簡(jiǎn)單,尤其是與今

10、天的COM相比。特別是反射等功能顯著減少了開(kāi)發(fā)人員為將業(yè)務(wù)邏輯轉(zhuǎn)變?yōu)榭芍赜媒M件而必須編寫(xiě)的代碼量。 統(tǒng)一編程類(lèi) 該框架為開(kāi)發(fā)人員提供了統(tǒng)一的、面向?qū)ο蟮?、分層的和可擴(kuò)展的類(lèi)庫(kù)集(API)。目前,C+開(kāi)發(fā)人員使用Microsoft基礎(chǔ)類(lèi),而Java開(kāi)發(fā)人員使用Windows 基礎(chǔ)類(lèi)。框架統(tǒng)一了這些完全不同的模型并且為Visual Basic和JScript程序員同樣提供了對(duì)類(lèi)庫(kù)的訪問(wèn)。通過(guò)創(chuàng)建跨所有編程語(yǔ)言的公共API 集,公共語(yǔ)言運(yùn)行庫(kù)使得跨語(yǔ)言繼承、錯(cuò)誤處理和調(diào)試成為可能。從JScript到C+的所有編程語(yǔ)言具有對(duì)框架的相似訪問(wèn),開(kāi)發(fā)人員可以自由選擇它們要使用的語(yǔ)言。2.2 ADO.NET概

11、述 ADO.NET并不是ADO的升級(jí)版本,它是全新的面向?qū)ο竽P?。比ADO更適應(yīng)于分布式及Internet等大型應(yīng)用程序環(huán)境,為了多人同時(shí)存取更具擴(kuò)展性,ADO.NET的數(shù)據(jù)存取采用的是離線存取模式,可說(shuō)是專(zhuān)門(mén)為.NET臺(tái)設(shè)計(jì)的數(shù)據(jù)存取結(jié)構(gòu)。它具有簡(jiǎn)單地訪問(wèn)關(guān)系數(shù)據(jù)、可擴(kuò)展性、支持多層應(yīng)用程序、統(tǒng)一XML和關(guān)系數(shù)據(jù)訪問(wèn)的特點(diǎn)。ADO.NET的主要目標(biāo)是提供對(duì)關(guān)系數(shù)據(jù)的簡(jiǎn)單訪問(wèn)功能。坦白的說(shuō),易于使用的類(lèi)描述關(guān)系數(shù)據(jù)庫(kù)中的表、列和行。另外,ADO.NET引入了DataSet類(lèi),它代表來(lái)自封裝在一個(gè)單元中的關(guān)聯(lián)表中的一組數(shù)據(jù),維持他們之間完整的關(guān)系。這是在ADO.NET中的新概念,可以顯著的擴(kuò)展數(shù)

12、據(jù)訪問(wèn)接口的功能。ADO.NET可以擴(kuò)展它為插件.NET數(shù)據(jù)提供者(也稱(chēng)為可管理提供者)提供了框架,這些提供者被構(gòu)建,以便從任何數(shù)據(jù)源讀取和寫(xiě)入數(shù)據(jù)。ADO.NET提供了兩種內(nèi)置的.NET數(shù)據(jù)提供者,一種用于OLE DB數(shù)據(jù)源,另一種用于Microsoft SQL Server??梢酝ㄟ^(guò)OLE DB訪問(wèn)數(shù)據(jù)格式(比如Microsoft Access)、第三方數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)另外,Microsoft最近預(yù)演了用于ADO.NET的ODBC.NET數(shù)據(jù)提供者,它允許.NET訪問(wèn)更多的舊的數(shù)據(jù)格式和第三方數(shù)據(jù)庫(kù)。ADO.NET用于多層應(yīng)用程序。這是當(dāng)今商業(yè)和電子商務(wù)應(yīng)用程序最常見(jiàn)的體系結(jié)構(gòu)。在多層體

13、系結(jié)構(gòu)中,應(yīng)用邏輯的不同部5分1運(yùn)a行s在p多x個(gè)服務(wù)器或進(jìn)程中,每一部分就稱(chēng)為一層。ADO.NET使用開(kāi)放的Internet標(biāo)準(zhǔn)XML格式在層之間通信,允許數(shù)通過(guò)Internet防火來(lái)傳遞,并允許以非Microsoft技術(shù)來(lái)實(shí)現(xiàn)一層或多層。那么在Visual Studio.NET中ADO.NET訪問(wèn)數(shù)據(jù)庫(kù)分為二種。一種是SQL Server數(shù)據(jù)庫(kù),另一種是其任何類(lèi)型的數(shù)據(jù)庫(kù)。本系統(tǒng)的后臺(tái)數(shù)據(jù)庫(kù)為SQL Server2005,因此是通過(guò)SQLConnection、SqlCommandSqlDataAdapter、DataSet等幾個(gè)主要的數(shù)據(jù)訪問(wèn)對(duì)象來(lái)訪問(wèn)數(shù)據(jù)的.3 需求分析 3.1系統(tǒng)需求分

14、析隨著我國(guó)經(jīng)濟(jì)的高速發(fā)展,人們生活水平的提高,越來(lái)越多的人開(kāi)始熱衷于到外地旅游。那么對(duì)于這些外來(lái)旅游者,首先搞清這個(gè)城市的公交路線顯的很重要!我的家鄉(xiāng)沈陽(yáng),作為一個(gè)旅游城市,每年都要吸引大量的游客,為了滿(mǎn)足這些游客熟悉公交路線的需求,特以公交查詢(xún)系統(tǒng)為設(shè)計(jì)課題。本軟件不僅能給游客帶來(lái)方便,也能給廣大市民提供方便。我認(rèn)為這樣的系統(tǒng)應(yīng)該具有很好的實(shí)用性!開(kāi)發(fā)本系統(tǒng)的目標(biāo)就是立足廣大乘客的實(shí)際,著眼于公交業(yè)的未來(lái)發(fā)展,規(guī)范公交管理,提高服務(wù)質(zhì)量,方便乘客查詢(xún),并為此設(shè)計(jì)該系統(tǒng)。人們生活水平的提高,越來(lái)越多人喜歡旅游,但是第一次來(lái)一個(gè)陌生的城市,肯定對(duì)公交路線不熟悉,所以必定需要一個(gè)能查看具體公交線路

15、的公交系統(tǒng)。有些只知道一個(gè)站的某幾個(gè)字或一個(gè)車(chē)次的某幾個(gè)數(shù)字,所以本系統(tǒng)將給出站點(diǎn)的模糊查詢(xún),方便用戶(hù)的查詢(xún),有些只知道車(chē)次或某個(gè)站點(diǎn),本系統(tǒng)也給出了公交線路查詢(xún)、公交站點(diǎn)查詢(xún)、公交換乘查詢(xún),進(jìn)一步方便大家的出行,但也有用戶(hù)什么都查不到,想留言問(wèn)問(wèn)人,所以再搞個(gè)留言板很有必要,方便大家交流以及解答各種疑難問(wèn)題! 本系統(tǒng)采用結(jié)構(gòu)化設(shè)計(jì)的方法來(lái)實(shí)現(xiàn)系統(tǒng)總體功能,提高系統(tǒng)的各項(xiàng)指標(biāo),即將整個(gè)系統(tǒng)合的劃分成各個(gè)功能模塊,正確地處理模塊之間和模塊內(nèi)部的聯(lián)系以及和數(shù)據(jù)庫(kù)的聯(lián)系,定義各模塊的內(nèi)部結(jié)構(gòu),通過(guò)對(duì)模塊的設(shè)計(jì)和模塊之間關(guān)系的系統(tǒng)來(lái)實(shí)現(xiàn)整個(gè)系統(tǒng)的功能前臺(tái)主要有3個(gè)模塊,線路查詢(xún)、站點(diǎn)查詢(xún)、公交換乘模塊

16、和后臺(tái)管理模塊 功能名稱(chēng):線路查詢(xún) 功能概述:可以獲得要查詢(xún)公交所通過(guò)的各個(gè)站點(diǎn)。 功能名稱(chēng):站點(diǎn)查詢(xún) 功能概述:通過(guò)輸入的指定站點(diǎn)查詢(xún)經(jīng)過(guò)該站點(diǎn)的公交。 功能名稱(chēng):公交換乘查詢(xún) 功能概述:分為公交直達(dá)、公交一次換乘,主要體現(xiàn)那些不可直達(dá)需要轉(zhuǎn)車(chē)的路線的所有換法。(如果用戶(hù)輸入的起始點(diǎn)和終點(diǎn),有一條及一條以上的公交線可以直達(dá)的,則為公交直達(dá);如果輸入的起始點(diǎn)和終點(diǎn),沒(méi)有一條公交線可以直接到的,系統(tǒng)將會(huì)給出一次換乘的方案,則為公交一次換乘) 功能名稱(chēng):后臺(tái)管理功能概述:用于管理員登陸,添加、修改、刪除公交線路,修改信息資料、安全密碼,回復(fù)留言板等功能。 本系統(tǒng)提供了的車(chē)次查詢(xún)功能、路5線1查A詢(xún)

17、S功P能X。乘客可以方便的進(jìn)行查詢(xún),以防乘錯(cuò)車(chē)次。當(dāng)然有些功能的智能化不是很強(qiáng),系統(tǒng)有待進(jìn)一步來(lái)完善。3.2 數(shù)據(jù)庫(kù)需求分析數(shù)據(jù)庫(kù)在一個(gè)信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的好壞將直接對(duì)應(yīng)用系統(tǒng)的效率以及實(shí)現(xiàn)的效果產(chǎn)生影響。合理的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)可以提高數(shù)據(jù)存儲(chǔ)的效率,保證數(shù)據(jù)的完整和一致。 數(shù)據(jù)庫(kù)技術(shù)是由傳統(tǒng)的文件系統(tǒng)發(fā)展而來(lái)的,從層次模型、網(wǎng)狀模型發(fā)展到關(guān)系模型。數(shù)據(jù)庫(kù)技術(shù)是數(shù)據(jù)管理的最新技術(shù),是計(jì)算機(jī)科學(xué)的一個(gè)重要分支,它能指導(dǎo)我們正確地設(shè)計(jì)數(shù)據(jù)庫(kù)系統(tǒng),它的出現(xiàn)極大地促進(jìn)了計(jì)算機(jī)應(yīng)用的發(fā)展。采用數(shù)據(jù)庫(kù)技術(shù)的原理和方法可以有效地設(shè)計(jì)實(shí)用的數(shù)據(jù)庫(kù)系統(tǒng)。一個(gè)完整的數(shù)據(jù)庫(kù)系統(tǒng)包括數(shù)據(jù)庫(kù)

18、管理系統(tǒng)(DBMS),數(shù)據(jù)庫(kù)管理員(DBA)、數(shù)據(jù)庫(kù)(DB)、應(yīng)用程序和相應(yīng)的硬件設(shè)施。 目前許多數(shù)據(jù)庫(kù)管理系統(tǒng)都基于關(guān)系模型,關(guān)系模型的主要特點(diǎn)是用表格結(jié)構(gòu)表達(dá)實(shí)體,用鍵表示實(shí)體與實(shí)體之間的聯(lián)系。與層次模型和網(wǎng)狀模型相比,關(guān)系模型比較簡(jiǎn)單,容易為初學(xué)者接受。關(guān)系模型是由若干個(gè)關(guān)系模式組成的集合,關(guān)系模式相當(dāng)于記錄類(lèi)型,它的實(shí)例稱(chēng)為關(guān)系。每個(gè)關(guān)系是一張表格。表格簡(jiǎn)單,用戶(hù)易懂,用戶(hù)只需用簡(jiǎn)單的查詢(xún)語(yǔ)句就可以對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)操作,并不涉及到存儲(chǔ)結(jié)構(gòu),訪問(wèn)技術(shù)等細(xì)節(jié)。關(guān)系模型是數(shù)學(xué)化的模型,要用到集合論,離散數(shù)學(xué)等知識(shí)。SQL語(yǔ)言是關(guān)系數(shù)據(jù)庫(kù)的代表性語(yǔ)言,已經(jīng)得到廣泛應(yīng)用。 在設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí),應(yīng)注意

19、數(shù)據(jù)的安全性,保證數(shù)據(jù)的安全,防止非法用戶(hù)訪問(wèn)數(shù)據(jù)庫(kù),以免泄露重要信息,同時(shí)也能51防A止s非法用戶(hù)的蓄意破壞,有許多保護(hù)數(shù)據(jù)的方法,如采用用戶(hù)標(biāo)識(shí),口令密碼或訪問(wèn)控制等方法。一個(gè)成功的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)應(yīng)具有用戶(hù)標(biāo)識(shí),每一個(gè)合法用戶(hù)具有一個(gè)用戶(hù)名和相應(yīng)的口令,進(jìn)入數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)前必須輸入正確的口令,否則無(wú)法進(jìn)入系統(tǒng),這就保證了只有合法的用戶(hù)才能操作數(shù)據(jù)庫(kù)系統(tǒng)。為了保證數(shù)據(jù)的合法語(yǔ)義,必須對(duì)數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行完整性約束,即防止用戶(hù)輸入不合語(yǔ)義的數(shù)據(jù)。 在設(shè)計(jì)應(yīng)用軟件時(shí),應(yīng)嚴(yán)格按照軟件工程學(xué)的方法進(jìn)行設(shè)計(jì),傳統(tǒng)的方法采用瀑布模型,從問(wèn)題定義、可行性分析、需求分析、概念設(shè)計(jì)、總體設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)、編碼和軟

20、件測(cè)試、運(yùn)行和維護(hù)等軟件生命周期內(nèi),每一階段均在前一階段的基礎(chǔ)上進(jìn)行設(shè)計(jì),并在每一階段有相應(yīng)的文檔資料。設(shè)計(jì)數(shù)據(jù)庫(kù)系統(tǒng)時(shí)應(yīng)該首先充分了解用戶(hù)各個(gè)方面的需求,包括現(xiàn)有的以及將來(lái)可能增加的需求。數(shù)據(jù)庫(kù)設(shè)計(jì)一般包括如下幾個(gè)步驟:數(shù)據(jù)庫(kù)需要分析,數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì),數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)。 4系統(tǒng)概要設(shè)計(jì)4.1概述本階段設(shè)計(jì)的基本目標(biāo)是解決系統(tǒng)如何實(shí)現(xiàn)問(wèn)題,也叫做概要設(shè)計(jì),本階段主要任務(wù)是劃分出系統(tǒng)的物理元素及設(shè)計(jì)軟件的結(jié)構(gòu),完成軟件定義時(shí)期的任務(wù)之后就應(yīng)該對(duì)系統(tǒng)進(jìn)行總體設(shè)計(jì),即根據(jù)系統(tǒng)分析產(chǎn)生的分析結(jié)果來(lái)確定這個(gè)系統(tǒng)由哪些系統(tǒng)和模塊組成,這些系統(tǒng)和模塊又如何有機(jī)的結(jié)合在一起,每個(gè)模塊的功能如何實(shí)現(xiàn)。系統(tǒng)

21、設(shè)計(jì)的目標(biāo)是使系統(tǒng)實(shí)現(xiàn)擁有所要求的功能,同時(shí),力爭(zhēng)達(dá)到高效率、高可靠性、可修改性,并且容易掌握和使用。模塊化的依據(jù)是:把復(fù)雜問(wèn)題分解成許多容易解決的小問(wèn)題。原來(lái)的問(wèn)題也就變得容易解決。模塊化設(shè)計(jì)是把大型軟件按照一定的原則劃分成一個(gè)較小的相對(duì)功能獨(dú)立又相關(guān)聯(lián)的模塊。每個(gè)模塊完成一個(gè)特定的子功能。把這些模塊結(jié)合起來(lái)組成一個(gè)整體。完成指定的功能,滿(mǎn)足問(wèn)題的要求。采用模塊化原理的優(yōu)點(diǎn)在于可以使軟件結(jié)構(gòu)清晰,容易測(cè)試和調(diào)試。從而提高軟件的可靠性,可修改性。有助于軟件開(kāi)發(fā)的組織管理。一個(gè)大型軟件可分別編寫(xiě)不同的模塊。4.2功能模塊劃分查詢(xún)系統(tǒng)模塊該模塊實(shí)現(xiàn)公交查詢(xún)功能??蓪?shí)現(xiàn)按線路查詢(xún)、站點(diǎn)查詢(xún)和起點(diǎn)終點(diǎn)

22、查詢(xún)?nèi)N查詢(xún)方式。錄入系統(tǒng)模塊該模塊實(shí)現(xiàn)數(shù)據(jù)的新增、修改、刪除功能。4.3.1 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)在系統(tǒng)設(shè)計(jì)的開(kāi)始,我首先考慮的是如何用數(shù)據(jù)模型來(lái)數(shù)據(jù)庫(kù)的結(jié)構(gòu)與語(yǔ)義,以對(duì)現(xiàn)實(shí)世界進(jìn)行抽象。目前廣泛使用的數(shù)據(jù)模型可分為兩種類(lèi)型,一種是獨(dú)立于計(jì)算機(jī)系統(tǒng)的“概念數(shù)據(jù)模型”,如“實(shí)體聯(lián)系模型”;另一種是直接面向數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)的“結(jié)構(gòu)數(shù)據(jù)模型”。在本系統(tǒng)中我采用“實(shí)體聯(lián)系模型”(ER模型)來(lái)描述數(shù)據(jù)庫(kù)的結(jié)構(gòu)與語(yǔ)義,以對(duì)現(xiàn)實(shí)世界進(jìn)行第一次抽象。ER模型直接從現(xiàn)實(shí)世界抽象出實(shí)體類(lèi)型及實(shí)體間聯(lián)系然后用ER圖來(lái)表示數(shù)據(jù)模型。它有兩個(gè)明顯的優(yōu)點(diǎn):接近于人的思維,容易理解;與計(jì)算機(jī)無(wú)關(guān),用戶(hù)容易接受。但它只是數(shù)據(jù)庫(kù)

23、設(shè)計(jì)的第一步。E-R圖是直觀表示概念模型的工具,它有三個(gè)基本成分:(1)矩形框,表示實(shí)體類(lèi)型(考慮問(wèn)題的對(duì)象)。(2)菱形框,表示聯(lián)系類(lèi)型(實(shí)體間的聯(lián)系)。(3)橢圓形框,表示實(shí)體的屬性。實(shí)體和屬性的定義如下:管理員表(登陸ID,登錄姓名,登錄密碼)站名表(站名編號(hào),站名)車(chē)輛線路編號(hào)表(車(chē)次,車(chē)線類(lèi)型) 線路表(線路編號(hào),車(chē)次,站名,次序) 車(chē)輛表(車(chē)輛編號(hào),車(chē)次,車(chē)輛類(lèi)型,服務(wù)類(lèi)型,票價(jià),IC卡類(lèi)型,運(yùn)行區(qū)間) 冬季發(fā)車(chē)時(shí)間表(車(chē)次,編號(hào),首班時(shí)間,末班時(shí)間) 夏季發(fā)車(chē)時(shí)間表(車(chē)次,編號(hào),首班時(shí)間,末班時(shí)間)4.3.2數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)創(chuàng)建的SQL數(shù)據(jù)庫(kù)名稱(chēng)為城市公交查詢(xún)系統(tǒng)。并將數(shù)

24、據(jù)文件和日志文件保存在公交查詢(xún)系統(tǒng)APP_DATA文件夾中。管理員表(LoginTable) 管理員表存放登陸系統(tǒng)所需要的用戶(hù)名和密碼,登錄后臺(tái)時(shí)需要訪問(wèn)此表。站名表 站名表存放站名等數(shù)據(jù),修改站名需要訪問(wèn)此表。車(chē)輛線路編號(hào)表 車(chē)輛線路編號(hào)表存放線路編號(hào)等數(shù)據(jù),修改車(chē)輛線路編號(hào)將要訪問(wèn)此表。線路表 線路表存放公交車(chē)線路的數(shù)據(jù),修改車(chē)輛線路需要訪問(wèn)此表。 5詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)5.1.連接數(shù)據(jù)庫(kù)的包含文件 在動(dòng)態(tài)網(wǎng)站中,調(diào)用數(shù)據(jù)庫(kù)中的數(shù)據(jù)是十分頻繁的,為了避免編寫(xiě)重復(fù)的代碼。編寫(xiě)一個(gè)數(shù)據(jù)庫(kù)連接文件是非常重要的。DB.cs文件中包含了本系統(tǒng)中的數(shù)據(jù)庫(kù)的連接代碼。本系統(tǒng)的數(shù)庫(kù)的連接代碼如下:public

25、static SqlConnection createConnection() SqlConnection con=new SqlConnection("server=.;database=城市公交查詢(xún)系統(tǒng);uid=sa;pwd=;"); return con; 5.1.1新增車(chē)次線路此模塊為管理員操作,如當(dāng)?shù)爻霈F(xiàn)新的公交線路,或原有公交車(chē)線路有新的站點(diǎn)加入,管理員可以登錄此表,及時(shí)添加線路和站點(diǎn)的信息,以保證車(chē)次線路的及時(shí)更新,方便用戶(hù)查詢(xún)。添加車(chē)次的界面如圖所示。在輸入相關(guān)車(chē)次信息后便進(jìn)入站名添加過(guò)程如圖5.1.2新增車(chē)次線路 此模塊為管理員操作,如當(dāng)?shù)爻霈F(xiàn)新的公交線路

26、,或原有公交車(chē)線路有所變動(dòng)是,管理員可以登錄此模塊,及時(shí)添加相關(guān)的線路圖,以保證車(chē)次線路圖的及時(shí)更新,方便用戶(hù)查詢(xún)。添加的界面如圖5.1.3刪除車(chē)次以及無(wú)效站點(diǎn) 此模塊同樣為管理員操作,如當(dāng)?shù)啬膫€(gè)公交線路已經(jīng)被廢除,或原有公交車(chē)線路有哪個(gè)站點(diǎn)被刪除,管理員可以登錄此表,及時(shí)刪除線路和站點(diǎn)的信息,以保證車(chē)次線路的及時(shí)更新,方便用戶(hù)查詢(xún)。刪除的界面如圖5.1.4刪除線路圖該模塊在管理員系統(tǒng)中實(shí)現(xiàn),如當(dāng)?shù)啬膫€(gè)公交線路已經(jīng)改變,管理員可以登錄此模塊,及時(shí)刪除線路圖信息,以保證車(chē)次線路圖的及時(shí)更新,方便用戶(hù)查詢(xún)。刪除的界面如圖 6測(cè)試與維護(hù)6.1 創(chuàng)建和測(cè)試應(yīng)用程序 為了確保本系統(tǒng)能夠正常運(yùn)行,需要在發(fā)

27、布之后做一次較全面的測(cè)試?,F(xiàn)將具體操作及過(guò)程舉例說(shuō)明如下:創(chuàng)建和測(cè)試應(yīng)用程序應(yīng)是交替進(jìn)行的,既要注意開(kāi)發(fā)的效率也要注意它的穩(wěn)定性。每編寫(xiě)一個(gè)模塊,就要對(duì)這個(gè)模塊進(jìn)行測(cè)試,看它能否根據(jù)特定的要求工作。及早發(fā)現(xiàn)問(wèn)題,及早解決,否則到最后再來(lái)測(cè)試的話,難度會(huì)大大增加。6.2測(cè)試項(xiàng)目 在MIS開(kāi)發(fā)過(guò)程中采用了多種措施保證軟件質(zhì)量,但是實(shí)際開(kāi)發(fā)過(guò)程中還是不可避免地會(huì)產(chǎn)生差錯(cuò),系統(tǒng)中通??赡茈[藏著錯(cuò)誤和缺陷,不經(jīng)周密測(cè)試的系統(tǒng)投入運(yùn)行,將會(huì)造成難以想象的后果,因此系統(tǒng)測(cè)試是MIS開(kāi)發(fā)過(guò)程中為保證軟件質(zhì)量必須進(jìn)行的工作。大量統(tǒng)計(jì)資料表明,系統(tǒng)測(cè)試的工作量往往占MIS開(kāi)發(fā)總工作量的40%以上。因此,我們必須重

28、視測(cè)試工作。由于程序中隱藏的缺陷只在特定的環(huán)境下才有可靠顯露,系統(tǒng)缺陷通常是由于對(duì)某些特定情況考慮不周造成的。因此測(cè)試不是為了表明程序正確;成功的測(cè)試也不是沒(méi)有發(fā)現(xiàn)錯(cuò)誤的測(cè)試。有意義的軟件測(cè)試應(yīng)該是從“破壞”軟件系統(tǒng)的角度出發(fā),精心設(shè)計(jì)最有可以暴露程序系統(tǒng)缺陷的測(cè)試方案。因此軟件測(cè)試的目標(biāo)應(yīng)該是以盡可能少的代價(jià)和時(shí)間找出軟件系統(tǒng)中潛在的錯(cuò)誤和缺陷。總結(jié)在公交數(shù)字化的時(shí)代,公交系統(tǒng)的設(shè)計(jì)者應(yīng)當(dāng)以乘客需求為首位,調(diào)整服務(wù)策略,滿(mǎn)足社會(huì)的需要和乘客的需要,充分發(fā)揮公交系統(tǒng)交通中心的作用。本系統(tǒng)基本達(dá)到了預(yù)定的設(shè)計(jì)目標(biāo),但是在系統(tǒng)的實(shí)際化應(yīng)用中仍需要改進(jìn)和提高公交查詢(xún)系統(tǒng)的服務(wù)職能。系統(tǒng)的不足與改進(jìn)方案: 在數(shù)據(jù)庫(kù)設(shè)計(jì)方面,還有待改進(jìn),數(shù)據(jù)庫(kù)設(shè)計(jì)也可采用別的形式,比如:可以用一個(gè)字段作為站點(diǎn)字段,另一個(gè)字段作為經(jīng)過(guò)該站點(diǎn)的車(chē)次字段,只要找到經(jīng)過(guò)某個(gè)站點(diǎn)最多的車(chē)次,就可以設(shè)計(jì)該字段的類(lèi)型以及長(zhǎng)度。其次,系統(tǒng)的實(shí)際應(yīng)用化欠缺,可以通過(guò)使用根

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論