基于.net mvc開(kāi)發(fā)學(xué)生網(wǎng)上管理系統(tǒng)_第1頁(yè)
基于.net mvc開(kāi)發(fā)學(xué)生網(wǎng)上管理系統(tǒng)_第2頁(yè)
基于.net mvc開(kāi)發(fā)學(xué)生網(wǎng)上管理系統(tǒng)_第3頁(yè)
基于.net mvc開(kāi)發(fā)學(xué)生網(wǎng)上管理系統(tǒng)_第4頁(yè)
基于.net mvc開(kāi)發(fā)學(xué)生網(wǎng)上管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩46頁(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)介

緒論系統(tǒng)的開(kāi)發(fā)背景隨著社會(huì)的發(fā)展,曾經(jīng)不同規(guī)模的競(jìng)爭(zhēng)現(xiàn)在已經(jīng)成為了社會(huì)不同領(lǐng)域之前技術(shù)的競(jìng)爭(zhēng),人才與管理間的競(jìng)爭(zhēng),而計(jì)算機(jī)技術(shù)的進(jìn)步與發(fā)展,也離不開(kāi)軟件的日益更新和進(jìn)步。在現(xiàn)階段,在電腦軟件的更新和替換的過(guò)程中,已經(jīng)涉及到各種領(lǐng)域都不斷向網(wǎng)絡(luò)化發(fā)展,如政府機(jī)關(guān),公司基層,各大高校等。而作為學(xué)生的我,哪怕不經(jīng)常曠課和請(qǐng)假,但是難免會(huì)遇到緊急的事情的馬上請(qǐng)假去辦,可是在學(xué)校請(qǐng)假的步驟卻很繁瑣。學(xué)生要先和老師要請(qǐng)假條并且寫好,然后給老師批準(zhǔn),并且還得考慮到老師是否在辦公室,所以有時(shí)候就會(huì)出現(xiàn)很多不必要的麻煩。因此為了學(xué)生和老師,也是為了自己的方便,我也根據(jù)了自己考慮實(shí)際情況和需求開(kāi)發(fā)了這個(gè)學(xué)生網(wǎng)上請(qǐng)假系統(tǒng)。問(wèn)題描述在考慮到做這個(gè)軟件之前,我也考慮到自己所學(xué)的知識(shí)是有限的,而且在這之前自己也從來(lái)沒(méi)有接觸過(guò)這種類似的軟件和程序,因此很多功能的具體實(shí)現(xiàn)也心里沒(méi)底,所以我也只能用些簡(jiǎn)單的功能來(lái)代替掉目前社會(huì)商用水平的功能,比如在做系統(tǒng)的設(shè)置界面時(shí),怎么做才可以讓大家更適應(yīng),快捷的了解并使用到這個(gè)軟件,如何優(yōu)化頁(yè)面的UI,如何提高這個(gè)系統(tǒng)未來(lái)的拓展性和開(kāi)發(fā)潛力等,這些都是很多所面臨的問(wèn)題。技術(shù)分析現(xiàn)階段社會(huì)比較主流的軟件模式框架模式是ModelViewController,簡(jiǎn)稱MVC。MVC每個(gè)字母都代表一個(gè)意思,分別是模型、視圖和控制器三個(gè)基本部分。簡(jiǎn)單點(diǎn)來(lái)說(shuō),就是降低程序代碼之間的耦合度。MVC的設(shè)計(jì)模式簡(jiǎn)單來(lái)說(shuō)就是分成五個(gè)模塊。分別是View層是程序處理顯示數(shù)據(jù)的部分;DO層是對(duì)數(shù)據(jù)對(duì)象的封裝;DB層是程序連接數(shù)據(jù)庫(kù)的層,也是算中間層;DAO層程序?qū)?shù)據(jù)庫(kù)操作層;Control層是程序處理用戶交互的層。

相關(guān)技術(shù)介紹HTML網(wǎng)頁(yè)技術(shù)HTML是現(xiàn)階段制作網(wǎng)頁(yè)的常用語(yǔ)言,它平常都是用于制作靜態(tài)頁(yè)面。它的命令是可以體現(xiàn)文字信息、鏈接信息、圖形信息和表格信息等等。現(xiàn)在它被大眾普遍接受廣泛應(yīng)用在網(wǎng)絡(luò)上。JSP腳本語(yǔ)言JSP可以放在在html里使用,也可以獨(dú)自使用,它同時(shí)也具備有很多種優(yōu)點(diǎn),可以講,Web腳本技術(shù)的先驅(qū)是JSP?,F(xiàn)代編程語(yǔ)言(像C,Java和Perl等)的一些最好的特點(diǎn)都融合在JSP里,Web服務(wù)器里的一部分配置標(biāo)準(zhǔn)是由JSP、Tomcat和數(shù)據(jù)庫(kù)等的拼裝在一起的。C#語(yǔ)言C#語(yǔ)言是微軟開(kāi)創(chuàng)的一種最新的、面向?qū)ο蟮木幊陶Z(yǔ)言。程序員可以利用這個(gè)語(yǔ)言快速地編寫各種基于Microsoft.NET平臺(tái)的應(yīng)用程序,該平臺(tái)還提供許多服務(wù)和工具,使得計(jì)算與通訊領(lǐng)域得到最大程度地開(kāi)發(fā)。雖然在這普遍使用java的年代,畢竟C#是微軟的,但是我還是相信C#在社會(huì)還是有自己不可動(dòng)搖的地位的。

需求分析可行性分析在技術(shù)性方面,MVC框架分層可以很好做到前后端分離,這樣對(duì)于程序員對(duì)項(xiàng)目的開(kāi)發(fā)是很有幫助的。由于MVC的分層,降低了系統(tǒng)各層之間的耦合度,使得程序員在開(kāi)發(fā)的同時(shí)可以專注負(fù)責(zé)自己的開(kāi)發(fā)模塊,也不會(huì)相互影響。這樣對(duì)項(xiàng)目的后期修改也是很大幫助的,一旦一個(gè)地方出了問(wèn)題或者需要修改,也不需要整體修改。實(shí)用性方面,本次設(shè)計(jì)的主要任務(wù)是在學(xué)生網(wǎng)上請(qǐng)假系統(tǒng)內(nèi)學(xué)生請(qǐng)假、老師批假、學(xué)生信息添加及綁定等,符合當(dāng)前潮流的發(fā)展。從用戶角度出發(fā),可以同時(shí)考慮用戶的便利和學(xué)校的工作效率出發(fā),提高網(wǎng)上請(qǐng)假的實(shí)用性。功能需求分析學(xué)生網(wǎng)上請(qǐng)假系統(tǒng)是用戶通過(guò)正確的填寫學(xué)號(hào)或者工號(hào)和密碼進(jìn)入系統(tǒng),這個(gè)系統(tǒng)分為兩大客戶端,一個(gè)是學(xué)生端和另一個(gè)是教師端,學(xué)生端分為請(qǐng)假申請(qǐng)、銷假申請(qǐng)、個(gè)人請(qǐng)假記錄查詢,教師端分為請(qǐng)假審批、銷假審批、學(xué)生銷假記錄查詢和學(xué)生請(qǐng)假記錄查詢。學(xué)生網(wǎng)上請(qǐng)假系統(tǒng)使用者分別為學(xué)生和教師,老師審批學(xué)生的請(qǐng)假,前提都是學(xué)生要在系統(tǒng)發(fā)出申請(qǐng)信息,而只有等到老師批準(zhǔn)之后學(xué)生才可以提出申請(qǐng)銷假。學(xué)生用例以下圖3.1是學(xué)生端用例圖,學(xué)生的功能模塊有登錄、申請(qǐng)請(qǐng)假、申請(qǐng)銷假、查詢請(qǐng)假記錄這個(gè)的操作。圖3.1學(xué)生用例圖學(xué)生用例規(guī)約登錄參與者學(xué)生需要用戶名和密碼登錄到系統(tǒng),才可以進(jìn)行對(duì)應(yīng)不同的操作,學(xué)生的登錄用戶名為學(xué)號(hào),初始化密碼為學(xué)號(hào),如表3.1所示。表3.1學(xué)生登錄模塊用例規(guī)約表用例編號(hào)UC-001用例名稱登錄功能描述驗(yàn)證用戶名和密碼,確認(rèn)是學(xué)生登錄。執(zhí)行者學(xué)生前置條件用戶名和密碼經(jīng)過(guò)驗(yàn)證準(zhǔn)確并通過(guò)后置條件學(xué)生登錄成功,并可進(jìn)行對(duì)系統(tǒng)相關(guān)事務(wù)處理?;韭窂?、學(xué)生輸入用戶名和密碼,并且登錄系統(tǒng)1.1學(xué)生輸入用戶名和密碼并按下登錄鍵,系統(tǒng)向數(shù)據(jù)庫(kù)發(fā)送驗(yàn)證請(qǐng)求1.2數(shù)據(jù)庫(kù)接收請(qǐng)求,對(duì)用戶名和密碼進(jìn)行驗(yàn)證1.3數(shù)據(jù)庫(kù)將驗(yàn)證結(jié)果回傳到請(qǐng)假系統(tǒng)擴(kuò)展1.1、輸入的密碼只能是數(shù)字和英語(yǔ)單詞1.2、對(duì)用戶名、密碼進(jìn)行驗(yàn)證1.2.1、輸入的信息與數(shù)據(jù)庫(kù)的數(shù)據(jù)匹配成功,則正常登錄1.2.2、輸入的信息與數(shù)據(jù)庫(kù)的數(shù)據(jù)匹配失敗,提示重新輸入字段列表用戶名密碼業(yè)務(wù)規(guī)則備注申請(qǐng)請(qǐng)假參與者學(xué)生需要先登錄系統(tǒng)進(jìn)入到學(xué)生在請(qǐng)假系統(tǒng)中,填寫請(qǐng)假申請(qǐng)單,請(qǐng)假申請(qǐng)單會(huì)提交給老師管理系統(tǒng)進(jìn)行審批,如下表3.2所示。

表3.2學(xué)生申請(qǐng)請(qǐng)假用例規(guī)約表用例編號(hào)UC-002用例名稱申請(qǐng)請(qǐng)假功能描述學(xué)生創(chuàng)建新的請(qǐng)假申請(qǐng)單,然后填寫請(qǐng)假信息,并把申請(qǐng)信息提交給老師執(zhí)行者學(xué)生前置條件學(xué)生正常登錄到系統(tǒng)后,先完善好個(gè)人信息打開(kāi)請(qǐng)假管理頁(yè)面后置條件系統(tǒng)將保存該條請(qǐng)假記錄創(chuàng)建新的請(qǐng)假單并生成獨(dú)有的的申請(qǐng)編號(hào)創(chuàng)建新的請(qǐng)假申請(qǐng)流程實(shí)例記錄提交后不能夠再修改基本路徑學(xué)生選擇創(chuàng)建請(qǐng)假申請(qǐng)單學(xué)生點(diǎn)擊“請(qǐng)假”按鈕,系統(tǒng)會(huì)通過(guò)查詢學(xué)生ID,查詢出當(dāng)前的學(xué)生是否還有沒(méi)有銷假的記錄,如果存在沒(méi)有銷假的請(qǐng)假記錄,顯示你需要銷假后再申請(qǐng);如果沒(méi)有未銷假記錄,則顯示出請(qǐng)假申請(qǐng)單。學(xué)生錄入本人外出去向、請(qǐng)假原因、時(shí)間范圍(開(kāi)始時(shí)間,結(jié)束時(shí)間)、圖片附件,不能為空,向數(shù)據(jù)庫(kù)發(fā)送錄入請(qǐng)求。數(shù)據(jù)庫(kù)接受到請(qǐng)求后,將學(xué)生的請(qǐng)假信息錄入到數(shù)據(jù)庫(kù)中,系統(tǒng)回傳到界面,顯示所有請(qǐng)假的界面擴(kuò)展字段列表外出去向、請(qǐng)假原因、開(kāi)始時(shí)間、結(jié)束時(shí)間業(yè)務(wù)規(guī)則備注申請(qǐng)銷假參與者學(xué)生需要先登錄系統(tǒng)進(jìn)入到學(xué)生在請(qǐng)假系統(tǒng)中,學(xué)生在系統(tǒng)點(diǎn)擊銷假申請(qǐng)時(shí),如果申請(qǐng)成功,此時(shí)請(qǐng)假信息中的狀態(tài)會(huì)修改為申請(qǐng)銷假,否則提示申請(qǐng)銷假失敗,如下表3.3所示。表3.3學(xué)生申請(qǐng)銷假用例規(guī)約表用例編號(hào)UC-003用例名稱申請(qǐng)銷假功能描述學(xué)生成功進(jìn)入請(qǐng)假界面,點(diǎn)擊銷假,然后再次確認(rèn)申請(qǐng)銷假執(zhí)行者學(xué)生前置條件學(xué)生打開(kāi)學(xué)生網(wǎng)上請(qǐng)假系統(tǒng),成功登錄后進(jìn)入請(qǐng)假系統(tǒng)后置條件登錄成功后,系統(tǒng)把相應(yīng)的權(quán)限頁(yè)面基本路徑學(xué)生向系統(tǒng)發(fā)出銷假申請(qǐng),而且等待系統(tǒng)驗(yàn)證1.1如果顯示申請(qǐng)成功,系統(tǒng)將返回請(qǐng)假界面等待輔導(dǎo)員審核1.2如果顯示申請(qǐng)失敗,系統(tǒng)就顯示提示申請(qǐng)銷假失敗,請(qǐng)重新申請(qǐng)擴(kuò)展字段列表業(yè)務(wù)規(guī)則備注查詢請(qǐng)假記錄參與者學(xué)生需要先登錄系統(tǒng)進(jìn)入到學(xué)生在請(qǐng)假系統(tǒng)中,學(xué)生通過(guò)系統(tǒng)點(diǎn)擊個(gè)人“請(qǐng)假歷史”,系統(tǒng)對(duì)該學(xué)生請(qǐng)假記錄查詢,如果查詢成功,學(xué)生請(qǐng)假的記錄將會(huì)顯示在頁(yè)面上,如表3.4所示。表3.4學(xué)生查詢請(qǐng)假記錄用例規(guī)約表用例編號(hào)UC-004用例名稱查詢請(qǐng)假記錄功能描述學(xué)生進(jìn)入請(qǐng)假界面后,點(diǎn)擊歷史請(qǐng)假,系統(tǒng)顯示歷史請(qǐng)假記錄執(zhí)行者學(xué)生前置條件學(xué)生打開(kāi)學(xué)生網(wǎng)上請(qǐng)假系統(tǒng),成功登錄后進(jìn)入請(qǐng)假系統(tǒng)后置條件登錄成功后,系統(tǒng)把相應(yīng)的權(quán)限頁(yè)面基本路徑學(xué)生點(diǎn)擊“歷史請(qǐng)假”按鈕,系統(tǒng)查詢請(qǐng)假記錄1.1如果驗(yàn)證成功,則顯示歷史請(qǐng)假記錄1.2如果驗(yàn)證失敗,則提示查詢失敗或你沒(méi)有歷史請(qǐng)假記錄,請(qǐng)重新申請(qǐng)擴(kuò)展字段列表業(yè)務(wù)規(guī)則備注學(xué)生相關(guān)順序圖學(xué)生請(qǐng)假申請(qǐng)順序圖該順序圖反映了學(xué)生對(duì)請(qǐng)假申請(qǐng)的一系列操作如下:(1)學(xué)生登錄請(qǐng)假系統(tǒng)后,發(fā)送請(qǐng)假申請(qǐng)到請(qǐng)假申請(qǐng)控制類中。(2)檢驗(yàn)該學(xué)生是否有可以申請(qǐng)請(qǐng)假的權(quán)限,如果有,繼續(xù)到下一步;否則,系統(tǒng)再次檢驗(yàn)。(3)系統(tǒng)獲取該學(xué)生是否有未銷假記錄到請(qǐng)假記錄信息內(nèi)系統(tǒng)自動(dòng)查詢.(4)如果該學(xué)生有未銷假的信息,則顯示出未銷假記錄的信息(不可以請(qǐng)假)。(5)顯示請(qǐng)假申請(qǐng)單,并提示填寫申請(qǐng)單(可請(qǐng)假)。(6)學(xué)生在界面上填寫請(qǐng)假信息。(7)提交請(qǐng)假信息單。(8)創(chuàng)建請(qǐng)假記錄對(duì)象。(9)系統(tǒng)驗(yàn)證請(qǐng)假信息填寫的準(zhǔn)確性。(10)驗(yàn)證完成正確后,保存請(qǐng)假記錄。(11)保存成功后,系統(tǒng)返回請(qǐng)假詳情。(12)顯示保存成功的提示到頁(yè)面中。(13)顯示保存失敗的提示到頁(yè)面中。如圖3.2所示。圖3.2學(xué)生請(qǐng)假申請(qǐng)順序圖學(xué)生銷假申請(qǐng)順序圖(1)學(xué)生點(diǎn)擊銷假按鈕,系統(tǒng)發(fā)送銷假申請(qǐng)到銷假申請(qǐng)控制類中。(2)該學(xué)生的銷假申請(qǐng),系統(tǒng)對(duì)此進(jìn)行異常的判斷。(3)在頁(yè)面中顯示申請(qǐng)銷假成功(正常)。(4)在頁(yè)面中顯示申請(qǐng)失敗,同時(shí)提示重新申請(qǐng)(異常)。如圖3.3所示。圖3.3學(xué)生銷假申請(qǐng)順序圖學(xué)生請(qǐng)假查詢順序圖(1)學(xué)生發(fā)送查詢信息。(2)創(chuàng)建請(qǐng)假記錄的對(duì)象。(3)數(shù)據(jù)庫(kù)將請(qǐng)假歷史信息回送到請(qǐng)假管理界面。(4)顯示該學(xué)生的請(qǐng)假詳情在界面中。如圖3.4所示。圖3.4學(xué)生請(qǐng)假查詢順序圖3.2.4老師用例以下圖3.5是老師端用例圖,學(xué)生的功能模塊有登錄、待審請(qǐng)假、查詢請(qǐng)假記錄、待審銷假、查詢銷假記錄這個(gè)的操作,如下圖3.5所示。圖3.5老師用例圖老師用例規(guī)約登錄參與者老師需要用戶名和密碼登錄到系統(tǒng),才能進(jìn)行相應(yīng)的操作,系統(tǒng)中設(shè)置老師的登錄用戶名為工號(hào),初始化密碼為工號(hào),如表3.5所示。表3.5老師登錄用例規(guī)約表用例編號(hào)UC-005用例名稱登錄功能描述驗(yàn)證工號(hào)和密碼,確保是管理員登錄。執(zhí)行者老師前置條件工號(hào)和密碼經(jīng)過(guò)驗(yàn)證準(zhǔn)確并通過(guò)后置條件老師登錄成功,并可進(jìn)行對(duì)系統(tǒng)相關(guān)事務(wù)處理。基本路徑1、老師輸入用戶名和密碼,然后登錄系統(tǒng)1.1老師輸入賬戶號(hào)碼和密碼并按下登錄鍵,系統(tǒng)向數(shù)據(jù)庫(kù)發(fā)送驗(yàn)證請(qǐng)求1.2數(shù)據(jù)庫(kù)接收請(qǐng)求,對(duì)用戶名和密碼進(jìn)行驗(yàn)證1.3數(shù)據(jù)庫(kù)將驗(yàn)證結(jié)果回傳到請(qǐng)假系統(tǒng)擴(kuò)展1.1、輸入的密碼只能是數(shù)字和英語(yǔ)單詞1.2、對(duì)賬戶、密碼進(jìn)行驗(yàn)證1.2.1、輸入的信息與數(shù)據(jù)庫(kù)的數(shù)據(jù)匹配成功,則正常登錄1.2.2、輸入的信息與數(shù)據(jù)庫(kù)的數(shù)據(jù)匹配失敗,提示重新輸入字段列表用戶名密碼業(yè)務(wù)規(guī)則備注待審請(qǐng)假參與者老師需要先登錄系統(tǒng)進(jìn)入到老師管理系統(tǒng)中,老師通過(guò)系統(tǒng)查看學(xué)生請(qǐng)假申請(qǐng)單,自行審批學(xué)生是否給予請(qǐng)假,并填寫審核意見(jiàn)提交,如表3.6所示。表3.6老師待審請(qǐng)假用例規(guī)約表用例編號(hào)UC-006用例名稱待審請(qǐng)假功能描述老師登錄系統(tǒng)后,審批自己學(xué)生的請(qǐng)假申請(qǐng),并提交審核意見(jiàn)。執(zhí)行者老師前置條件老師正常登錄到系統(tǒng),同時(shí)打開(kāi)待審請(qǐng)假頁(yè)面中后置條件該老師負(fù)責(zé)的學(xué)生,有學(xué)生的請(qǐng)假申請(qǐng)需要審批,并進(jìn)行對(duì)系統(tǒng)相關(guān)事務(wù)盡心處理基本路徑老師登錄系統(tǒng)后,點(diǎn)擊“待審請(qǐng)假”按鈕系統(tǒng)顯示該老師待審請(qǐng)假的信息老師對(duì)學(xué)生的請(qǐng)假申請(qǐng)進(jìn)行審批,并填寫審批意見(jiàn),并向數(shù)據(jù)庫(kù)發(fā)送給信息增加請(qǐng)求數(shù)據(jù)庫(kù)接受請(qǐng)求后,將審批通過(guò)的信息及審批意見(jiàn)寫入數(shù)據(jù)庫(kù),然后回傳到請(qǐng)假歷史界面中擴(kuò)展審批完成后,跳轉(zhuǎn)回待審請(qǐng)假界面字段列表審批意見(jiàn)業(yè)務(wù)規(guī)則備注查詢請(qǐng)假記錄參與者老師需要先登錄系統(tǒng)進(jìn)入到老師管理系統(tǒng)中,老師通過(guò)系統(tǒng)可以查看到學(xué)生請(qǐng)假歷史記錄,并可校對(duì)自己操作是否有誤等,如表3.7所示。表3.7查詢請(qǐng)假記錄用例規(guī)約表用例編號(hào)UC-007用例名稱查詢請(qǐng)假記錄功能描述老師登錄系統(tǒng)后,查看學(xué)生請(qǐng)假記錄,可查看申請(qǐng)人、申請(qǐng)時(shí)間、請(qǐng)假事由、當(dāng)前請(qǐng)假狀態(tài)等信息。執(zhí)行者老師前置條件老師正常登錄到系統(tǒng)之后,打開(kāi)請(qǐng)假歷史頁(yè)面中后置條件已有審批完的請(qǐng)假信息基本路徑1、老師點(diǎn)擊請(qǐng)假歷史按鈕發(fā)出查詢請(qǐng)假記錄,并等待系統(tǒng)驗(yàn)證1.1如果驗(yàn)證成功,則顯示審核過(guò)的學(xué)生的請(qǐng)假歷史記錄1.2如果驗(yàn)證失敗,則提示查詢失敗或無(wú)歷史請(qǐng)假記錄,請(qǐng)重新申請(qǐng)擴(kuò)展字段列表業(yè)務(wù)規(guī)則備注待審銷假參與者老師需要先登錄系統(tǒng)進(jìn)入到老師管理系統(tǒng)中,老師通過(guò)系統(tǒng)查看學(xué)生銷假申請(qǐng),自行審批學(xué)生是否給予銷假,并再次確認(rèn),通過(guò)則銷假成功,如表3.8所示。表3.8老師待審銷假用例規(guī)約表用例編號(hào)UC-008用例名稱申請(qǐng)銷假功能描述老師登錄系統(tǒng)后,查看待審核的學(xué)生銷假信息,老師對(duì)申請(qǐng)銷假的學(xué)生進(jìn)行審批。執(zhí)行者老師前置條件老師正常登錄到系統(tǒng)之后,打開(kāi)請(qǐng)假歷史頁(yè)面中后置條件該老師負(fù)責(zé)的學(xué)生,有學(xué)生的銷假申請(qǐng)需要審批,并進(jìn)行對(duì)系統(tǒng)相關(guān)事務(wù)盡心處理基本路徑1、老師登錄系統(tǒng)后,點(diǎn)擊待審請(qǐng)假按鈕2、系統(tǒng)顯示該老師待審銷假的信息3、老師對(duì)學(xué)生的銷假申請(qǐng)進(jìn)行審批,并再次確認(rèn)后點(diǎn)擊通過(guò)按鈕,并向數(shù)據(jù)庫(kù)發(fā)送給信息增加請(qǐng)求數(shù)據(jù)庫(kù)接受請(qǐng)求后,將審批通過(guò)的信息及審批意見(jiàn)寫入數(shù)據(jù)庫(kù),然后回傳到銷假歷史記錄界面中擴(kuò)展字段列表業(yè)務(wù)規(guī)則備注查詢銷假記錄參與者老師需要先登錄系統(tǒng)進(jìn)入到老師管理系統(tǒng)中,老師通過(guò)系統(tǒng)可以查看到學(xué)生銷假歷史記錄,并可校對(duì)自己操作是否有誤等,如表3.9所示。表3.9老師查詢銷假記錄用例規(guī)約表用例編號(hào)UC-009用例名稱查詢銷假記錄功能描述老師登錄系統(tǒng)后,查看學(xué)生銷假記錄,可查看申請(qǐng)人、申請(qǐng)時(shí)間、請(qǐng)假事由、當(dāng)前請(qǐng)假狀態(tài)等信息。執(zhí)行者老師前置條件老師正常登錄到系統(tǒng),并打開(kāi)銷假歷史頁(yè)面中后置條件已有審批完的銷假信息基本路徑1、老師點(diǎn)擊銷假歷史按鈕發(fā)出查詢請(qǐng)假記錄,并等待系統(tǒng)驗(yàn)證1.1如果驗(yàn)證成功,則顯示審核過(guò)的學(xué)生的銷假歷史記錄1.2如果驗(yàn)證失敗,則提示查詢失敗或無(wú)歷史銷假記錄,請(qǐng)重新申請(qǐng)擴(kuò)展字段列表業(yè)務(wù)規(guī)則備注老師相關(guān)順序圖待審請(qǐng)假順序圖(1)老師在待審核請(qǐng)假記錄界面,確認(rèn)審核信息(2)提示輸入審核意見(jiàn)(3)老師填寫完審核意見(jiàn),確認(rèn)提交審核意見(jiàn)(4)老師審核信息一并審核判斷結(jié)果錄入到數(shù)據(jù)庫(kù)中(5)界面顯示審核成功如圖3.6所示:圖3.6待審請(qǐng)假順序圖請(qǐng)假歷史順序圖(1)老師發(fā)送查詢信息(2)創(chuàng)建學(xué)生請(qǐng)假記錄的對(duì)象(3)數(shù)據(jù)庫(kù)將請(qǐng)假歷史信息回送到請(qǐng)假管理界面(4)顯示學(xué)生歷史請(qǐng)假詳情在界面中如圖3.7所示。圖3.7請(qǐng)假歷史順序圖待審銷假順序圖(1)老師在待審核銷假記錄界面,確認(rèn)審核信息(2)提示再次需要再次審核確認(rèn)(3)再次審核確認(rèn)完成(4)審核信息一并錄入到數(shù)據(jù)庫(kù)中(5)界面顯示審核成功如圖3.8所示。圖3.8待審銷假順序圖銷假歷史順序圖(1)老師發(fā)送查詢信息(2)創(chuàng)建學(xué)生銷假記錄的對(duì)象(3)數(shù)據(jù)庫(kù)將銷假歷史信息回傳到請(qǐng)假管理界面(4)顯示學(xué)生歷史銷假詳情在界面中如圖3.9所示:圖3.9銷假歷史順序圖非功能需求分析首先主要考慮的是系統(tǒng)功能軟件,在具體設(shè)計(jì)的環(huán)節(jié)上,是不是能夠較好的滿足各類用戶的基本功能需求,如果不能較好的滿足用戶需求,那么這個(gè)系統(tǒng)的存在是沒(méi)有價(jià)值的。軟件系統(tǒng)的非功能性求分析,在7個(gè)方面展開(kāi),一個(gè)是性能分析,針對(duì)系統(tǒng);一個(gè)是安全分析,針對(duì)系統(tǒng),一個(gè)是完整度分析,針對(duì)系統(tǒng),一個(gè)是可維護(hù)分析,針對(duì)系統(tǒng),一個(gè)是可擴(kuò)展性分析,針對(duì)系統(tǒng),一個(gè)是適應(yīng)業(yè)務(wù)的性能分析。面對(duì)汽車論壇管理系統(tǒng)存在的性能、安全、擴(kuò)展、完整度等7個(gè)方面性能綜合比對(duì)分析后發(fā)現(xiàn),需要相應(yīng)的非功能性需求分析。安全性需求分析安全性對(duì)于每個(gè)系統(tǒng)來(lái)說(shuō)都是非常重要的一個(gè)方面。安全性很好的系統(tǒng)可以保護(hù)企業(yè)的信息和用戶的信息不被竊取。提高系統(tǒng)的安全性不僅是對(duì)用戶的負(fù)責(zé),更是對(duì)企業(yè)的負(fù)責(zé)。尤其針對(duì)于學(xué)生網(wǎng)上請(qǐng)假系統(tǒng)來(lái)說(shuō),必須要有很好的安全性來(lái)保障整個(gè)系統(tǒng)。系統(tǒng)具有對(duì)使用者有權(quán)限控制,針對(duì)角色的不通限制使用者的權(quán)限,以此來(lái)確保系統(tǒng)的安全性。

系統(tǒng)設(shè)計(jì)系統(tǒng)架構(gòu)設(shè)計(jì)本次學(xué)生網(wǎng)上請(qǐng)假系統(tǒng)的架構(gòu)設(shè)計(jì)主要分為可以3層,主要有Web層,業(yè)務(wù)層,Model層。其中web層還包括View層和Controller層,Model層包括元數(shù)據(jù)擴(kuò)展層和數(shù)據(jù)訪問(wèn)層,如圖4.1所示。圖4.1系統(tǒng)架構(gòu)系統(tǒng)總體設(shè)計(jì)這個(gè)學(xué)生請(qǐng)假管理系統(tǒng)分為兩個(gè)模塊,學(xué)生端、教師端。學(xué)生和教師在登錄成功時(shí),分別進(jìn)入兩個(gè)不同的頁(yè)面進(jìn)行操作,學(xué)生端進(jìn)行請(qǐng)假申請(qǐng)、銷假申請(qǐng)和查詢個(gè)人請(qǐng)假記錄;老師審批請(qǐng)假、老師審批銷假、老師查詢請(qǐng)假和老師查詢銷假,如圖4.2所示。圖4.2系統(tǒng)總體設(shè)計(jì)圖數(shù)據(jù)庫(kù)設(shè)計(jì)學(xué)生網(wǎng)上請(qǐng)假系統(tǒng)所擁有的數(shù)據(jù)表有主要以下幾個(gè)表:請(qǐng)假信息表,用戶信息表,審核信息表等。由于數(shù)據(jù)表較多,只展示系統(tǒng)主要數(shù)據(jù)表,如下表所示。Leave表:字段包括編號(hào)、本人外出去向、請(qǐng)假類型、請(qǐng)假原因、時(shí)間類型、該天內(nèi)的時(shí)間、該天的開(kāi)始節(jié)數(shù)、一天的結(jié)束節(jié)數(shù)、請(qǐng)假開(kāi)始日期、請(qǐng)假結(jié)束日期、圖片附件地址,如表4.1所示。表4.1請(qǐng)假條信息數(shù)據(jù)庫(kù)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1idInt4

2ToWherenvarchar(MAX)-1

3Categoryint4

4Reasonnvarchar(MAX)-1

5TimeTypeint4

6OneDayTimedatetime87OneDayStartint48OneDayEndint49StartDatedatetime810EndDatedatetime811ImageUrlsnvarchar(MAX)-1112LeaveStatusint413AddTimedatetime814IsResumeint415ResumeTimedatetime8116Student_StudentIdnvarchar(128)128256Check表:包括審核id、審核狀態(tài)、審核順序、審核時(shí)間、審核意見(jiàn)、老師id、請(qǐng)假id,如表4.2所示。表4.2審核信息數(shù)據(jù)庫(kù)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1idInt8

2CheckStatusint4

3CheckOrderint4

4CheckTimedatetime85AddTimedatetime81

6CheckOpinionnvarchar(100)200

7CheckTeacher_TeacherIdnvarchar(128)2568Leave_Idint4Class表:包括自生成id、類別定義、老師類別、年紀(jì)、專業(yè),如表4.3所示。表4.3分類數(shù)據(jù)庫(kù)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1idInt4

2ClassDefinationnvarchar(MAX)-1

3ClassTeacher_TeacherIdnvarchar(128)256

4Grade_Idint45Major_Idint41

User表:該圖是用戶信息表包括id、用戶名稱、頭像、手機(jī)號(hào)碼、郵箱、確認(rèn)郵箱、密碼、安全驗(yàn)證、確認(rèn)手機(jī)號(hào),如表4.4所示。表4.4用戶信息數(shù)據(jù)庫(kù)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1idnvarchar(128)256

2UserNamenvarchar(256)512

3HeadImagenvarchar(MAX)-1

4PhoneNumbernvarchar(50)1005Namenvarchar(MAX)5121

6Emailnvarchar(256)17EmailConfirmedbit18PasswordHashnvarchar(500)5129SecurityStampnvarchar(500)51210PhoneNumberConfirmedbit1Office表:該表包括id、部門名稱、描述、描述id,如表4.5所示。表4.5部門信息數(shù)據(jù)庫(kù)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1idint4

2Namenvarchar(MAX)-1

3Descriptionnvarchar(MAX)-1

4Department_Idint4LessonInfo表:該表包括的字段有id、起始周、結(jié)束周、課程類別、工作日、教室位置、課程id、老師id、學(xué)生id,如表4.6所示。表4.6課程信息數(shù)據(jù)庫(kù)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1idint4

2StartWeekint4

3EndWeekint4

4ClassSeqint45WeekDayint46Classroomnvarchar(MAX)-117LessonIdint48TeacherIdnvarchar(128)25619StudentIdnvarchar(128)2561

系統(tǒng)實(shí)現(xiàn)首頁(yè)面該界面是簡(jiǎn)單介紹學(xué)生網(wǎng)上請(qǐng)假系統(tǒng)的用途和優(yōu)勢(shì),使得用戶對(duì)該系統(tǒng)有了初步的了解,用戶還可對(duì)系統(tǒng)進(jìn)行注冊(cè),登錄等操作.如圖5.1所示圖5.1系統(tǒng)首頁(yè)界面登錄功能登錄功能是每個(gè)項(xiàng)目都需要的一個(gè)基本功能模塊,而且也是查詢信息的一種,不過(guò)在查詢信息的過(guò)程中系統(tǒng)對(duì)頁(yè)面得到的輸入數(shù)據(jù)和數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行配對(duì),如果匹配成功,系統(tǒng)進(jìn)入到另外一個(gè)頁(yè)面,如果登錄失敗,系統(tǒng)進(jìn)行提示并重新登錄,登錄過(guò)程中在后臺(tái)數(shù)據(jù)中定義了標(biāo)志變量來(lái)表示學(xué)生和教師。

在系統(tǒng)登錄過(guò)程中進(jìn)行了簡(jiǎn)潔的數(shù)據(jù)校驗(yàn),就是用戶名和密碼不能為空,如果為空,系統(tǒng)將會(huì)提示錯(cuò)誤信息,并提醒重新登錄。登錄的界面如圖5.2所示圖5.2登錄界面登錄界面代碼。///<summary>///登錄///</summary>///<returns></returns>publicActionResultLogin(stringreturnUrl){if(User.Identity.IsAuthenticated){returnRedirectToAction("Index");}ViewBag.ReturnUrl=returnUrl;returnView();}[HttpPost][AllowAnonymous][ValidateAntiForgeryToken]publicActionResultLogin(UserLoginViewModellogin,stringreturnUrl){if(login.VerificationCode.ToUpper()!=TempData["VerificationCode"].ToString()){ModelState.AddModelError("VerificationCode","驗(yàn)證碼錯(cuò)誤");}else{if(ModelState.IsValid){varuser=_userService.Find(login.UserName);if(user==null){ModelState.AddModelError("UserName","用戶名不存在");}elseif(user.Password==Security.Sha256(login.Password)){_userService.Update(user);varidentity=_userService.CreateIdentity(user,DefaultAuthenticationTypes.ApplicationCookie);AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie);AuthenticationManager.SignIn(newAuthenticationProperties{IsPersistent=login.RememberMe},identity);Session["User"]=user;if(string.IsNullOrEmpty(returnUrl)){returnRedirectToAction("Index","Home");}if(Url.IsLocalUrl(returnUrl)){returnRedirect(returnUrl);}returnRedirectToAction("Index","Home");}else{ModelState.AddModelError("Password","密碼錯(cuò)誤");}}}returnView();}注冊(cè)界面功能用戶自行規(guī)范填寫學(xué)生號(hào)或工號(hào),及設(shè)定密碼,和通知郵箱,最后填寫隨機(jī)驗(yàn)證碼,并接受協(xié)議,然后點(diǎn)擊“確認(rèn)注冊(cè)”按鈕進(jìn)行注冊(cè)操作;用戶注冊(cè)成功后,系統(tǒng)將返回到登錄界面。如圖5.3所示。圖5.3注冊(cè)界面用戶注冊(cè)界面代碼:///<summary>///注冊(cè)///</summary>///<paramname="register"></param>///<returns></returns>[HttpPost][ValidateAntiForgeryToken]publicActionResultRegister(UserRegisterViewModelregister){if(TempData["VerificationCode"]==null||TempData["VerificationCode"].ToString()!=register.VerificationCode.ToUpper()){ModelState.AddModelError("VerificationCode","驗(yàn)證碼錯(cuò)誤");returnView(register);}if(ModelState.IsValid){if(_userService.Exist(register.UserName)){ModelState.AddModelError("Username","用戶名已存在");}elseif(register.Password!=register.Password2){ModelState.AddModelError("Password","兩次密碼不一致");}else{AppUseruser=newAppUser{UserName=register.UserName,//默認(rèn)用戶組代碼寫這里Password=Security.Sha256(register.Password),//郵箱驗(yàn)證與郵箱唯一性問(wèn)題Email=register.Email,//用戶狀態(tài)問(wèn)題Status=0,DisplayName=register.UserName,};user=_userService.Add(user);if(!string.IsNullOrEmpty(user.Id)){Session["User"]=user;varidentity=_userService.CreateIdentity(user,DefaultAuthenticationTypes.ApplicationCookie);AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie);AuthenticationManager.SignIn(identity);returnRedirectToAction("Index","Home");}else{ModelState.AddModelError("","注冊(cè)失敗");}}學(xué)生個(gè)人設(shè)置學(xué)生登錄/注冊(cè)成功之后可以完善自己的基本信息。配置完權(quán)限的后,信息表單中每一個(gè)input的name值都要與實(shí)體類中的參數(shù)相匹配,學(xué)生可以根據(jù)個(gè)人的手機(jī)號(hào),宿舍號(hào),家庭住址,家庭電話進(jìn)行寫入,點(diǎn)擊保存,數(shù)據(jù)就會(huì)提交到數(shù)據(jù)庫(kù)內(nèi)進(jìn)行添加或者修改。如圖5.4所示圖5.4學(xué)生個(gè)人設(shè)置界面學(xué)生請(qǐng)假下圖5.5是學(xué)生請(qǐng)假模塊的界面圖,界面上包含了學(xué)生請(qǐng)假需要填寫的基本信息,如本人外出去向、請(qǐng)假原因、請(qǐng)假時(shí)間范圍、請(qǐng)假開(kāi)始時(shí)間、請(qǐng)假結(jié)束時(shí)間、附加圖片等,當(dāng)學(xué)生填寫完所有基本信息之后,點(diǎn)擊下一步;如果信息填寫完整,彈出確認(rèn)請(qǐng)假窗口,學(xué)生確認(rèn)請(qǐng)假,否則顯示信息填寫不完全,返回界面讓學(xué)生繼續(xù)修改或填寫。圖5.5學(xué)生請(qǐng)假界面學(xué)生申請(qǐng)請(qǐng)假界面代碼:publicLeaveController(){_leaveService=newLeaveService();}//GET:Student/Leave[Authorize]publicActionResultIndex(){inttotalRecord;varlist=_leaveService.FindPageList(1,10,outtotalRecord,0,User.Identity.GetUserId());List<LeaveListViewModel>list2=newList<LeaveListViewModel>();foreach(varleafinlist.ToList()){list2.Add(newLeaveListViewModel{Leave=leaf,Status=_leaveService.GetLeaveStatus(leaf.LeaveId,leaf.UserId)});}returnView(list2);}[Authorize]publicActionResultNotice(){returnView();}///<summary>///申請(qǐng)請(qǐng)假///</summary>///<returns></returns>[Authorize]publicActionResultApply(){returnView();}[HttpPost][ValidateAntiForgeryToken][Authorize]publicActionResultApply(LeaveApplyViewModelleavemoModel){if(ModelState.IsValid){//判斷是否需要圖片附件switch(leavemoModel.Category){//病假caseLeaveCategory.病假:break;//事假caseLeaveCategory.事假:break;}varuserId=User.Identity.GetUserId();Leaveleave=newLeave{Category=leavemoModel.Category,StartDate=leavemoModel.StartDate,EndDate=leavemoModel.EndDate,ImageUrls=leavemoModel.ImageUrls,OneDayTime=leavemoModel.OneDayTime,OneDayStart=leavemoModel.OneDayStart,OneDayEnd=leavemoModel.OneDayEnd,Reason=leavemoModel.Reason,ToWhere=leavemoModel.ToWhere,TimeType=leavemoModel.TimeType,UserId=userId,LeaveStatus=1,AddTime=DateTime.Now,ResumeTime=DateTime.Now,IsResume=0,Checks=new[]{newCheck{CheckStatus=0,CheckTime=DateTime.Now,UserId=int.Parse(userId),CheckOrder=0},newCheck{CheckStatus=0,CheckTime=DateTime.Now,UserId=int.Parse(userId),CheckOrder=1}}};try{leave=_leaveService.Add(leave);if(leave.LeaveId>0){returnRedirectToAction("Success",leave);}else{ModelState.AddModelError("","請(qǐng)假失敗");}}catch(Exceptionex){ModelState.AddModelError("","請(qǐng)假失敗,"+ex.Message);}}returnView(leavemoModel);}[Authorize]publicActionResultSuccess(Leaveleave){returnView(leave);}[Authorize]publicActionResultDetail(int?id){if(id==null||id<1){returnRedirectToAction("Index");}varleave=_leaveService.Find((int)id,User.Identity.GetUserId());varmodel=newLeaveDetailViewModel{Leave=leave,Checks=leave.Checks};returnView(model);}[Authorize][HttpPost]publicintGetLeaveTimes(stringuserid){return_leaveService.GetLeaveTimes(userid);}}}學(xué)生銷假圖5.6是學(xué)生銷假功能模塊的界面圖,系統(tǒng)會(huì)根據(jù)登錄的學(xué)生Id自動(dòng)查詢出學(xué)生請(qǐng)假的狀態(tài)及是否銷假,這個(gè)界面最大的用處是,學(xué)生若要再次請(qǐng)假一定要撤銷掉上次的請(qǐng)假才可以繼續(xù)請(qǐng)假,學(xué)生可點(diǎn)擊就“銷假”,讓老師審批銷假。圖5.6學(xué)生銷假界面學(xué)生歷史請(qǐng)假圖5.7是學(xué)生歷史請(qǐng)假模塊的界面,該界面主要是學(xué)生可以查詢自己的歷史請(qǐng)假記錄、請(qǐng)假狀態(tài)、銷假記錄等,學(xué)生點(diǎn)擊“歷史請(qǐng)假”按鈕,系統(tǒng)顯示出該學(xué)生的歷史請(qǐng)假信息。圖5.7學(xué)生歷史請(qǐng)假界面老師待審請(qǐng)假以下圖5.8是老師待審核請(qǐng)假模塊的界面,該界面是老師登錄系統(tǒng)后,點(diǎn)擊“待審請(qǐng)假”按鈕,界面顯示出該老師所管理的學(xué)生的所有待審核請(qǐng)假信息,老師審批完后,通過(guò)點(diǎn)擊“通過(guò)”或“拒絕”按鈕,系統(tǒng)彈出審核意見(jiàn)界面,老師需填寫給予學(xué)生審核意見(jiàn),然后點(diǎn)擊“確認(rèn)”后,審核信息傳入數(shù)據(jù)庫(kù)中,數(shù)據(jù)轉(zhuǎn)為請(qǐng)假歷史信息表中。圖5.8待審請(qǐng)假界面老師查詢歷史請(qǐng)假以下圖5.9是老師查詢歷史請(qǐng)假功能模塊的界面,該界面主要是老師查看學(xué)生請(qǐng)假歷史信息,也可包括老師還未審核完成的學(xué)生申請(qǐng)請(qǐng)假信息,可是該界面中的按鈕沒(méi)辦法進(jìn)行“通過(guò)”或“拒絕”操作,只能點(diǎn)擊“詳細(xì)”按鈕,老師可查看到學(xué)生請(qǐng)假信息的詳細(xì)信息。圖5.9老師查詢歷史請(qǐng)假界面老師查詢歷史銷假以下圖5.10是老師查詢歷史銷假功能模塊的界面,該界面主要是系統(tǒng)通過(guò)老師所綁定管理的學(xué)生,顯示出所管理學(xué)生的銷假歷史信息,其中包含編號(hào)、申請(qǐng)人、申請(qǐng)時(shí)間、請(qǐng)假事由、當(dāng)前狀態(tài)等信息,老師只能對(duì)其進(jìn)行查閱,但不能進(jìn)行修改。圖5.10老師查詢歷史銷假界面老師個(gè)人設(shè)置以下圖5.11是老師個(gè)人設(shè)置信息功能模塊的界面,該界面老師可以對(duì)自己個(gè)人信息進(jìn)行設(shè)置,其中包括手機(jī)號(hào)和辦公室,老師確認(rèn)好信息后,點(diǎn)擊“保存”按鈕,信息就會(huì)保存到老師個(gè)人信息的數(shù)據(jù)庫(kù)表里。圖5.11老師個(gè)人設(shè)置界面

系統(tǒng)測(cè)試測(cè)試目的對(duì)任何系統(tǒng)而言,測(cè)試都是必不可少的環(huán)節(jié),測(cè)試可以發(fā)現(xiàn)系統(tǒng)存在的很多問(wèn)題,所有的軟件上線前,都應(yīng)該進(jìn)行充足的測(cè)試后才能保證上線后不會(huì)Bug頻發(fā),或者是功能不滿足需求等問(wèn)題的發(fā)生。下面分別從單元測(cè)試,功能測(cè)試和用例測(cè)試來(lái)對(duì)系統(tǒng)進(jìn)行測(cè)試以保證系統(tǒng)的穩(wěn)定性和可靠性。功能測(cè)試下表是系統(tǒng)登錄功能測(cè)試用例,檢測(cè)了用戶名和密碼的不同的輸入情況,觀察系統(tǒng)的情況,查看該功能塊是否達(dá)到設(shè)計(jì)預(yù)期,如表6.1所示表6.1系統(tǒng)登錄功能測(cè)試用例功能描述用于系統(tǒng)登錄測(cè)試目的檢測(cè)登錄時(shí)的合法性檢查測(cè)試數(shù)據(jù)以及操作預(yù)期結(jié)果實(shí)際結(jié)果輸入的用戶名和密碼帶有非法字符提示用戶名或者密碼錯(cuò)誤與預(yù)期結(jié)果一致輸入的用戶名或者密碼為空提示用戶名或者密碼錯(cuò)誤與預(yù)期結(jié)果一致輸入的用戶名和密碼不存在提示用戶名或者密碼錯(cuò)誤與預(yù)期結(jié)果一致輸入正確的用戶名和密碼登錄成功與預(yù)期結(jié)果一致下表是用戶注冊(cè)功能測(cè)試用例,檢測(cè)了該模塊中對(duì)信息包括用戶名、密碼、郵箱和驗(yàn)證碼填寫操作是否正確及完整,觀察系統(tǒng)的情況,查看該功能塊是否達(dá)到設(shè)計(jì)預(yù)期,如表6.2所示。表6.2系統(tǒng)注冊(cè)功能測(cè)試用例功能描述用于用戶注冊(cè)測(cè)試目的檢測(cè)注冊(cè)時(shí)的合法性檢查測(cè)試數(shù)據(jù)以及操作預(yù)期結(jié)果實(shí)際結(jié)果輸入的用戶名不合法提示用戶名不符合規(guī)則與預(yù)期結(jié)果一致輸入的字段為空提示必填項(xiàng)不能為空與預(yù)期結(jié)果一致輸入的郵箱不合法提示郵箱不符合規(guī)則與預(yù)期結(jié)果一致輸入的密碼少于6位提示密碼必須為6-12位與預(yù)期結(jié)果一致輸入的密碼少于12提示密碼必須位6-12位與預(yù)期結(jié)果一致下表模塊是學(xué)生個(gè)人信息功能測(cè)試用例,檢測(cè)了該模塊中對(duì)信息包括手機(jī)號(hào)、宿舍號(hào)、家庭住址、家庭電話填寫操作是否成功運(yùn)行,觀察系統(tǒng)的情況,查看該功能塊是否達(dá)到設(shè)計(jì)預(yù)期,如表6.3所示。表6.3學(xué)生個(gè)人信息測(cè)試用例功能描述用于用戶注冊(cè)測(cè)試目的檢測(cè)注冊(cè)時(shí)的合法性檢查測(cè)試數(shù)據(jù)以及操作預(yù)期結(jié)果實(shí)際結(jié)果輸入的手機(jī)號(hào)不合法提示請(qǐng)輸入正確的手機(jī)號(hào)與預(yù)期結(jié)果一致輸入的字段為空提示必填項(xiàng)不能為空與預(yù)期結(jié)果一致輸入的宿舍號(hào)不合法提示請(qǐng)輸入正確的宿舍號(hào)與預(yù)期結(jié)果一致輸入的家庭電話少于7位提示家庭電話必須為7-12位與預(yù)期結(jié)果一致輸入的家庭電話少于12位提示家庭電話必須位7-12位與預(yù)期結(jié)果一致輸入的家庭住址不合法提示請(qǐng)輸入正確的家庭住址與預(yù)期結(jié)果一致下表模塊是老師個(gè)人信息功能測(cè)試用例,測(cè)試了該模塊中對(duì)信息包括手機(jī)號(hào)、辦公室填寫操作是否成功運(yùn)行,觀察系統(tǒng)的情況,查看該功能塊是否達(dá)到設(shè)計(jì)預(yù)期,如表6.4所示。表6.4老師個(gè)人信息測(cè)試用例功能描述用于用戶注冊(cè)測(cè)試目的檢測(cè)注冊(cè)時(shí)的合法性檢查測(cè)試數(shù)據(jù)以及操作預(yù)期結(jié)果實(shí)際結(jié)果輸入的手機(jī)號(hào)不合法提示請(qǐng)輸入正確的手機(jī)號(hào)與預(yù)期結(jié)果一致輸入的字段為空提示必填項(xiàng)不能為空與預(yù)期結(jié)果一致輸入的辦公室不合法提示請(qǐng)輸入正確的辦公室與預(yù)期結(jié)果一致性能測(cè)試使用阿里云PTS(PerformanceTestingService)性能測(cè)試服務(wù)對(duì)線上系統(tǒng)進(jìn)行壓力測(cè)試。線上服務(wù)器環(huán)境為:1核心CPU,1G內(nèi)存,1Mbps公網(wǎng)帶寬,Centos7.0操作系統(tǒng)。壓測(cè)過(guò)程中使用了2臺(tái)并發(fā)機(jī)器,每臺(tái)機(jī)器20個(gè)用戶并發(fā),對(duì)系統(tǒng)主頁(yè),登錄,數(shù)據(jù)查詢和數(shù)據(jù)維護(hù)等模塊進(jìn)行并發(fā)訪問(wèn),測(cè)試結(jié)果是有40個(gè)用戶并發(fā)時(shí),數(shù)據(jù)管理相關(guān)頁(yè)面的響應(yīng)時(shí)間甚至達(dá)到了7s,通過(guò)查看服務(wù)器出網(wǎng)流量發(fā)現(xiàn)已經(jīng)達(dá)到1381kb/s,可以看出服務(wù)器的帶寬已經(jīng)達(dá)到峰值,如果系統(tǒng)使用5Mbps的帶寬,系統(tǒng)的響應(yīng)時(shí)間和TPS將會(huì)大大增加。在整個(gè)測(cè)試的過(guò)程中,CPU的使用率占用僅8%,也提現(xiàn)出帶寬瓶頸對(duì)系統(tǒng)的影響非常嚴(yán)重。

總結(jié)與展望伴隨著計(jì)算機(jī)互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,社會(huì)中各行各業(yè)都實(shí)現(xiàn)采用計(jì)算機(jī)的技術(shù)對(duì)日益增長(zhǎng)的龐大數(shù)據(jù)進(jìn)行管理。該課題是學(xué)生網(wǎng)上請(qǐng)假系統(tǒng)為核心進(jìn)行展開(kāi)的,主要是實(shí)現(xiàn)請(qǐng)假信息化管理和用戶現(xiàn)階段需求。學(xué)生網(wǎng)上管理系統(tǒng)是以C#編程語(yǔ)言為基礎(chǔ),在VisualStudio平臺(tái)上完成編碼工作,系統(tǒng)運(yùn)用的框架是MVC框架,數(shù)據(jù)庫(kù)系統(tǒng)使用的是SQLSever2008。文中已經(jīng)詳細(xì)的分析了學(xué)生網(wǎng)上請(qǐng)假系統(tǒng)的研究背景、研究目的和意義、相關(guān)技術(shù)以及系統(tǒng)功能需求、系統(tǒng)詳細(xì)設(shè)計(jì)和系統(tǒng)測(cè)試等一系列內(nèi)容。該系統(tǒng)在實(shí)現(xiàn)了所需的一些基本功能,并且通過(guò)測(cè)試對(duì)這些實(shí)現(xiàn)的基本功能進(jìn)行完善,不斷地提高了系統(tǒng)的整體實(shí)用性。在這次開(kāi)發(fā)中,大量的使用了C#相關(guān)的知識(shí),前端開(kāi)發(fā)使用到的html、javascript等,同時(shí)也涉及到非常多組件和更新包。系統(tǒng)開(kāi)發(fā)差不多投入運(yùn)行時(shí),系統(tǒng)各系統(tǒng)都可以運(yùn)行正常。系統(tǒng)的每一個(gè)界面操作都符合了常規(guī)的邏輯,對(duì)初始使用者來(lái)說(shuō)操作簡(jiǎn)單,界面相對(duì)美觀,還加了操作說(shuō)明。系統(tǒng)的每個(gè)功能設(shè)計(jì)合理,總體體現(xiàn)了人性化思想。但是由于自己在系統(tǒng)的開(kāi)發(fā)過(guò)程中,一些用到相關(guān)更為深入的知識(shí)和技術(shù)掌握不夠老顧,并且我自己的開(kāi)發(fā)經(jīng)驗(yàn)極度欠缺,所以系統(tǒng)還是有些不夠完善和考慮不夠周全的地方,待自己日后逐步完善。

參考文獻(xiàn)[1]宋宇輝,林春梅.基于ASP.NET的高校教代會(huì)提案系統(tǒng)的研究與實(shí)現(xiàn)[J].信息與電腦(理論版);2018年[2]高洪濤..NET分布式軟件體系結(jié)構(gòu)的設(shè)計(jì)應(yīng)用[J].無(wú)線互聯(lián)科技;2018年[3]韓立剛.計(jì)算機(jī)網(wǎng)絡(luò)(修訂版)北京:清華大學(xué)出版社,2013年[4]楊國(guó),肖祥林.基于ASP.NETMVC的在線購(gòu)物網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)[J].教育教學(xué)論壇;2017年[5]張超,董恬恬.基于ASP.NET的《計(jì)算機(jī)應(yīng)用基礎(chǔ)》課程網(wǎng)站的設(shè)計(jì)[J].電腦知識(shí)與技術(shù);2016年[6]賈宗星.基于ASP.NET的信息發(fā)布網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)時(shí)代;2019年[7]韓道軍,賈培艷.新建構(gòu)主義在ASP.NETMVCWeb程序設(shè)計(jì)課程中的應(yīng)用[J].軟件導(dǎo)刊;2018年[8]生家鋒.《ASP動(dòng)態(tài)網(wǎng)站》課程教學(xué)項(xiàng)目設(shè)計(jì)與實(shí)踐研究[J].亞太教育;2015年[9]ChristianNagel;BillEvjen;JayGlynn:ProfessionalC#2008;WroxPres;2008[10]Wagner:EffectiveC#;MachineryIndustryPress;2006年[11]LiuQuanZhuYiwenLiFangminProf.,SchoolofInformationEngineering,WUT,Wuhan430070,China.InformationSecurityFramesBasedonVPNTechnology.JournalofWuhanUniversityofTechnology,2003,(05):3.

[12]GUOH,CHENF,WANGY.Areusablesoftwarearchitecturemodelformanufactorymanagementinformationsystem[C].26thIEEEInternationalConferenceonComputerSoftwareandApplication.Oxford:IEEE,2002,

致謝本次設(shè)計(jì)歷時(shí)3個(gè)多月。在這次畢業(yè)設(shè)計(jì)中,每天都離不開(kāi)卞麗情指導(dǎo)老師的細(xì)心指導(dǎo),使事情基本順利。起初我剛開(kāi)始論文寫作時(shí)心里是很沒(méi)有底的,中間也遇到了無(wú)數(shù)的困難和障礙,不過(guò)還好都在同學(xué)和老師的互相討論的幫助下度過(guò)了。指導(dǎo)老師也很督促我論文的進(jìn)度,讓我慢慢知道論文的重要性,不厭其煩的幫助我進(jìn)行論文的修改和改進(jìn)。另一方面,老師認(rèn)真負(fù)責(zé)的工作態(tài)度,謹(jǐn)慎的教學(xué)指導(dǎo)也給我留下了特別深的感覺(jué),也讓我知道的細(xì)節(jié)決定了很多東西。在此,我特向老師表示由衷的感激。經(jīng)歷自己對(duì)該畢業(yè)設(shè)計(jì)的全過(guò)程研究與開(kāi)發(fā),我的系統(tǒng)從需求分析到實(shí)現(xiàn)詳細(xì)功能,再到最終測(cè)試和維護(hù)的特殊進(jìn)展。讓我對(duì)系統(tǒng)研發(fā)有了深層次的理解,也知道一個(gè)系統(tǒng)的開(kāi)發(fā)也不是一件容易的事。這次也讓我自己的動(dòng)手能力和單獨(dú)處理問(wèn)題的本領(lǐng)有了更好的提升。最后,在整個(gè)系統(tǒng)的開(kāi)發(fā)過(guò)程中,我還是要感謝我身邊的同學(xué)和部分有工作經(jīng)驗(yàn)的朋友給了我很多的意見(jiàn),讓我加快對(duì)問(wèn)題的解決和項(xiàng)目的設(shè)計(jì),我由衷地感謝他們。

捷鍵與一些電腦小技巧HYPERLINKwinkey+d:

這是高手最常用的第一快捷組合鍵。這個(gè)快捷鍵組合可以將桌面上的所有窗口瞬間最小化,無(wú)論是聊天的窗口還是游戲的窗口……只要再次按下這個(gè)組合鍵,剛才的所有窗口都回來(lái)了,而且激活的也正是你最小化之前在使用的窗口!

--這個(gè)就是winkeywinkey+f:

不用再去移動(dòng)鼠標(biāo)點(diǎn)“開(kāi)始→搜索→文件和文件夾”了,在任何狀態(tài)下,只要一按winkey+f就會(huì)彈出搜索窗口。

winkey+r:

在我們的文章中,你經(jīng)常會(huì)看到這樣的操作提示:“點(diǎn)擊‘開(kāi)始→運(yùn)行’,打開(kāi)‘運(yùn)行’對(duì)話框……”。其實(shí),還有一個(gè)更簡(jiǎn)單的辦法,就是按winkey+r!

alt+tab:

如果打開(kāi)的窗口太多,這個(gè)組合鍵就非常有用了,它可以在一個(gè)窗口中顯示當(dāng)前打開(kāi)的所有窗口的名稱和圖標(biāo)●,選中自己希望要打開(kāi)的窗口,松開(kāi)這個(gè)組合鍵就可以了。而alt+tab+shift鍵則可以反向顯示當(dāng)前打開(kāi)的窗口。

winkey+e:

當(dāng)你需要打開(kāi)資源管理器找文件的時(shí)候,這個(gè)快捷鍵會(huì)讓你感覺(jué)非?!八?!再也不用騰出一只手去摸鼠標(biāo)了!

小提示:

winkey指的是鍵盤上刻有windows徽標(biāo)的鍵●。winkey主要出現(xiàn)在104鍵和107鍵的鍵盤中。104鍵盤又稱win95鍵盤,這種鍵盤在原來(lái)101鍵盤的左右兩邊、ctrl和alt鍵之間增加了兩個(gè)windwos鍵和一個(gè)屬性關(guān)聯(lián)鍵。107鍵盤又稱為win98鍵盤,比104鍵多了睡眠、喚醒、開(kāi)機(jī)等電源管理鍵,這3個(gè)鍵大部分位于鍵盤的右上方。

再補(bǔ)充點(diǎn)

F1顯示當(dāng)前程序或者windows的幫助內(nèi)容。

F2當(dāng)你選中一個(gè)文件的話,這意味著“重命名”

F3當(dāng)你在桌面上的時(shí)候是打開(kāi)“查找:所有文件”對(duì)話框

F10或ALT激活當(dāng)前程序的菜單欄

windows鍵或CTRL+ESC打開(kāi)開(kāi)始菜單

CTRL+ALT+DELETE在win9x中打開(kāi)關(guān)閉程序?qū)υ捒?/p>

DELETE刪除被選擇的選擇項(xiàng)目,如果是文件,將被放入回收站

SHIFT+DELETE刪除被選擇的選擇項(xiàng)目,如果是文件,將被直接刪除而不是

放入回收站

CTRL+N新建一個(gè)新的文件

CTRL+O打開(kāi)“打開(kāi)文件”對(duì)話框

CTRL+P打開(kāi)“打印”對(duì)話框

CTRL+S保存當(dāng)前操作的文件

CTRL+X剪切被選擇的項(xiàng)目到剪貼板

CTRL+INSERT或CTRL+C復(fù)制被選擇的項(xiàng)目到剪貼板

SHIFT+INSERT或CTRL+V粘貼剪貼板中的內(nèi)容到當(dāng)前位置

ALT+BACKSPACE或CTRL+Z撤銷上一步的操作

ALT+SHIFT+BACKSPACE重做上一步被撤銷的操作

Windows鍵+D:最小化或恢復(fù)windows窗口

Windows鍵+U:打開(kāi)“輔助工具管理器”

Windows鍵+CTRL+M重新將恢復(fù)上一項(xiàng)操作前窗口的大小和位置

Windows鍵+E打開(kāi)資源管理器

Windows鍵+F打開(kāi)“查找:所有文件”對(duì)話框

Windows鍵+R打開(kāi)“運(yùn)行”對(duì)話框

Windows鍵+BREAK打開(kāi)“系統(tǒng)屬性”對(duì)話框

Windows鍵+CTRL+F打開(kāi)“查找:計(jì)算機(jī)”對(duì)話框

SHIFT+F10或鼠標(biāo)右擊打開(kāi)當(dāng)前活動(dòng)項(xiàng)目的快捷菜單

SHIFT在放入CD的時(shí)候按下不放,可以跳過(guò)自動(dòng)播放CD。在打開(kāi)wo

rd的時(shí)候按下不放,可以跳過(guò)自啟動(dòng)的宏

ALT+F4關(guān)閉當(dāng)前應(yīng)用程序

ALT+SPACEBAR打開(kāi)程序最左上角的菜單

ALT+TAB切換當(dāng)前程序

ALT+ESC切換當(dāng)前程序

ALT+ENTER將windows下運(yùn)行的MSDOS窗口在窗口和全屏幕狀態(tài)間切換

PRINTSCREEN將當(dāng)前屏幕以圖象方式拷貝到剪貼板

ALT+PRINTSCREEN將當(dāng)前活動(dòng)程序窗口以圖象方式拷貝到剪貼板

CTRL+F4關(guān)閉當(dāng)前應(yīng)用程序中的當(dāng)前文本(如word中)

CTRL+F6切換到當(dāng)前應(yīng)用程序中的下一個(gè)文本(加shift可以跳到前

一個(gè)窗口)

在IE中:

ALT+RIGHTARROW顯示前一頁(yè)(前進(jìn)鍵)

ALT+LEFTARROW顯示后一頁(yè)(后退鍵)

CTRL+TAB在頁(yè)面上的各框架中切換(加shift反向)

F5刷新

CTRL+F5強(qiáng)行刷新1.打開(kāi)“我的電腦”-“工具”-“文件夾選項(xiàng)”-“查看”-在“顯示所有文件和文件夾”選項(xiàng)前打勾-“確定”

2.刪除以下文件夾中的內(nèi)容:

x:\DocumentsandSettings\用戶名\Cookies\下的所有文件(保留index文件)

x:\DocumentsandSettings\用戶名\LocalSettings\Temp\下的所有文件(用戶臨時(shí)文件)

x:\DocumentsandSettings\用戶名\LocalSettings\TemporaryInternetFiles\下的所有文件(頁(yè)面文件)

x:\DocumentsandSettings\用戶名\LocalSettings\History\下的所有文件(歷史紀(jì)錄)

x:\DocumentsandSettings\用戶名\Recent\下的所有文件(最近瀏覽文件的快捷方式)

x:\WINDOWS\Temp\下的所有文件(臨時(shí)文件)

x:\WINDOWS\ServicePackFiles(升級(jí)sp1或sp2后的備份文件)

x:\WINDOWS\DriverCache\i386下的壓縮文件(驅(qū)動(dòng)程序的備份文件)

x:\WINDOWS\SoftwareDistribution\download下的所有文件

3.如果對(duì)系統(tǒng)進(jìn)行過(guò)windoesupdade升級(jí),則刪除以下文件:x:\windows\下以$u...開(kāi)頭的隱藏文件

4.然后對(duì)磁盤進(jìn)行碎片整理,整理過(guò)程中請(qǐng)退出一切正在運(yùn)行的程序

5.碎片整理后打開(kāi)“開(kāi)始”-“程序”-“附件”-“系統(tǒng)工具”-“系統(tǒng)還原”-“創(chuàng)建一個(gè)還原點(diǎn)”(最好以當(dāng)時(shí)的日期作為還原點(diǎn)的名字)

6.打開(kāi)“我的電腦”-右鍵點(diǎn)系統(tǒng)盤-“屬性”-“磁盤清理”-“其他選項(xiàng)”-單擊系統(tǒng)還原一欄里的“清理”-選擇“是”-ok了

7、在各種軟硬件安裝妥當(dāng)之后,其實(shí)XP需要更新文件的時(shí)候就很少了。刪除系統(tǒng)備份文件吧:開(kāi)始→運(yùn)行→sfc.exe/purgecache近3xxM。(該命令的作用是立即清除"Windows文件保護(hù)"文件高速緩存,釋放出其所占據(jù)的空間)

8、刪掉\windows\system32\dllcache下dll檔(減去200——300mb),這是備用的dll檔,只要你已拷貝了安裝文件,完全可以這樣做。

9、XP會(huì)自動(dòng)備份硬件的驅(qū)動(dòng)程序,但在硬件的驅(qū)動(dòng)安裝正確后,一般變動(dòng)硬件的可能性不大,所以也可以考慮將這個(gè)備份刪除,文件位于\windows\drivercache\i386目錄下,名稱為driver.cab,你直接將它刪除就可以了,通常這個(gè)文件是74M。

10、刪除不用的輸入法:對(duì)很多網(wǎng)友來(lái)說(shuō),WindowsXPt系統(tǒng)自帶的輸入法并不全部都合適自己的使用,比如IMJP8_1日文輸入法、IMKR6_1韓文輸入法這些輸入法,如果用不著,我們可以將其刪除。輸入法位于\windows\ime\文件夾中,全部占用了88M的空間。

11、升級(jí)完成發(fā)現(xiàn)windows\多了許多類似$NtUninstallQ311889$這些目錄,都干掉吧,1x-3xM

12、另外,保留著\windows\help目錄下的東西對(duì)我來(lái)說(shuō)是一種傷害,呵呵。。。都干掉!

13、關(guān)閉系統(tǒng)還原:系統(tǒng)還原功能使用的時(shí)間一長(zhǎng),就會(huì)占用大量的硬盤空間。因此有必要對(duì)其進(jìn)行手工設(shè)置,以

溫馨提示

  • 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)論