基于ASPNET+SQL校友錄網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)_第1頁
基于ASPNET+SQL校友錄網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)_第2頁
基于ASPNET+SQL校友錄網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)_第3頁
基于ASPNET+SQL校友錄網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)_第4頁
基于ASPNET+SQL校友錄網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

PAGE5-基于ASP.NET+SQL校友錄網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)引言隨著計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,網(wǎng)絡(luò)在現(xiàn)代社會(huì)生活中發(fā)揮著越來越重要的作用。面對(duì)社會(huì)信息化進(jìn)程的加快,為加快畢業(yè)校友之間的聯(lián)系和學(xué)校與畢業(yè)同學(xué)之間的聯(lián)系,我們設(shè)計(jì)并實(shí)現(xiàn)了校友錄網(wǎng)站,校友錄網(wǎng)站利用互聯(lián)網(wǎng)實(shí)現(xiàn)了這些目的。基于ASP.NET的網(wǎng)站設(shè)計(jì)方法是當(dāng)今流行的動(dòng)態(tài)網(wǎng)站設(shè)計(jì)方法,依靠Microsoft公司強(qiáng)大的技術(shù)和資金實(shí)力,基于.NETFramwork的軟件設(shè)計(jì)思想顯示出巨大的潛力和應(yīng)用前途,現(xiàn)在已被許多大型軟件公司使用。本文正是基于ASP.NET進(jìn)行動(dòng)態(tài)網(wǎng)站的設(shè)計(jì)?;贏SP.NET+SQL校友錄網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)第一章軟件所需資源開發(fā)軟件產(chǎn)品,必須具有硬件開發(fā)環(huán)境,設(shè)備以及一些硬件輔助設(shè)備。除此之外,軟件運(yùn)行環(huán)境也是必不可少的。軟硬件資源共同構(gòu)成了開發(fā)軟件所必須具備的兩種資源。1.1硬件開發(fā)環(huán)境(1)服務(wù)器端服務(wù)器端的最低配置是有建立站點(diǎn)所需的軟件來決定的。在最低配置的情況下,服務(wù)器的性能往往不盡如人意。如:PⅢ450雙CPU+1G內(nèi)存+10G以上的SCSI硬盤,這是一臺(tái)使用WINDOWSNT的WEB服務(wù)器的標(biāo)準(zhǔn)配置。當(dāng)然,我們無需這樣的配置,我們需要的只是一臺(tái)能夠流暢運(yùn)行WINDOWSXP的配置,現(xiàn)在計(jì)算機(jī)的性能已經(jīng)相當(dāng)出色。而且價(jià)格也很便宜,因此我們通常在服務(wù)器端配置高性能的硬件。本網(wǎng)絡(luò)硬盤系統(tǒng)服務(wù)器端的配置如下:處理器:AMD2.6GHz內(nèi)存:2GBit硬盤空間:320Gbit(2)用戶端用戶端主要用于瀏覽和操作數(shù)據(jù)庫,所以硬件要求不高,但是基于目前計(jì)算機(jī),配置也相當(dāng)高。需要的配置如下:處理器:賽揚(yáng)1.7G內(nèi)存:64MBit硬盤空間:40G1.2其他硬件輔助設(shè)備在前面一小節(jié)里,主要介紹了開發(fā)網(wǎng)絡(luò)硬盤文件系統(tǒng)最主要的硬件需求。除此之外,還需要一些設(shè)備,如:顯示器,鼠標(biāo),鍵盤,CPU等。如果沒有這些設(shè)備,也完成不了該系統(tǒng)的開發(fā)。而且,隨著當(dāng)今計(jì)算機(jī)技術(shù)的高速發(fā)展。這些設(shè)備的功能也日益強(qiáng)大。特別是CPU的運(yùn)行速度極其快速。1.3軟件運(yùn)行環(huán)境首先選擇操作系統(tǒng)。本系統(tǒng)選擇WindowsXPwithSP3。然后就是搭建個(gè)人WEB服務(wù)器(PersonnelWebSerice),這就要根據(jù)操作系統(tǒng)來了。本系第二章軟件過程2.1需求分析對(duì)于系統(tǒng)的開發(fā)而言,系統(tǒng)的需求分析工作非常重要,它規(guī)定了系統(tǒng)設(shè)計(jì)統(tǒng)一的最基本的要求,需求分析的結(jié)果是系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)測試驗(yàn)收和維護(hù)的依據(jù)。需求分析是在可行性分析研究的基礎(chǔ)上,確定新項(xiàng)目必須完成的工作,既對(duì)項(xiàng)目最終目標(biāo)提出完整準(zhǔn)確清晰和具體的要求。其具體任務(wù)是:確定用戶對(duì)新系統(tǒng)的綜合要求,分析系統(tǒng)的數(shù)據(jù)要求,導(dǎo)出新系統(tǒng)數(shù)據(jù)字典及系統(tǒng)流程,確定和評(píng)價(jià)系統(tǒng)方案,確定系統(tǒng)開發(fā)計(jì)劃。2.1.1需求分析的一般性原理軟件工程是用系統(tǒng)化、規(guī)范化、產(chǎn)業(yè)化等工程原則和方法實(shí)施軟件的開發(fā)和維護(hù)的方法?;谝粋€(gè)實(shí)際的工程項(xiàng)目,本課題按照軟件工程開發(fā)方案,從需求分析開始,對(duì)系統(tǒng)進(jìn)行分析設(shè)計(jì)。在需求分析階段,我們的焦點(diǎn)是“做什么”,而不是“怎么做”。不是具體地解決問題,而是準(zhǔn)確地確定“為了解決這個(gè)問題,目標(biāo)系統(tǒng)必須做什么”。主要是確定目標(biāo)系統(tǒng)必須具備哪些功能。在需求分析階段必須和用戶密切配合,充分交流信息,以得出經(jīng)過用戶確認(rèn)的系統(tǒng)邏輯模型,以保證在目前現(xiàn)有的人員條件和技術(shù)條件下,用戶需求是可實(shí)現(xiàn)的,系統(tǒng)邏輯模型是合理可行的。2.1.2需求分析的任務(wù)與過程需求分析的任務(wù)是借助于當(dāng)前系統(tǒng)的物理模型(待開發(fā)系統(tǒng)的系統(tǒng)元素)導(dǎo)出目標(biāo)系統(tǒng)的邏輯模型(只描述系統(tǒng)要完成的功能和要處理的數(shù)據(jù)),解決目標(biāo)系統(tǒng)“做什么”的問題,所要做的工作是深入描述軟件的功能和性能,確定軟件設(shè)計(jì)的限制和軟件同其他系統(tǒng)元素的接口細(xì)節(jié),定義軟件的其他有效性需求,通過逐步細(xì)化對(duì)軟件的要求描述軟件要處理的數(shù)據(jù),并給軟件開發(fā)提供一種可以轉(zhuǎn)化為數(shù)據(jù)設(shè)計(jì)、結(jié)構(gòu)設(shè)計(jì)和過程設(shè)計(jì)的數(shù)據(jù)與功能表示。必須全面理解用戶的各項(xiàng)要求,但不能全盤接受,只能接受合理的要求;對(duì)其中模糊的要求要進(jìn)一步澄清,然后決定是否采納;對(duì)于無法實(shí)現(xiàn)的要求要向用戶作充分的解釋。最后將軟件的需求準(zhǔn)確地表達(dá)出來,形成軟件需求說明書SRS。其實(shí)現(xiàn)步驟如下(如圖2.1):圖2.1需求分析流程圖獲得當(dāng)前系統(tǒng)的物理模型:首先分析、理解當(dāng)前系統(tǒng)是如何運(yùn)行的,了解當(dāng)前系統(tǒng)的組織機(jī)構(gòu)、輸入輸出、資源利用情況和日常數(shù)據(jù)處理過程,并用一個(gè)具體的模型來反映自己對(duì)當(dāng)前系統(tǒng)的理解。此步驟也可以稱為“業(yè)務(wù)建?!?,建立一個(gè)業(yè)務(wù)USECASE模型和業(yè)務(wù)對(duì)象模型。抽象出當(dāng)前系統(tǒng)的邏輯模型,即在理解當(dāng)前系統(tǒng)“怎樣做”的基礎(chǔ)上,取出非本質(zhì)因素,抽取出“做什么”的本質(zhì)。建立目標(biāo)系統(tǒng)的邏輯模型:明確目標(biāo)系統(tǒng)要“做什么”。對(duì)邏輯模型的補(bǔ)充,如用戶界面、啟動(dòng)和結(jié)束、出錯(cuò)處理、系統(tǒng)輸入輸出、系統(tǒng)性能、其他限制等等。在需求分析過程中,應(yīng)從數(shù)據(jù)流和數(shù)據(jù)結(jié)構(gòu)出發(fā),逐步細(xì)化所有的軟件功能,找出各元素之間的聯(lián)系、接口特性和設(shè)計(jì)上的限制,分析它們是否滿足功能要求并剔除不合理部分,綜合成系統(tǒng)解決方案,給出目標(biāo)系統(tǒng)的詳細(xì)邏輯模型。常用的分析方法有面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法SA(數(shù)據(jù)流圖DFD、數(shù)據(jù)詞典DD、加工邏輯說明)、描繪系統(tǒng)數(shù)據(jù)關(guān)系的實(shí)體關(guān)系圖ERD、面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法JSD、面向?qū)ο蠓治龇椒∣OA(主要用UML)、對(duì)于有動(dòng)態(tài)時(shí)序問題的軟件可以用形式化技術(shù),包括有窮狀態(tài)機(jī)FSM的狀態(tài)遷移(轉(zhuǎn)換)圖STD、時(shí)序圖、Petri網(wǎng)或Z。2.1.3需求分析的要求必須能夠表達(dá)和理解問題的數(shù)據(jù)域和功能域:系統(tǒng)的目的都是為了解決數(shù)據(jù)處理問題,就是將一種形式的數(shù)據(jù)轉(zhuǎn)換(輸入、處理、輸出)為另一種形式的數(shù)據(jù)。數(shù)據(jù)域應(yīng)包括數(shù)據(jù)流、數(shù)據(jù)內(nèi)容和數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)流式數(shù)據(jù)通過系統(tǒng)時(shí)的變化方式。對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)換就是程序的功能或子功能,兩個(gè)轉(zhuǎn)換之間的數(shù)據(jù)傳遞確定了功能間的接口。數(shù)據(jù)內(nèi)容就是數(shù)據(jù)項(xiàng),如人的數(shù)據(jù)項(xiàng)包括姓名、性別、出生日期等等。數(shù)據(jù)結(jié)構(gòu)即各種數(shù)據(jù)項(xiàng)的邏輯組織,如是表格結(jié)構(gòu)還是樹形結(jié)構(gòu)、數(shù)據(jù)項(xiàng)間的相互關(guān)系。必須按自頂向下、逐層分解的方式對(duì)問題進(jìn)行分解和不斷細(xì)化:軟件的功能域和信息與都能做進(jìn)一步的分解,可以是同一層次上的橫向分解,也可以是多層次上的縱向分解。給出系統(tǒng)的邏輯模型和物理模型:邏輯模型給出軟件要達(dá)到的功能和要處理的數(shù)據(jù)之間的關(guān)系;物理模型給出處理功能和數(shù)據(jù)結(jié)構(gòu)的實(shí)際表示形式。2.1.4校友錄網(wǎng)站的需求分析本課題主要研究的內(nèi)容為基于.NETFramework的網(wǎng)絡(luò)應(yīng)用程序?qū)崿F(xiàn),利用的開發(fā)工具是MicrosoftVisualStudio2005中的ASP.NET。具體的功能就是實(shí)現(xiàn)校友之間的信息交流,具有創(chuàng)建學(xué)校、班級(jí)的功能,還包括加入班級(jí)成員,查看班級(jí)成員信息和校友留言信息的要求班級(jí)管理員對(duì)功能的需求班級(jí)成員信息管理:可以瀏覽班級(jí)所有成員的信息,并審核要求成為班級(jí)成員的用戶信心。留言信息管理:可瀏覽、添加,并維護(hù)所有班級(jí)成員所有留言信息。班級(jí)用戶對(duì)功能的需求:申請加入班級(jí)管理:用戶找到所在班級(jí)后即可申請加入。個(gè)人信息管理:可注冊、修改個(gè)人信息。留言信息管理:可瀏覽、添加班級(jí)留言信息。班級(jí)成員信息的瀏覽:用戶可瀏覽班級(jí)所有用戶的信息。2.2概要設(shè)計(jì)2.2.1概要設(shè)計(jì)的一般原理經(jīng)過需求分析階段的工作,系統(tǒng)必須“做什么”已經(jīng)清楚了,現(xiàn)在是決定“怎樣做”的時(shí)候了。概要設(shè)計(jì)的基本目的就是回答“概括的說,系統(tǒng)應(yīng)該如何實(shí)現(xiàn)?“這個(gè)問題,因此,概要設(shè)計(jì)的工作將劃分出組成系統(tǒng)的物理元素——程序,文件,數(shù)據(jù)庫,人工過程和文檔等等,但是每個(gè)物理元素仍然處于黑盒子級(jí),這些黑盒子里的具體內(nèi)容將在以后仔細(xì)設(shè)計(jì)。2.2.2系統(tǒng)模塊劃分在了解了系統(tǒng)的功能需求后,現(xiàn)將校友錄系統(tǒng)劃分為7個(gè)功能模塊:用戶登錄:用于用戶登錄系統(tǒng),并劃分權(quán)限。用戶信息管理:查看注冊、修改用戶信息。學(xué)校信息管理:查找或添加班級(jí)。加入班級(jí)信息管理:申請加入一個(gè)班級(jí)。班級(jí)成員信息管理:審核班級(jí)成員的信息。通訊錄管理:班級(jí)成員可瀏覽班級(jí)成員信息。信息留言管理:普通班級(jí)成員可以瀏覽所有班級(jí)成員的留言信息并可添加留言信息。2.2.3網(wǎng)站系統(tǒng)層次結(jié)構(gòu)框圖整個(gè)系統(tǒng)的功能模塊劃分如下:(如圖2.2)校友錄系統(tǒng)校友錄系統(tǒng)用戶登錄學(xué)校信息管理加入班級(jí)管理班級(jí)信息管理班級(jí)成員管理通訊錄的管理用戶信息管理修改用戶信息瀏覽留言信息添加留言信息瀏覽班級(jí)成員信息申請成為班級(jí)成員查看注冊用戶信息查找或增加學(xué)校信息審核班級(jí)成員信息查找或增加班級(jí)信息信息留言管理圖2.2系統(tǒng)模塊流程圖2.4數(shù)據(jù)庫設(shè)計(jì)目前的網(wǎng)絡(luò)開發(fā),已經(jīng)不是以前靜態(tài)頁面打天下的時(shí)候了?,F(xiàn)在的網(wǎng)站,幾乎都要涉及到大量的信息,傳統(tǒng)的文件方式已經(jīng)不在適用。用數(shù)據(jù)庫來保存信息已經(jīng)成為各種網(wǎng)絡(luò)應(yīng)用中的首選。Web應(yīng)用程序設(shè)計(jì)少不了數(shù)據(jù)庫,因?yàn)橹挥袛?shù)據(jù)庫才能大量、快速地處理信息。使用ASP.NET可以讀取SQL和SQLServer數(shù)據(jù)庫,也可以讀取其他ODBC(開放式數(shù)據(jù)庫互聯(lián))兼容的數(shù)據(jù)庫。確定系統(tǒng)的流程圖后,就要開始著手底層數(shù)據(jù)庫的設(shè)計(jì),只有完成數(shù)據(jù)庫的架設(shè)后才能在以后的編程中對(duì)數(shù)據(jù)的操作有所依據(jù)。在進(jìn)行本系統(tǒng)數(shù)據(jù)庫的架設(shè)時(shí)我們選擇的是微軟的SQL數(shù)據(jù)庫。因?yàn)樗褂梅奖闱以诟鞣矫婺軡M足系統(tǒng)的要求,而且不需要架設(shè)數(shù)據(jù)庫服務(wù)器,使用十分方便。在進(jìn)行數(shù)據(jù)庫的架構(gòu)時(shí),一般要遵循以下的規(guī)則:1.盡量減少數(shù)據(jù)的冗余性和重復(fù)。合理的數(shù)據(jù)庫表的設(shè)計(jì)應(yīng)該是在滿足需求的前提下,使數(shù)據(jù)的重復(fù)量小,應(yīng)盡量按照關(guān)系數(shù)據(jù)庫系統(tǒng)理論方法設(shè)計(jì)一個(gè)數(shù)據(jù)庫,減少數(shù)據(jù)的冗余。2.結(jié)構(gòu)設(shè)計(jì)與操作設(shè)計(jì)相結(jié)合。在設(shè)計(jì)數(shù)據(jù)庫時(shí),有時(shí)為了編程實(shí)現(xiàn)的簡潔和思路的清晰,往往故意增加一些數(shù)據(jù)的冗余。這雖然有悖于傳統(tǒng)的關(guān)系數(shù)據(jù)庫理論,但是考慮到查詢與統(tǒng)計(jì)的方便,對(duì)編程的實(shí)現(xiàn)有很大的好處,往往采用這種方法。3.?dāng)?shù)據(jù)結(jié)構(gòu)具有相對(duì)的穩(wěn)定性。數(shù)據(jù)結(jié)構(gòu)的相對(duì)穩(wěn)定性,可以作為新,舊信息系統(tǒng)轉(zhuǎn)換的依據(jù)。根據(jù)系統(tǒng)功能設(shè)計(jì)的要求及功能模塊的劃分,對(duì)于系統(tǒng)信息數(shù)據(jù)庫,可列出以下數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):數(shù)據(jù)表名稱:省份信息表(Province)。表2.1Province表字段名稱數(shù)據(jù)類型大小字段描述Province_idInt4省份ID,主鍵Province_NameVarchar50省份名稱(2)名稱:城市信息表(City)表2.2City表字段名稱數(shù)據(jù)類型大小字段描述City_idInt4城市ID,主鍵City_NameVarchar50城市名稱Provice_idInt4省份ID,主鍵(3)名稱:學(xué)校類型信息表(SCype)表2.3SCType表字段名稱數(shù)據(jù)類型大小字段描述Type_idInt4類型ID,主鍵Type_NameVarchar20類型名稱(4)名稱:用戶信息表(SCUser)表2.4SCUser表字段名稱數(shù)據(jù)類型大小字段描述IdInt4ID,主鍵LoginVarchar30注冊帳戶PsswordVarchar30登錄密碼NameVarchar30姓名BthDatatime8生日AddressVarchar50住址SexChar2性別WtellVarchar30移動(dòng)電話HtellVarchar30家庭電話JbInt4級(jí)別Class_idint4班級(jí)ID表2.4SCUser表(續(xù))字段名稱數(shù)據(jù)類型大小字段描述JbInt4級(jí)別YbVarchar20郵編RegdateDatatime8注冊時(shí)間LasttimeDatatime8最后登錄時(shí)間CountInt4登陸次數(shù)(5)名稱:學(xué)校信息表(School)表2.5School表字段名稱數(shù)據(jù)類型大小字段描述School_IDInt4學(xué)校編號(hào),主鍵School_nameVarchar50學(xué)校名稱Province_idInt4省份IDCity_idInt4城市IDSch_ereaVarchar20城市Type_idInt4類型Sch_numInt4學(xué)校數(shù)量YBVarchar20郵編Sch_httpVarchar50網(wǎng)址Sch_whoInt4創(chuàng)建人Del_flagchar1刪除標(biāo)志(6)名稱:班級(jí)信息表(Class)表2.5Class表字段名稱數(shù)據(jù)類型大小字段描述Class_IDInt4班級(jí)編號(hào),主鍵Class_nameVarchar30班級(jí)名稱Province_idInt4省份IDCity_idInt4城市IDSch_idInt4學(xué)校IDAdmin1Int4正管理員Admin2Int4副管理員Type_idInt4類型Class_numInt4班級(jí)數(shù)Gradchar10年份Del_flagchar1刪除標(biāo)志(7)名稱:留言信息表(Info)表2.5Info表字段名稱數(shù)據(jù)類型大小字段描述Info_IDInt4留言編號(hào),主鍵Info_titleVarchar40留言標(biāo)題Info_cutNtext16留言內(nèi)容Class_idInt4班級(jí)IDIDInt4留言用戶EditerInt4編輯留言用戶Del_flagInt1刪除標(biāo)志Info_topChar1帖子置頂標(biāo)志2.5數(shù)據(jù)表關(guān)系圖在校友錄系統(tǒng)中各數(shù)據(jù)表的關(guān)系圖,如圖2.3所示。在次數(shù)據(jù)庫系統(tǒng)中,用戶表、省份表、城市表、類型表為基礎(chǔ)表,學(xué)校信息表、班級(jí)信息表都會(huì)應(yīng)用到基礎(chǔ)表中的信息,信息留言表中應(yīng)用了班級(jí)表和用戶表的信息。圖2.3數(shù)據(jù)表關(guān)系圖2.3詳細(xì)設(shè)計(jì)2.3.1詳細(xì)設(shè)計(jì)的一般原理詳細(xì)設(shè)計(jì)階段的根本目標(biāo)是確定應(yīng)該具體地實(shí)現(xiàn)所要求地系統(tǒng),也就是說,經(jīng)過這個(gè)階段地設(shè)計(jì)工作,應(yīng)該得出對(duì)目標(biāo)系統(tǒng)地精確描述,從而在編碼階段可以把這個(gè)描述直接翻譯成用某種程序設(shè)計(jì)語言書寫的程序。詳細(xì)設(shè)計(jì)階段的任務(wù)還不是具體地編寫程序,而是要設(shè)計(jì)出程序的“藍(lán)圖”,以后程序員將根據(jù)這個(gè)藍(lán)圖寫出實(shí)際的程序代碼。因此,詳細(xì)設(shè)計(jì)的結(jié)果基本上決定了最終的程序代碼的質(zhì)量。詳細(xì)設(shè)計(jì)的目標(biāo)不僅僅是邏輯上正確地實(shí)現(xiàn)每個(gè)模塊的功能,更重要的是設(shè)計(jì)出的處理過程應(yīng)該盡可能簡明易懂。2.3.2分模塊介紹各模塊的關(guān)鍵技術(shù)、程序?qū)崿F(xiàn)方法本系統(tǒng)的程序主要是采用模塊化思想來編寫的。例如系統(tǒng)中的conn.aspx文件,在程序的開頭是各個(gè)功能模塊。(1)系統(tǒng)配置模塊(config.asp)此模塊功能主要是定義整個(gè)系統(tǒng)的變量,系統(tǒng)所要用到的變量,其本上在這里定義。語句如下:<configuration><appSettings><addSettings><addkey=”ConnectionString”Value=”server=localhost;database=school;uid=sa;pwd=”/></appSettings>┇┇</configuration>判斷用戶信息文件(user_config.aspx),判斷管理員信息文件(admin_config.aspx)。(2)連接數(shù)據(jù)庫模塊(conn.aspx),此模塊主要功能是建立與數(shù)據(jù)庫的連接(3)加密函數(shù)模塊(md5.aspx),此模塊的主要功能是對(duì)用戶的密碼進(jìn)行加密。(4)本頁面應(yīng)用模塊(Boards.aspx),此模塊建立一個(gè)整體的框架。此模塊是本頁面的主體部分,隨著頁面的不同,調(diào)用模塊也不相同。(5)注冊頁面模塊(reg.aspx),此模塊是新用戶進(jìn)入系統(tǒng)的主要功能模塊。(6)登陸頁面模塊(default.aspx),通過該功能模塊,用戶可以輸入注冊用戶名和密碼進(jìn)入系統(tǒng)。以上便是一個(gè)用戶程序大概的結(jié)構(gòu)。此外還有其他的功能模塊。管理員管理其實(shí)是管理員注冊,可添加新的管理員。在管理員管理此頁面上,注冊新的管理員就好像添加了一條新的記錄。添加新的管理員只包括兩部分:管理員名稱和密碼。在此頁面上,除了上面講的添加管理員這項(xiàng)功能外,在每條記錄的操作欄里還有修改(edit)和刪除(del)兩項(xiàng)功能。點(diǎn)擊edit便能進(jìn)入編輯管理員頁面,在這個(gè)頁面上可以修改管理員的名稱和密碼;而點(diǎn)擊del則進(jìn)入刪除管理員頁面,按“確定刪除”按鈕便可刪除本條記錄。修改資料的功能跟管理員管理頁面上Edit的功能差不多,但不同的是管理員管理頁面上edit可同時(shí)修改管理員的名稱和密碼,而修改資料的功能只是修改密碼,不能修改管理員的名稱。使用退出管理功能,頁面便回到了管理登陸界面,若要再進(jìn)入,就要重新登陸。2.5程序測試程序和系統(tǒng)的測試及調(diào)試的目的是發(fā)現(xiàn)程序和系統(tǒng)中可能存在的錯(cuò)誤并及時(shí)糾正。2.5.1程序代碼測試本系統(tǒng)在上一部分具體實(shí)現(xiàn)中的同時(shí)還進(jìn)行了仔細(xì)的測試,在系統(tǒng)各個(gè)模塊的編寫中就開始測試,這樣有助于盡早地發(fā)現(xiàn)系統(tǒng)中的錯(cuò)誤,以減少在后面集成測試中出現(xiàn)問題的機(jī)率,也減少在集成測試中的發(fā)現(xiàn)問題后修改源程序的難度。此時(shí)的測試主要是用到一些測試數(shù)據(jù),測試數(shù)據(jù)除采用正常數(shù)據(jù)外,還包括了一些異常數(shù)據(jù)和臨界數(shù)據(jù),用他們來考驗(yàn)程序邏輯上的正確性。測試數(shù)據(jù)是經(jīng)過精心挑選的,使程序和模塊中的每一條語句都能得到執(zhí)行,即能夠測試程序中的任一邏輯通路。在本系統(tǒng)的測試中用了以下幾種數(shù)據(jù):1.用正常數(shù)據(jù)調(diào)試。在本系統(tǒng)中凡是有數(shù)據(jù)提交的地方都輸入以確定無誤的正常數(shù)據(jù)進(jìn)行調(diào)試,例如:用戶登錄窗口中輸入數(shù)據(jù)庫中存在的用戶信息等。2.異常數(shù)據(jù)調(diào)試。在執(zhí)行本系統(tǒng)中的處理程序時(shí)要考慮一些臨界數(shù)據(jù)。例如:空字符串。這些數(shù)據(jù)是最易被忽略的,也是最易使程序出錯(cuò)的,所以此處的調(diào)試花費(fèi)了很長一段時(shí)間,經(jīng)反復(fù)的調(diào)試和修改后,系統(tǒng)建立了比較完善的異常處理機(jī)制。3.用錯(cuò)誤數(shù)據(jù)調(diào)試。用錯(cuò)誤的數(shù)據(jù)進(jìn)行調(diào)試主要是測試系統(tǒng)對(duì)錯(cuò)誤的處理能力,包括顯示出錯(cuò)信息及容許修改錯(cuò)誤的可能性。在實(shí)現(xiàn)本系統(tǒng)的過程中也對(duì)此進(jìn)行了大量的測試。2.5.2程序功能測試經(jīng)過代碼測試正確的程序只是基本上驗(yàn)證了程序邏輯上的正確性,但并不能驗(yàn)證程序是否滿足程序設(shè)計(jì)中定義的功能,也不能驗(yàn)證測試數(shù)據(jù)本身是否完備。所以經(jīng)過程序代碼的測試后,還要進(jìn)行程序功能上的測試。程序功能測試是面向程序應(yīng)用環(huán)境,把看做一個(gè)”黑匣子”,認(rèn)為程序只是滿足應(yīng)用功能上的需要,就是行的。因此我們也對(duì)本系統(tǒng)進(jìn)行了以下兩方面的功能測試:1.模塊功能測試本系統(tǒng)是由多個(gè)功能模塊組成,每一模塊由一個(gè)或幾個(gè)程序構(gòu)成。這項(xiàng)測試主要還是自己完成的,我把各模塊中的所有程序按次序串聯(lián)起來進(jìn)行調(diào)試,經(jīng)調(diào)試修改后每一模塊內(nèi)各程序間終于建立了正確的控制關(guān)系,并實(shí)現(xiàn)了各模塊間正確的通訊。2.確認(rèn)測試這一階段的測試主要是檢查系統(tǒng)的功能,性能及其他特征是否與用戶的需一致,在此測試的工作主要由同學(xué)幫助完成,以確定該系統(tǒng)的功能是否能滿足一般選民的需要,系統(tǒng)的性能是否穩(wěn)定等。經(jīng)過同學(xué)們反復(fù)的測試,返回很多的不同信息,根據(jù)這些信息,我再次對(duì)該系統(tǒng)進(jìn)行了一些小的修改,以保證該系統(tǒng)投入使用后能安全、可靠、正常的工作,比如在這一階段的修改有:在程序運(yùn)行過程中,當(dāng)進(jìn)入系統(tǒng)主界面時(shí),當(dāng)點(diǎn)擊后退時(shí),程序返回不到系統(tǒng)登陸界面,在這個(gè)過程中,作者發(fā)現(xiàn)是由于受session中變量的影響。所以,作者就在程序中session對(duì)象中的一變量進(jìn)行了重新修改,問題得到了解決。開始之初,當(dāng)用戶進(jìn)入本系統(tǒng)的各個(gè)頁面時(shí),要想返回到主頁或是該頁的上一頁時(shí),都是通過瀏覽器的”返回”按鈕來實(shí)現(xiàn)的,特別是瀏覽很多頁面后要回到主頁必須多次按下瀏覽器的”返回”按鈕,這樣對(duì)選民來講是極其不方便的,后來根據(jù)系統(tǒng)運(yùn)行流程在不同的頁面都加上了”返回”鏈接,這樣就能快速跳轉(zhuǎn)到相應(yīng)的頁面了。2.6程序維護(hù)雖然這個(gè)系統(tǒng)經(jīng)過了最終確定性測試,但是系統(tǒng)測試不可能找出其中所有錯(cuò)誤,因此系統(tǒng)中還可能隱藏某些未被發(fā)現(xiàn)的錯(cuò)誤,而這些錯(cuò)誤在系統(tǒng)運(yùn)行后又會(huì)暴露出來。又由于本系統(tǒng)的開發(fā)是為了實(shí)現(xiàn)網(wǎng)上存儲(chǔ)功能,為了保證系統(tǒng)的安全性,其本身的安全機(jī)制就顯得極為重要,然而系統(tǒng)安全機(jī)制正是較為薄弱一環(huán),同時(shí)雖是網(wǎng)上存儲(chǔ)系統(tǒng),主要是共用戶進(jìn)行網(wǎng)上使用,在使用過程中,比如:當(dāng)用戶在上傳文件的時(shí)候,如果遇到突發(fā)事件,比如:斷電,死機(jī)等現(xiàn)象,以前上傳的信息就會(huì)丟失。再者就是,該系統(tǒng)包含的conn.asp該文件還需要改善,因?yàn)樵诘顷戇^程中,在本地運(yùn)行頁面打開的速度因該是相當(dāng)快的。但是該系統(tǒng)反映速度比較慢,所以系統(tǒng)作的不夠完善的。在今后時(shí)間里,我會(huì)進(jìn)一步完善以上的不足之處,并逐步優(yōu)化該系統(tǒng),以提供更適用的功能。

第三章軟件使用說明3.1網(wǎng)站主界面網(wǎng)站主界面,如圖3.1所示。圖3.1網(wǎng)站主界面3.2學(xué)校注冊模塊界面3.3網(wǎng)站發(fā)帖界面第四章系統(tǒng)總結(jié)4.1系統(tǒng)特點(diǎn)本次畢業(yè)設(shè)計(jì)詳細(xì)的介紹了網(wǎng)站系統(tǒng)開發(fā)過程,應(yīng)用了系統(tǒng)設(shè)計(jì)比較常用的技術(shù),所應(yīng)用的技術(shù)都是ASP.NET中較基礎(chǔ)的知識(shí),如:數(shù)據(jù)庫的連接,數(shù)據(jù)集的創(chuàng)建。如:Setconn=Server.CreateObject(“ADODB.Connection”)Conn.open”driver={MicrosoftSQLDriver(*.mdf)};dbq=”&Server.MapPath(“qiye.mdf”)Setrs=server.createobject(“adodb.recordset”)該系統(tǒng)側(cè)重于個(gè)人文件的存儲(chǔ)、上傳和共享。該系統(tǒng)上傳文件方便,進(jìn)入空間直接,界面簡單明了,操作方便。(1)系統(tǒng)的設(shè)計(jì)要求體現(xiàn)了可行性,通過網(wǎng)絡(luò)硬盤文件系統(tǒng)可以真實(shí)的讓用戶體會(huì)到該系統(tǒng)的優(yōu)點(diǎn)。又要兼顧Internet的特點(diǎn),為用戶設(shè)計(jì)出快捷、方便的硬盤功能。(2)用戶網(wǎng)上硬盤系統(tǒng)測驗(yàn)均需要身份驗(yàn)證,在設(shè)計(jì)中通過身份驗(yàn)證可以判斷該用戶有沒有修改硬盤文件的權(quán)利。(3)系統(tǒng)具有良好的可擴(kuò)充性,能根據(jù)用戶不同的要求,進(jìn)行相應(yīng)的擴(kuò)展,以進(jìn)一步完善系統(tǒng)的功能。它目前主要面向?qū)W生、計(jì)算機(jī)從業(yè)人員、商業(yè)旅行者及其它移動(dòng)辦公用戶。隨著網(wǎng)絡(luò)的高速發(fā)展,該系統(tǒng)有廣闊的應(yīng)用前景。可用在效果圖公司、圖文打印公司、廣告公司等需要文件交流的公司;小團(tuán)體情感交流,用戶可以通過本服務(wù)和自己的老同學(xué)、同事等好友交流照片、好的軟件以及情感留言。在程序設(shè)計(jì)后期,在系統(tǒng)中還可以增加“站內(nèi)論壇”模塊,進(jìn)一步擴(kuò)充系統(tǒng)的功能。

21世紀(jì)互聯(lián)網(wǎng)呈現(xiàn)出的是一種全面復(fù)蘇、蓬勃發(fā)展、多元開拓、廣泛應(yīng)用的發(fā)展態(tài)勢。與傳統(tǒng)的存儲(chǔ)工具相比,網(wǎng)絡(luò)硬盤文件系統(tǒng)具有以下優(yōu)點(diǎn):日常生活和辦公環(huán)境中,我們經(jīng)常需要通過網(wǎng)絡(luò)存放文件或者共享數(shù)據(jù),F(xiàn)TP,Email郵件、MSN/QQ等都能實(shí)現(xiàn)文件的傳送,但是各有優(yōu)缺點(diǎn)。其中,“FTP”功能最為強(qiáng)大,但使用起來卻相當(dāng)復(fù)雜;“Email”的傳送比較方便,但是附帶文件數(shù)最多幾兆,使用也不直觀;MSN/QQ等是實(shí)時(shí)傳送文件的方法,需要雙方同時(shí)在線。網(wǎng)絡(luò)硬盤綜合了各種優(yōu)點(diǎn),是一種功能強(qiáng)大、操作便捷、大容量、異步的存儲(chǔ)工具。只要您能上網(wǎng),您就可以用您在我們這里注冊的有效帳戶進(jìn)行登錄,對(duì)自己的文件夾和文件進(jìn)行管理,還可以跟用戶及所有網(wǎng)民之間共享相冊跟視頻文件。因此,開發(fā)網(wǎng)絡(luò)硬盤系統(tǒng)有廣闊的市場發(fā)展前景。4.2ASP.NET+SQL的安全隱患4.2.1安全隱患ASP.NET+SQL解決方案的主要安全隱患來自SQL數(shù)據(jù)庫的安全性,其次在于ASP.NET網(wǎng)頁設(shè)計(jì)過程中的安全漏洞。1)SQL數(shù)據(jù)庫的存儲(chǔ)隱患在ASP.NET+SQL應(yīng)用系統(tǒng)中,如果獲得或者猜到SQL數(shù)據(jù)庫的存儲(chǔ)路徑和數(shù)據(jù)庫名,則該數(shù)據(jù)庫就可以被下載到本地。例如:對(duì)于網(wǎng)上書店的SQL數(shù)據(jù)庫,人們一般命名為book.mdf、store.mdf等,而存儲(chǔ)的路徑一般為“URL/database”或干脆放在根目錄(“URL/”)下。這樣,只要在瀏覽器地址欄中敲入地址:“URL/database/store.mdf”,就可以輕易地把store.mdf下載到本地的機(jī)器中。要解決這個(gè)問題,可以將文件的后綴名.mdf改為.asp,這樣就不能被下載了。2)SQL數(shù)據(jù)庫的解密隱患由于SQL數(shù)據(jù)庫的加密機(jī)制非常簡單,所以即使數(shù)據(jù)庫設(shè)置了密碼,解密也很容易。該數(shù)據(jù)庫系統(tǒng)通過將用戶輸入的密碼與某一固定密鑰進(jìn)行異或來形成一個(gè)加密串,并將其存儲(chǔ)在*.mdf文件中從地址“&H42”開始的區(qū)域內(nèi)。由于異或操作的特點(diǎn)是“經(jīng)過兩次異或就恢復(fù)原值”,因此,用這一密鑰與*.mdf文件中的加密串進(jìn)行第二次異或操作,就可以輕松地得到SQL數(shù)據(jù)庫的密碼?;谶@種原理,可以很容易地編制出解密程序。由此可見,無論是否設(shè)置了數(shù)據(jù)庫密碼,只要數(shù)據(jù)庫被下載,其信息就沒有任何安全性可言了。3)源代碼的安全隱患由于ASPNET程序采用的是非編譯性語言,這大大降低了程序源代碼的安全性。任何人只要進(jìn)入站點(diǎn),就可以獲得源代碼,從而造成ASPNET應(yīng)用程序源代碼的泄露。在真正使用該系統(tǒng)時(shí),可以使用ASP.NET網(wǎng)站發(fā)布程序,將ASP.NET源代碼便以為DLL文件。4)程序設(shè)計(jì)中的安全隱患ASP.NET代碼利用表單(Form)實(shí)現(xiàn)與用戶交互的功能,而相應(yīng)的內(nèi)容會(huì)反映在瀏覽器的地址欄中,如果不采用適當(dāng)?shù)陌踩胧?,只要記下這些內(nèi)容,就可以繞過驗(yàn)證直接進(jìn)入某一頁面。例如在瀏覽器中敲入“……page.asp?x=1”,即可不經(jīng)過表單頁面直接進(jìn)入滿足“x=14.2.2提高數(shù)據(jù)庫的安全性由于SQL數(shù)據(jù)庫加密機(jī)制過于簡單,因此,如何有效地防止SQL數(shù)據(jù)庫被下載,就成了提高ASP.NET+SQL解決方案安全性的重中之重。1)非常規(guī)命名法防止數(shù)據(jù)庫被找到的簡便方法是為SQL數(shù)據(jù)庫文件起一個(gè)復(fù)雜的非常規(guī)名字,并把它存放在多層目錄下。例如,對(duì)于網(wǎng)上書店的數(shù)據(jù)庫文件,不要簡單地命名為“book.mdf”或“store.mdf”,而是要起個(gè)非常規(guī)的名字,例如:faq19jhsvzbal.mdf,再把它放在如./akkjj16t/kjhgb661/acd/avccx55之類的深層目錄下。這樣,對(duì)于一些通過猜的方式得到SQL數(shù)據(jù)庫文件名的非法訪問方法起到了有效的阻止作用。2)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論