畢業(yè)設(shè)計(jì)管理系統(tǒng)設(shè)計(jì)_第1頁(yè)
畢業(yè)設(shè)計(jì)管理系統(tǒng)設(shè)計(jì)_第2頁(yè)
畢業(yè)設(shè)計(jì)管理系統(tǒng)設(shè)計(jì)_第3頁(yè)
畢業(yè)設(shè)計(jì)管理系統(tǒng)設(shè)計(jì)_第4頁(yè)
畢業(yè)設(shè)計(jì)管理系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩29頁(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、學(xué) 號(hào): 202140410230 數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)與維護(hù)題 目畢業(yè)設(shè)計(jì)(論文)管理系統(tǒng)教 學(xué) 院計(jì)算機(jī)學(xué)院 專(zhuān) 業(yè)計(jì)算機(jī)科學(xué)與技術(shù)班 級(jí)08計(jì)科(2)班姓 名 指導(dǎo)教師 2021年12月28日 目 錄1 序 言11.1 課題的來(lái)源與意義11.1.1 課題的來(lái)源11.1.2 課題的意義11.2 課題研究的主要內(nèi)容12 開(kāi)發(fā)技術(shù)與工具22.1 Microsoft.NET 技術(shù)22.2 ASP.NET 簡(jiǎn)介22.3 Visual Studio 202133 需求分析43.1可行性分析43.2 需求分析43.2.1 功能需求43.2.2 角色和工作流程53.2 系統(tǒng)要實(shí)現(xiàn)的目標(biāo)74 總體設(shè)計(jì)84.1

2、三層結(jié)構(gòu)概述84.1.1 三層結(jié)構(gòu)的概念84.1.2 三層結(jié)構(gòu)的優(yōu)點(diǎn)84.1.3 三層結(jié)構(gòu)的缺點(diǎn)94.2 本系統(tǒng)的分層設(shè)計(jì)94.3 數(shù)據(jù)庫(kù)設(shè)計(jì)115 詳細(xì)設(shè)計(jì)145.1 管理員模塊的實(shí)現(xiàn)145.2 教師模塊的實(shí)現(xiàn)175.3 學(xué)生模塊的實(shí)現(xiàn)20附 錄22致 謝25參考文獻(xiàn)26數(shù)據(jù)庫(kù)開(kāi)發(fā)與維護(hù)1 序 言1.1 課題的來(lái)源與意義1.1.1 課題的來(lái)源本課題是“黃石理工學(xué)院計(jì)算機(jī)學(xué)院”立項(xiàng)項(xiàng)目,立項(xiàng)時(shí)間為 2021 年 9 月。1.1.2 課題的意義高校畢業(yè)論文是高校本科人才培養(yǎng)方案的一個(gè)重要組成部分,也是學(xué)生畢業(yè)與學(xué)位資格認(rèn)證的重要依據(jù)。整個(gè)本科畢業(yè)論文的工作過(guò)程持續(xù)時(shí)間長(zhǎng),涉及人數(shù)多(學(xué)生,指導(dǎo)教

3、師和教學(xué)管理人員),并且隨著高校擴(kuò)招,學(xué)生人數(shù)的不斷增長(zhǎng),畢業(yè)論文工作過(guò)程中的工作量越來(lái)越大,使用傳統(tǒng)的管理方式也變得越來(lái)越困難,在這樣的背景下如何加強(qiáng)畢業(yè)論文的管理工作,是一個(gè)亟待探討和研究的問(wèn)題。目前,許多高校的本科畢業(yè)論文管理工作相對(duì)滯后,基本采用多年來(lái)一貫的操作模式:教師命題、學(xué)生選題,經(jīng)過(guò)開(kāi)題、論文撰寫(xiě)和論文答辯確定成績(jī),最后由教學(xué)管理人員將論文歸檔保存,整個(gè)過(guò)程基本靠人工來(lái)完成。在目前各高校網(wǎng)絡(luò)教學(xué)環(huán)境成熟的條件下,傳統(tǒng)模式無(wú)疑顯露出諸多不足。首先,教學(xué)管理人員成為畢業(yè)設(shè)計(jì)管理流程的核心,在該管理模式下,教學(xué)管理人員逐漸成了教師、學(xué)生交流信息的中轉(zhuǎn)站,使得整個(gè)管理流程環(huán)節(jié)繁雜、效率

4、低下。另外,紙制論文查詢(xún)不便、需占用大量空間保存,以及對(duì)畢業(yè)設(shè)計(jì)過(guò)程的監(jiān)控力度不夠等都是傳統(tǒng)管理模式所固有的弊端。研究和開(kāi)發(fā)一個(gè)本科畢業(yè)論文工作全程管理系統(tǒng),實(shí)現(xiàn)畢業(yè)論文工作過(guò)程的網(wǎng)絡(luò)化跟蹤,以及畢業(yè)論文的電子化管理,通過(guò)網(wǎng)絡(luò)直接搭建起學(xué)生、教師間的檢索、統(tǒng)計(jì)、報(bào)表打印以及教師在線(xiàn)指導(dǎo)等功能,但該系統(tǒng)沒(méi)有實(shí)現(xiàn)對(duì)選題、答辯和成績(jī)管理等環(huán)節(jié)的輔助管理。1.2 課題研究的主要內(nèi)容高校本科畢業(yè)論文管理系統(tǒng)除對(duì)論文本身進(jìn)行管理外,還應(yīng)考慮如何提供對(duì)畢業(yè)論文全過(guò)程的管理,同時(shí)亦需考慮與教務(wù)系統(tǒng)如何連接,包括使用相同帳號(hào)問(wèn)題、成績(jī)自動(dòng)反饋問(wèn)題。如何實(shí)現(xiàn)一個(gè)本科畢業(yè)論文工作全程管理系統(tǒng),是本課題的主要研究問(wèn)題

5、。該系統(tǒng)如何與現(xiàn)有的教務(wù)管理系統(tǒng)整合,是本課題研究的重點(diǎn)問(wèn)題。實(shí)現(xiàn)對(duì)外數(shù)據(jù)查詢(xún)接口,提供對(duì)外論文查詢(xún)服務(wù)是本課題的一個(gè)嘗試。2 開(kāi)發(fā)技術(shù)與工具2.1 Microsoft.NET 技術(shù).NET 框架包括用于創(chuàng)建和操作新一代服務(wù)的.NET 基礎(chǔ)結(jié)構(gòu)和工具,用于建立新一代高度分布式的數(shù)以百萬(wàn)計(jì)的.NET 組件服務(wù),以及啟用新一代智能互聯(lián)網(wǎng)設(shè)備的.NET 設(shè)備軟件12。其完整的結(jié)構(gòu)如圖 2-1 所示: 圖 2- 1 Microsoft.NET 框架2.2 ASP.NET 簡(jiǎn)介ASP. NET 提供了一個(gè) Web 應(yīng)用程序模型,該模型由一組控件和一個(gè)基本結(jié)構(gòu)組成。有了它,Web 應(yīng)用程序的構(gòu)建變得非常容

6、易。開(kāi)發(fā)人員可以直接使用 ASP.NET 控件集(諸如數(shù)據(jù)源控件、數(shù)據(jù)顯示控件等),這些控件運(yùn)行在 Web 服務(wù)器上,它們將用戶(hù)界面轉(zhuǎn)換成 HTML 格式后再發(fā)送給瀏覽器。在服務(wù)器上,控件負(fù)責(zé)將面向?qū)ο蟮木幊棠P统尸F(xiàn)給 Web 開(kāi)發(fā)人員,這種編程模型能提供面向?qū)ο蟮木幊碳夹g(shù)擁有的豐富功能。ASP. NET 還提供一些基本結(jié)構(gòu)服務(wù)(諸如會(huì)話(huà)狀態(tài)管理和進(jìn)程循環(huán)),這些服務(wù)進(jìn)一步減少了開(kāi)發(fā)人員要編寫(xiě)的代碼量,并使應(yīng)用程序的可靠性得到了大幅度提高。ASP. NET 還允許開(kāi)發(fā)人員將軟件作為一項(xiàng)服務(wù)進(jìn)行傳送。通過(guò)使用 ASP. NET Web 服務(wù)功能,ASP. NET 開(kāi)發(fā)人員只需進(jìn)行簡(jiǎn)單的業(yè)務(wù)邏輯編

7、程,而由 ASP. NET 基本結(jié)構(gòu)負(fù)責(zé)通過(guò) SOAP 傳送服務(wù)15。.NET 開(kāi)發(fā)平臺(tái)為開(kāi)發(fā) WEB 應(yīng)用程序提供了強(qiáng)大的技術(shù)支持,使開(kāi)發(fā)變得非常便捷,高效。ASP.NET 通過(guò)服務(wù)器控件解決了上述問(wèn)題。服務(wù)器端控件會(huì)生成發(fā)送給瀏覽器的 HTML 代碼,還能生成隱藏的 HTML 元素來(lái)存儲(chǔ)它們當(dāng)前的狀態(tài)。在提交頁(yè)面時(shí),這些信息就會(huì)傳送回服務(wù)器,控件將自動(dòng)處理這些信息,改變 HTML 并顯示控件。2.3 Visual Studio 2021Visual Studio2021 是微軟提供的集成開(kāi)發(fā)環(huán)境,用于生成 ASP.NET Web 應(yīng)用程序、XML Web Services、桌面應(yīng)用程序和移

8、動(dòng)應(yīng)用程序。在 Visual Studio2021中 Visual Basic、Visual C+、Visual C# 和 Visual J# 全都使用相同的集成開(kāi)發(fā)環(huán)境(IDE),該環(huán)境允許它們共享工具,并有助于創(chuàng)建混合語(yǔ)言解決方案30。另外,這些語(yǔ)言充分利用了.NET Framework 的功能,提供了對(duì)簡(jiǎn)化 ASP.NET Web 應(yīng)用程序開(kāi)發(fā)和 XML Web Service 開(kāi)發(fā)的關(guān)鍵技術(shù)支持。Visual Studio 集成開(kāi)發(fā)環(huán)境中為開(kāi)發(fā)人員提供了大量的實(shí)用工具以提高工作效率。這些工具包括了自動(dòng)編譯、項(xiàng)目創(chuàng)建向?qū)?、?chuàng)建部署工程等等。本系統(tǒng)的開(kāi)發(fā)使用的是 Visual Studio

9、 2021,目前微軟最新的 Visual Studio 集成開(kāi)發(fā)環(huán)境是 Visual Studio 2021。3 需求分析3.1可行性分析可行性研究的目的是為了軟件開(kāi)發(fā)的前期工作做準(zhǔn)備,探討是否現(xiàn)有的技術(shù)可以實(shí)現(xiàn)本軟件,以及作出的軟件是否有實(shí)際的功能及作用;討論軟件的系統(tǒng)邊界,系統(tǒng)的主要功能,系統(tǒng)的數(shù)據(jù)流程,為軟件的總體設(shè)計(jì)打下基礎(chǔ); (1) 經(jīng)濟(jì)可行性系統(tǒng)的經(jīng)濟(jì)可行性指的是對(duì)組織的經(jīng)濟(jì)狀況和投資能力進(jìn)行分析,對(duì)系統(tǒng)建設(shè)、運(yùn)行和維護(hù)費(fèi)用進(jìn)行估算,對(duì)系統(tǒng)建成后可能取得的社會(huì)及經(jīng)濟(jì)效益進(jìn)行估計(jì)。本系統(tǒng)不需要大量經(jīng)費(fèi),在經(jīng)濟(jì)上完全可行。 (2) 技術(shù)可行性技術(shù)上的可行性分析主要分析技術(shù)條件能否順利完

10、成開(kāi)發(fā)工作,硬、軟件能否滿(mǎn)足開(kāi)發(fā)者的需要等。本系統(tǒng)采用了SQL Sever作為后臺(tái)服務(wù)器開(kāi)發(fā),前臺(tái)以VisualStudio2021制作的模式,由于在兩種軟件上都有一定的了解,使用其做過(guò)一些系統(tǒng),所以本系統(tǒng)在技術(shù)上完全可行。(3) 應(yīng)用可行性本系統(tǒng)主要是為了用計(jì)算機(jī)代替人工進(jìn)行畢業(yè)設(shè)計(jì)(論文)管理而開(kāi)發(fā)的。本系統(tǒng)直觀(guān)易懂,使用非常方便,教師、學(xué)生可以直接上手,即使是管理員,只要經(jīng)過(guò)簡(jiǎn)單的培訓(xùn),操作本系統(tǒng)沒(méi)有太大的問(wèn)題。在高校的購(gòu)置的硬件平臺(tái)上本系統(tǒng)也可良好的運(yùn)行,在應(yīng)用可行性上具備這個(gè)條件。3.2 需求分析3.2.1 功能需求通過(guò)與教務(wù)處負(fù)責(zé)全校畢業(yè)論文管理工作的老師充分溝通,結(jié)合自己作為系一

11、級(jí)畢業(yè)論文工作的管理者對(duì)畢業(yè)論文工作過(guò)程的了解,并在與部分教師和學(xué)生反復(fù)交流的基礎(chǔ)上,得出本科畢業(yè)論文工作全程管理系統(tǒng)的主要需求如下:1 在每次論文工作開(kāi)始時(shí),管理員應(yīng)對(duì)系統(tǒng)進(jìn)行基本信息的設(shè)定,如畢業(yè)設(shè)計(jì)年份,申報(bào)課題時(shí)間,選題時(shí)間,導(dǎo)入教師、學(xué)生名單。2 學(xué)生和指導(dǎo)教師相互聯(lián)系,根據(jù)實(shí)際情況擬定論文題目,指導(dǎo)教師可通過(guò)系統(tǒng)在網(wǎng)上提交擬定的題目,等待管理員審核。在審核之前這些題目只是本次待選題目(簡(jiǎn)稱(chēng)選題),只有通過(guò)審核的選題才能最終確定為學(xué)生的正式題目。3 管理員可以在網(wǎng)上審核本教研室教師提交的選題,若審核未通過(guò),可以輸入簡(jiǎn)單未通過(guò)審核的原因,教師可以看到審核結(jié)果。4 選題經(jīng)審核后,教師通過(guò)

12、系統(tǒng)可以正式指派給學(xué)生。若審核未通過(guò),教師需和學(xué)生重新討論確定選題,提交、等待審核直至通過(guò)。在實(shí)際工作中,在系統(tǒng)中完成以上操作后,每個(gè)指導(dǎo)教師指導(dǎo)哪些學(xué)生確定了,每個(gè)學(xué)生的論文題目也確定了,此時(shí)用戶(hù)在系統(tǒng)可以看到本屆論文選題的全部結(jié)果。此后將進(jìn)入論文撰寫(xiě)階段。5 在論文撰寫(xiě)階段,系統(tǒng)應(yīng)提供交流平臺(tái),以便學(xué)生和教師交流,并允許通過(guò)系統(tǒng)上傳下載文件。6 在論文撰寫(xiě)階段,學(xué)生可以隨時(shí)在系統(tǒng)中查詢(xún)和下載往屆學(xué)生畢業(yè)論文,了解論文內(nèi)容、要求,格式等信息。7 系一級(jí)管理員要求系統(tǒng)能夠根據(jù)指定條件生成答辯安排表,教師、學(xué)生可以看到答辯安排。8 答辯結(jié)束后,學(xué)生要通過(guò)系統(tǒng)提交論文(包括論文相關(guān)信息和電子文檔)

13、。9 學(xué)生提交論文后,指導(dǎo)教師進(jìn)入系統(tǒng),對(duì)學(xué)生提交的論文進(jìn)行審核,審核合格者,教師提交該學(xué)生的論文成績(jī),否則該學(xué)生需重新提交,直至審核通過(guò)。期間學(xué)生可以在系統(tǒng)中查看審核結(jié)果和評(píng)分結(jié)果。10 上述工作完成后,系管理員可以通過(guò)系統(tǒng)打印報(bào)表(如:選題結(jié)果一覽表、成績(jī)匯總表、成績(jī)分析表等)。11 在整個(gè)論文工作過(guò)程中,管理員可以在系統(tǒng)中發(fā)布公告,管理自己發(fā)布的公告,教師,學(xué)生可以查看公告。12 用戶(hù)可以維護(hù)個(gè)人信息,包括修改 ,Email 等。13 在系統(tǒng)第一次投入使用時(shí),管理員應(yīng)先添加系,然后從教務(wù)系統(tǒng)導(dǎo)入教師和學(xué)生基本信息。管理員需添加本系專(zhuān)業(yè)信息。以后每一屆工作結(jié)束,管理員需清理畢業(yè)生信息一次。

14、若專(zhuān)業(yè),教研室信息發(fā)生變化,管理員可以對(duì)專(zhuān)業(yè)信息進(jìn)行管理。14 論文管理系統(tǒng)的登錄帳號(hào)、密碼應(yīng)和教務(wù)系統(tǒng)一樣,在論文系統(tǒng)中輸入的成績(jī)時(shí),應(yīng)自動(dòng)更新教務(wù)系統(tǒng)中成績(jī)。3.2.2 角色和工作流程經(jīng)過(guò)以上功能需求分析,可以得出論文管理系統(tǒng)的用戶(hù)有:學(xué)生、教師、管理員,不同用戶(hù)在系統(tǒng)中擔(dān)任不同角色,具有不同權(quán)限,要完成不同操作。不同用戶(hù)的操作又有著相互依賴(lài)關(guān)系,如管理員把學(xué)生分配給指導(dǎo)教師,學(xué)生、教師才能看到論文安排結(jié)果;教師提交歸檔材料,教研室管理員才能審核歸檔材料;學(xué)生上傳論文,教師才能審核上傳的論文。有些操作是公共的,如查看公告,有些操作是特定角色才能進(jìn)行的,如論文審核。按畢業(yè)論文工作的時(shí)間順序,

15、及其不同角色在不同時(shí)間階段要參與的活動(dòng)綜合分析后,得出畢業(yè)論文工作過(guò)程流程圖,如圖 3-1 所示:圖 3- 1 畢業(yè)論文工作流程3.2 系統(tǒng)要實(shí)現(xiàn)的目標(biāo)根據(jù)上面需求分析,最終確定系統(tǒng)要實(shí)現(xiàn)如圖 3-2 所示功能模塊,由于模塊劃分是從功能角度出發(fā),而不是從用戶(hù)角度考慮,所有一個(gè)功能模塊會(huì)涉及到多個(gè)用戶(hù)。圖 3- 2 系統(tǒng)功能模塊圖下面對(duì)各模塊作簡(jiǎn)要說(shuō)明:學(xué)生模塊基本功能:課題選擇、我的課題、我的任務(wù)書(shū)、開(kāi)題材料、論文提交、通知公告、網(wǎng)上答疑、下載專(zhuān)區(qū)、個(gè)人信息維護(hù)、密碼修改。教師模塊基本功能:課題申報(bào)、全院課題、選題管理、發(fā)布任務(wù)書(shū)、開(kāi)題報(bào)告、通知公告、網(wǎng)上答疑、論文接收、歸檔材料、下載專(zhuān)區(qū)、本

16、組學(xué)生信息、個(gè)人信息管理、密碼修改。管理模塊基本功能:基礎(chǔ)數(shù)據(jù)維護(hù)、教師信息導(dǎo)入、學(xué)生信息導(dǎo)入、教師信息管理、學(xué)生信息管理、教師申報(bào)課題管理、選題管理、賬戶(hù)管理、通知公告、歸檔材料、下載專(zhuān)區(qū)、數(shù)據(jù)庫(kù)維護(hù)、個(gè)人信息管理、密碼修改。4 總體設(shè)計(jì)4.1 三層結(jié)構(gòu)概述4.1.1 三層結(jié)構(gòu)的概念三層結(jié)構(gòu)是一種成熟、簡(jiǎn)單并得到普遍應(yīng)用的應(yīng)用程序架構(gòu),它將應(yīng)用程序結(jié)構(gòu)劃分為三個(gè)邏輯層:戶(hù)表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪(fǎng)問(wèn)層。其中將實(shí)現(xiàn)人機(jī)交互界面的所有表單和組件放在表示層,將所有業(yè)務(wù)規(guī)則和邏輯的實(shí)現(xiàn)封裝在負(fù)責(zé)業(yè)務(wù)邏輯組件中,將所有和數(shù)據(jù)庫(kù)的交互封裝在數(shù)據(jù)訪(fǎng)問(wèn)組件中33。其結(jié)構(gòu)如圖 4-1 所示。圖 4- 1 三層

17、結(jié)構(gòu)示意圖三層結(jié)構(gòu)十分有利于系統(tǒng)的開(kāi)發(fā),維護(hù)、部署和擴(kuò)展。使用三層結(jié)構(gòu)的目的,是為了實(shí)現(xiàn)“高內(nèi)聚、低耦合”,采用“分而治之”的思想,把問(wèn)題劃分開(kāi)來(lái)各個(gè)解決,易于控制,易于延展,易于分配資源。三層結(jié)構(gòu)是一種嚴(yán)格分層方法,即數(shù)據(jù)訪(fǎng)問(wèn)層只能被業(yè)務(wù)邏輯層訪(fǎng)問(wèn),業(yè)務(wù)邏輯層只能被表示層訪(fǎng)問(wèn),用戶(hù)通過(guò)表示層將請(qǐng)求傳送給業(yè)務(wù)邏輯層,業(yè)務(wù)邏輯層完成相關(guān)業(yè)務(wù)規(guī)則和邏輯,并通過(guò)數(shù)據(jù)訪(fǎng)問(wèn)層訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)獲得數(shù)據(jù),然后按照相反的順序依次返回將數(shù)據(jù)顯示在表示層。4.1.2 三層結(jié)構(gòu)的優(yōu)點(diǎn)1 從開(kāi)發(fā)角度和應(yīng)用角度來(lái)看,三層架構(gòu)比雙層或單層結(jié)構(gòu)都有更大的優(yōu)勢(shì)三層結(jié)構(gòu)適合群體開(kāi)發(fā),每人可以有不同的分工,協(xié)同工作使效率倍增。開(kāi)發(fā)雙層

18、或單層應(yīng)用時(shí),每個(gè)開(kāi)發(fā)人員都應(yīng)對(duì)系統(tǒng)有較深的理解,能力要求很高,開(kāi)發(fā)三層應(yīng)用時(shí),則可以結(jié)合多方面的人才,只需少數(shù)人對(duì)系統(tǒng)全面了解,從一定程度上降低了開(kāi)發(fā)的難度。2 三層架構(gòu)可以更好地支持分布式計(jì)算環(huán)境邏輯層的應(yīng)用程序可以放在多個(gè)機(jī)器上運(yùn)行,充分利用網(wǎng)絡(luò)的分布式特性。分布式計(jì)算的潛力巨大,遠(yuǎn)比升級(jí) CPU 有效。美國(guó)人曾利用分式計(jì)算解密,幾個(gè)月就破解了據(jù)稱(chēng)永遠(yuǎn)都破不了的密碼。3 可適應(yīng)不斷的變化和新的業(yè)務(wù)需求對(duì)軟件進(jìn)行分層可以達(dá)到結(jié)構(gòu)清晰、易于重用的目的。任何應(yīng)用系統(tǒng)實(shí)施的重點(diǎn)不在于需求確定以后能否實(shí)現(xiàn)這些需求,而是在系統(tǒng)實(shí)施后如何適應(yīng)變化的需求。三層結(jié)構(gòu)由于對(duì)系統(tǒng)分層設(shè)計(jì),一旦日后需求發(fā)生變化

19、,只需修改相應(yīng)層的部分代碼,對(duì)其他層沒(méi)有影響或影響很小。4 能有效提高系統(tǒng)安全性多層體系結(jié)構(gòu)將數(shù)據(jù)與程序、數(shù)據(jù)控制與應(yīng)用邏輯分層獨(dú)立管理,能更嚴(yán)格地控制信息訪(fǎng)問(wèn)。用戶(hù)端只能通過(guò)邏輯層來(lái)訪(fǎng)問(wèn)數(shù)據(jù)層,減少了入口點(diǎn),把很多危險(xiǎn)的系統(tǒng)功能都屏蔽了。4.1.3 三層結(jié)構(gòu)的缺點(diǎn)1 “三層結(jié)構(gòu)”開(kāi)發(fā)模式一個(gè)非常明顯的缺點(diǎn)就是其執(zhí)行速度不夠快。當(dāng)然這個(gè)“執(zhí)行速度”是相對(duì)于非分層的應(yīng)用程序來(lái)說(shuō)的34。2 “三層結(jié)構(gòu)”開(kāi)發(fā)模式,入門(mén)難度夠高,難于理解和學(xué)習(xí)。以這種模式開(kāi)發(fā)出來(lái)的軟件,代碼量通常要稍稍多一些。4.2 本系統(tǒng)的分層設(shè)計(jì)上一節(jié)討論的三層結(jié)構(gòu)是一個(gè)總體的三層結(jié)構(gòu)模型,實(shí)際開(kāi)發(fā)應(yīng)用系統(tǒng)時(shí),每一層還可劃分成多

20、個(gè)子層,層與層之間還可引入接口層,并且一般還加入業(yè)務(wù)實(shí)體層,以便各層簡(jiǎn)傳遞業(yè)務(wù)數(shù)據(jù),加入公共層,用來(lái)封裝公用方法。本系統(tǒng)根據(jù)實(shí)際情況采用的分層結(jié)構(gòu)如圖 4-2 所示。圖 4- 2 本系統(tǒng)的分層結(jié)構(gòu)分層的思路和各層作用如下:公共層(Common Layer):本層包括自定義實(shí)體類(lèi)型和自定義實(shí)體類(lèi)型集合,還封裝一些常用的公共方法,供表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪(fǎng)問(wèn)層調(diào)用。用于各層次之間數(shù)據(jù)交互的載體。表示層(Presentation Layer,簡(jiǎn)稱(chēng) PL):提供交互界面,供用戶(hù)操作??刹捎?WinForm 方式,也可采用 Web 方式,本系統(tǒng)選擇的是 Web 方式。本層負(fù)責(zé)傳遞用戶(hù)的輸入給業(yè)務(wù)邏輯層

21、,并把業(yè)務(wù)邏輯層的處理結(jié)果展示給用戶(hù)。業(yè)務(wù)邏輯層(Business Logic Layer,簡(jiǎn)稱(chēng) BLL):主要是針對(duì)具體業(yè)務(wù)處理的操作,如對(duì)數(shù)據(jù)進(jìn)行有效性驗(yàn)證,操作約束判斷等。業(yè)務(wù)邏輯層接收表示層傳來(lái)的數(shù)據(jù)(簡(jiǎn)單變量、業(yè)務(wù)實(shí)體類(lèi)型對(duì)象或業(yè)務(wù)實(shí)體集合類(lèi)型對(duì)象),然后根據(jù)具體的業(yè)務(wù)邏輯調(diào)用數(shù)據(jù)訪(fǎng)問(wèn)層的一個(gè)或多個(gè)方法進(jìn)行處理,最后返回處理結(jié)果給表示層。數(shù)據(jù)訪(fǎng)問(wèn)層(Data Access Layer,簡(jiǎn)稱(chēng) DAL):封裝對(duì)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)操作。是對(duì)原始數(shù)據(jù)(數(shù)據(jù)庫(kù)或者文本文件等存放數(shù)據(jù)的形式)的操作層,而不是指原始數(shù)據(jù),也就是說(shuō),是對(duì)數(shù)據(jù)的操作,而不是數(shù)據(jù)庫(kù)。這里封裝所有訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的相關(guān)代碼,包括 SQ

22、L 語(yǔ)句,存儲(chǔ)過(guò)程等。本層接收業(yè)務(wù)邏輯層傳來(lái)的數(shù)據(jù)(簡(jiǎn)單變量、業(yè)務(wù)實(shí)體類(lèi)型對(duì)象或業(yè)務(wù)實(shí)體集合類(lèi)型對(duì)象),執(zhí)行不同 SQL 語(yǔ)句或存儲(chǔ)過(guò)程,并把執(zhí)行結(jié)果返回給業(yè)務(wù)邏輯層。4.3 數(shù)據(jù)庫(kù)設(shè)計(jì)本系統(tǒng)后臺(tái)使用 SQL 2021 數(shù)據(jù)庫(kù)。GDS數(shù)據(jù)庫(kù)是系統(tǒng)的主數(shù)據(jù)庫(kù),它用于存放學(xué)生信息、教師信息、管理員信息、基礎(chǔ)數(shù)據(jù)信息、專(zhuān)業(yè)信息、課題信息、選題信息、郵件信息、下載資料信息和系統(tǒng)公告信息。GDS 數(shù)據(jù)庫(kù)包括十一張表,各表名稱(chēng)與表之間關(guān)系如圖 4-3 的E-R圖所示。圖 4- 3 E-R圖上述十一張表中,權(quán)限表(Speciality 表)、專(zhuān)業(yè)表(Speciality 表)和選題表(StaffRoom 表

23、)結(jié)構(gòu)比較簡(jiǎn)單,分別用來(lái)存儲(chǔ)各類(lèi)用戶(hù)權(quán)限、專(zhuān)業(yè)名稱(chēng)和選題信息,其它各表如下。1. 基礎(chǔ)數(shù)據(jù)表基礎(chǔ)數(shù)據(jù)表(BaseSystemData表)用來(lái)存放基礎(chǔ)數(shù)據(jù)配置信息,其結(jié)構(gòu)如表4-1所示。表 4- 1 BaseSystemData表2. 管理員表、學(xué)生表和教師表管理員表(Admins表)、學(xué)生表(Student 表)和教師表(Teacher 表)分別用來(lái)存放內(nèi)置的管理員基本信息、學(xué)生和教師的基本信息,其結(jié)構(gòu)如表4-2 、表 4-3 和表 4-4所示。表 4- 2 Admins 表表 4- 3 Student 表表 4- 4 Teacher 表3 下載信息表、郵件信息表和通知公告表下載信息表(Dow

24、nloadZone表)、郵件信息表(MailInfo表)和通知公告表(PublicNotice 表)分別用來(lái)存放供下載的文件相關(guān)信息、郵件信息和通知公告信息。表結(jié)構(gòu)如表 4-5、表 4-6和表 4-7 所示。表 4- 5 DownloadZone表表 4- 6 MailInfo表表 4- 7 PublicNotice表4 課題信息表課題信息表(Subjects表)用于記錄教師申報(bào)的課題的詳細(xì)信息,以及課題適用年份、最大選題人數(shù),當(dāng)前選題人數(shù)等信息,結(jié)構(gòu)如表 4-8 所示。表 4- 8 Subjects表5 詳細(xì)設(shè)計(jì)本系統(tǒng)分為三大模塊:管理員模塊、教師模塊、學(xué)生模塊,由三個(gè)人獨(dú)立進(jìn)行開(kāi)發(fā)最終集成

25、而來(lái),以下是各模塊的運(yùn)行效果:5.1 管理員模塊的實(shí)現(xiàn)畢業(yè)設(shè)施(論文)管理系統(tǒng)開(kāi)始啟用時(shí),必須先由管理員對(duì)系統(tǒng)進(jìn)行初始配置,具體包括以下內(nèi)容:1基礎(chǔ)數(shù)據(jù)維護(hù)以管理員身份登錄(系統(tǒng)預(yù)先內(nèi)置了校管理員賬號(hào),登錄后可修改),分別進(jìn)行學(xué)院(系)設(shè)置,專(zhuān)業(yè)設(shè)置,時(shí)間設(shè)置。圖5-1 主界面圖5-2 學(xué)院設(shè)置圖5-3 專(zhuān)業(yè)設(shè)置圖5-4 時(shí)間設(shè)置2 .導(dǎo)入學(xué)生、教師基本信息下載指定模板,按固定格式文件導(dǎo)入學(xué)生和教師信息(主要是學(xué)號(hào)教師編號(hào)、姓名等)。使學(xué)生和教師的賬戶(hù)和密碼都初始化為各自編號(hào)。圖5-5 學(xué)生信息導(dǎo)入圖5-6 教師信息導(dǎo)入3 .下載專(zhuān)區(qū)用來(lái)上傳、管理、下載畢業(yè)設(shè)計(jì)的相關(guān)文件材料。圖5-7 下載專(zhuān)

26、區(qū)4 .教師、學(xué)生管理用來(lái)管理使用本系統(tǒng)的相關(guān)教師和學(xué)生信息及其資格進(jìn)行審核。圖5-8 教師管理圖5-9 學(xué)生管理5 .申報(bào)課題管理用來(lái)管理教師申報(bào)的課題信息及對(duì)其進(jìn)行審核。圖5-10 課題管理6 .選題管理用來(lái)對(duì)課題的選擇狀況,學(xué)生的選題情況進(jìn)行監(jiān)測(cè)和管理(可針對(duì)專(zhuān)業(yè)),并能實(shí)現(xiàn)對(duì)監(jiān)測(cè)結(jié)果進(jìn)行導(dǎo)出。圖5-11 選題管理7 .數(shù)據(jù)庫(kù)維護(hù)用來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)進(jìn)行備份及還原操作,保障系統(tǒng)的安全性。圖5-12 數(shù)據(jù)庫(kù)維護(hù)5.2 教師模塊的實(shí)現(xiàn)1 .課題申報(bào)用來(lái)實(shí)現(xiàn)申報(bào)課題信息,并對(duì)自己申報(bào)的課題進(jìn)行管理和維護(hù)。圖5-13 課題申報(bào)圖5-14 課題管理維護(hù)2 .全院課題查看用來(lái)查看全院的課題申報(bào)情況并能瀏

27、覽課題詳細(xì)信息。圖5-15 全院課題3 .選題管理用來(lái)查看自己的被選課題和未選課題情況,對(duì)被選課題可以查看選課的學(xué)生情況,并能對(duì)學(xué)生進(jìn)行退選。圖5-16 全院課題圖5-17 學(xué)生選課信息4 .發(fā)布任務(wù)書(shū)用來(lái)給選擇了我的課題的學(xué)生發(fā)送相應(yīng)任務(wù)書(shū),并接收學(xué)生提交的任務(wù)書(shū)。圖5-18 發(fā)布任務(wù)書(shū)5 .網(wǎng)上答疑用來(lái)對(duì)選擇了我的課題的學(xué)生進(jìn)行網(wǎng)上答疑。圖5-19 網(wǎng)上答疑6 .本組學(xué)生信息用來(lái)查看所有選擇了我的課題的學(xué)生信息。圖5-20 本組學(xué)生信息7 .個(gè)人信息維護(hù)用來(lái)對(duì)個(gè)人信息及聯(lián)系方式進(jìn)行維護(hù)。圖5-21個(gè)人信息維護(hù)5.3 學(xué)生模塊的實(shí)現(xiàn)1 .課題選擇查看所有自己可以選擇的課題并選擇一個(gè)課題。圖5

28、-17課題選擇2 .我的課題顯示自己選擇的課題的基本信息,在時(shí)間允許范圍內(nèi)可以退定所選課題。圖5-18我的課題3 .提交開(kāi)題材料選擇要提交的開(kāi)題資料及接收教師并上傳開(kāi)題資料至教師端。圖5-19提交開(kāi)題材料4 .提交論文選擇要提交的正式論文及接收教師并上傳論文至教師端。圖5-20提交論文附 錄課題選擇頁(yè)面主要源代碼:public partial class Student_SubList : System.Web.UI.Page string sid; protected void Page_Load(object sender, EventArgs e) /頁(yè)面加載 sid = Request

29、.Cookies"id".Value.ToString(); if (!IsPostBack) Ddind(); private void Ddind() /數(shù)據(jù)綁定 Fannie.Student stu = new Fannie.Student(); DataSet ds1 = new DataSet(); DataTable dt=new DataTable(); dt = stu.GetProfession(sid).Tables0; ds1 = stu.GetSuitSubject(sid); if (ds1.Tables0.Rows.Count = 0) Labe

30、l1.Visible = true; else Label1.Visible = false; DataColumn dc = new DataColumn(); dc.ColumnName = "SubNo" ds1.Tables0.Columns.Add(dc); for (int i = 0; i < ds1.Tables0.Rows.Count; i+) ds1.Tables0.Rowsi"SubNo" = (i + 1).ToString(); GridView1.DataKeyNames = new string "Subje

31、ctID" ; GridView1.DataSource = ds1; GridView1.DataBind(); 我的課題頁(yè)面主要源代碼:public partial class Student_SubjectDetail : System.Web.UI.Page static public string studentid; public int subid; private SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings"connection".ToString(

32、); protected void Page_Load(object sender, EventArgs e) /頁(yè)面加載 if (Request.Cookies"id" != null) studentid = Request.Cookies"id".Value.ToString(); else Response.Write("<script> alert('請(qǐng)重新登錄!')</script>"); if (Request.QueryString"id" != null)

33、subid = Convert.ToInt32(Request.QueryString"id".ToString(); if (!IsPostBack) GetSubDetail(); private void GetSubDetail() /數(shù)據(jù)綁定 SubjectDetail1.DataKeyNames = new string "SubjectID" ; Fannie.Subjects getsub = new Fannie.Subjects(); SubjectDetail1.DataSource = getsub.GetOneSub(subid

34、); SubjectDetail1.DataBind(); protected void ChooseSubject_Click(object sender, EventArgs e) /選題按鈕事件 Fannie.Student stu = new Fannie.Student(); if (IsTime() if (IsChosen() if (IsMax() int count = stu.InsertChosen(studentid, subid); if (count > 0) Response.Write("<script> alert('選題成

35、功!');window.location.href='ChosenSub.aspx'</script>"); else Response.Write("<script> alert('選題失?。?#39;)</script>"); else Response.Write("<script> alert('此課題已被選滿(mǎn),請(qǐng)選其他課題');window.location.href='SubList.aspx'</script>&quo

36、t;); private bool IsTime() /判斷是否是選題時(shí)間 DateTime dtm = DateTime.Now; DataTable dt = new DataTable(); Fannie.Student stu = new Fannie.Student(); dt = stu.GetChooseTime().Tables0; DateTime begin = Convert.ToDateTime( dt.Rows0"ChooseBegin".ToString(); DateTime end = Convert.ToDateTime( dt.Rows0

37、"ChooseEnd".ToString(); if (dtm < begin | dtm > end) Response.Write("<script> alert('還未到選題時(shí)間,不能選題!');history.go(-1)</script>"); return false; else return true; private bool IsMax() /判斷當(dāng)前課題是否超過(guò)最大可選人數(shù) int max; int count; DataSet ds = new DataSet(); Fannie.

38、Student stu = new Fannie.Student(); ds = stu.GetMaxandNowPeople(subid); max=Convert.ToInt32(ds.Tables0.Rows00.ToString(); count=Convert.ToInt32(ds.Tables0.Rows01.ToString(); if (max > count) return true; else return false; private bool IsChosen() /判斷當(dāng)前用戶(hù)是否選擇了課題 Fannie.Student stu = new Fannie.Stu

39、dent(); DataTable dt = stu.GetChosenSub(studentid).Tables0; if (dt.Rows.Count != 0) Response.Write("<script> alert('您已經(jīng)選擇了課題,請(qǐng)不要重復(fù)選擇!')</script>"); return false; else return true; 致 謝本系統(tǒng)是在我系張國(guó)軍老師的悉心指導(dǎo)及系統(tǒng)開(kāi)發(fā)小組成員密切協(xié)作下完成的。首先,要感謝張國(guó)軍副教授在我本門(mén)課程期間對(duì)我的幫助和指點(diǎn),張老師淵博的專(zhuān)業(yè)知識(shí),嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度使我受益匪

40、淺,沒(méi)有張老師嚴(yán)格的要求,耐心細(xì)致的指導(dǎo),本系統(tǒng)是不會(huì)如此順利完成的。其次,要感謝開(kāi)發(fā)小組的成員們對(duì)我的幫助和支持,讓我從一個(gè)沒(méi)有一點(diǎn)經(jīng)驗(yàn)的系統(tǒng)開(kāi)發(fā)新手快速的掌握了系統(tǒng)開(kāi)發(fā)的知識(shí),從他們身上我學(xué)到了很多的東西。教務(wù)處繆賢浩老師參與了需求分析和后期測(cè)試,并給了我們一些其它方面的幫助和指點(diǎn),范夢(mèng)同學(xué)和祝存曾同學(xué)分別完成了管理員模塊和教師模塊的開(kāi)發(fā),還有很多參與了系統(tǒng)測(cè)試的同學(xué),在這里對(duì)他們表示我誠(chéng)摯的謝意!參考文獻(xiàn)1 教育部辦公廳關(guān)于加強(qiáng)普通高等學(xué)校畢業(yè)設(shè)計(jì)(論文)工作的通知.教高廳2021 14 號(hào).2 樊崇藝,羅四維.畢業(yè)設(shè)計(jì)(論文)在線(xiàn)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)J.教育技術(shù)導(dǎo)刊,2021 ,(4)

41、:36-37.3 李光亞.基于校園網(wǎng)的論文管理系統(tǒng)研究與實(shí)現(xiàn)D.上海:華東師范大學(xué),2021 .4 鄭州輕工業(yè)學(xué)院畢業(yè)論文管理系統(tǒng)Z/OL. .5 劉群艷,吳興春.B/S 模式的學(xué)位論文提交系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)J.西安文理學(xué)院學(xué)報(bào), 2021 ,10(4):87-89.6 趙連朋.高校學(xué)位論文數(shù)字化管理系統(tǒng)的設(shè)計(jì)開(kāi)發(fā)J.黑龍江工程學(xué)院學(xué)報(bào), 2021 ,19(1):37-40.7 陳翔.基于 Web 的論文管理系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)J.杭州師范學(xué)院學(xué)報(bào),2021 ,6(6):455-460.8 郭巍.基于網(wǎng)絡(luò)的高校畢業(yè)論文工作全程管理信息系統(tǒng)J.重慶工商大學(xué)學(xué)報(bào), 2021 ,22(6):587-591.9 汪洪波.NET 框架下基于 Web 服務(wù)架構(gòu)系統(tǒng)研究與應(yīng)用D.成都:電子科技大學(xué),2021 .10 John Kauffman,Brian Matsik. ASP.NET 數(shù)據(jù)庫(kù)入門(mén)經(jīng)典C#編程篇(張哲峰,黃翔宇,譯)M.北京:清華大學(xué)出版社,2021 .11 FJZhou. 對(duì).NET 平臺(tái)總體的理解Z/OL.12 Reynolds. .NET Enterprise Development In C#:From Design To DeploymentM.WroxPress,2021 .13 鄒勇.基于.NET 的 WEB 在線(xiàn)考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)D.成都:電子

溫馨提示

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