摘 要: 提出了構建本科畢業設計網絡化管理系統的解決方案,并提出了應對并發訪問、提升系統安全性的方法。采用ASP.Net技術在SQL Server上實現了一個本科畢業設計管理系統。系統分為管理員、教師和學生三個主要模塊,每類用戶擁有不同的權限和功能。實驗結果表明系統可規范畢業設計選題和管理過程,還可綜合提升教師、學生、管理者的工作效率。
關鍵詞: 畢業設計管理系統;信息管理系統;ASP.Net;SQL Server
隨著校園信息化建設的推進,各項工作的網絡化將逐漸取代傳統辦公方式。畢業設計作為本科階段的關鍵環節,非常有必要對其施行網絡化管理。當前國內已有很多高校建立了畢業設計管理系統[1-4],提升了管理的效率,方便了教師和學生。然而,部分畢業設計管理系統在設計時存在一些問題,主要表現在:(1)功能存在缺陷,部分系統只關注選題管理,對畢業設計過程沒有管理措施[5];(2)采用的技術較為落后,有很多系統采用ASP技術結合Access數據庫設計而成,在執行效率、可維護性、安全性等方面已不能滿足新的要求[5-6];(3)缺少針對多用戶并發訪問和系統安全問題的解決方案[7-8]。因此,采用新技術和更完善的解決方案來設計畢業管理系統顯得很有必要。
1 系統設計
本系統涵蓋了畢業設計工作的全過程,實現了課題申報、雙向選擇、畢業設計相關文檔提交與管理等功能。下面介紹系統的需求分析、功能劃分及數據庫設計方法。
1.1 系統需求分析
學生進入系統后可查看畢業設計相關公告和導師指導意見,向導師發送咨詢信息;修改個人密碼,完善個人信息;查看課題,選擇課題,查看選題情況,提交畢業設計相關文檔,完成操作后退出系統。教師進入系統后也可查看畢業設計相關公告,發送指導意見并答復學生咨詢;修改個人密碼,完善個人信息;同時對課題進行添加、修改、刪除等操作,查看選題情況,調整選題情況,確定選題;審核管理學生所提交畢業設計相關文檔,完成操作后退出系統。管理者進入系統后可以進行畢業設計相關公告管理(包括對公告的添加、修改與刪除)、用戶個人信息管理(包括對學生、老師用戶個人信息的添加、修改與刪除)、課題信息管理(包括對課題的審核、修改與刪除;查看選題的總體情況,調整選題情況)、畢業設計相關文檔管理和系統關鍵參數設置管理等操作,結束后退出系統。
1.2 系統功能結構
本系統可分為管理員、教師、學生三大模塊,且模塊之間互相關聯:管理員的公告信息可傳遞給所有教師和學生;教師申報的課題需管理員審核,且課題的類型、針對的專業等參數均由管理員設置;教師和學生的個人信息既可由本人提交也可由管理員統一管理;教師可選擇學生,反過來,學生也可選擇教師。
1.3 數據庫設計
本系統一共需要15張數據表,分別是:教師信息表(Teacher)、學生信息表(Student)、管理員信息表(Admin)、等待審核通過的課題信息表(WaitForPass)、已經通過審核的課題信息表(Subject)、課題選擇狀態表(SelectState)、課題類型表(Type,算法設計或系統開發等)、畢業設計相關文檔表(GraduateFile)、專業信息表(Speciality,記錄各種本科專業的信息)、用戶角色信息表(Role,記錄用戶類型信息)、課題所用編程語言表(Language,針對信息專業的課題)、系別信息表(Department)、班級信息表(Class)、畢業設計公告信息表(Affiche)及教師附件信息表(Accessory)。數據庫E-R關系如圖1所示。
2 系統實現
本系統采用C#作為開發語言,SQL Server作為后臺數據庫,I2S作為Web服務器,采用B/S方案構建服務器體系結構。系統可分為管理員、教師、學生三大模塊。下面介紹實現系統的若干關鍵技術。
2.1 抽取公共功能和全局變量
公共功能模塊主要用于處理數據庫操作,包括建立數據庫連接,執行數據庫的查詢、增、刪、改操作,還包括數據庫的批量處理等。在實現時,建立了公共功能類,使用標準SQL語句處理數據庫操作。此外,還將系統中各模塊的公共變量抽取出來構成一個類。
2.2 用戶管理功能
本系統中所有用戶的信息都由管理員添加。本模塊實現管理員、教師、學生的信息添加、搜索、修改及刪除功能。其功能如下:
(1)添加用戶信息:管理員添加用戶相關消息;
(2)修改消息:管理員對用戶信息進行修改;
(3)刪除消息:管理員對用戶信息進行刪除。
2.3 課題申報與管理功能
只有審核通過的課題,學生才可選擇。其功能如下:
(1)添加課題:教師申報新課題;
(2)修改課題:教師對課題信息進行修改;
(3)刪除消息:教師對課題信息進行刪除;
(4)審核狀態查詢:教師查看課題是否被管理員審核通過。
2.4 畢業設計相關文檔提交與管理功能
本模塊實現畢業設計相關文檔(包括開題報告、文獻綜述、外文翻譯和畢業論文)的提交與管理功能。學生按進度安排及時提交文檔,并等待指導老師審核,若審核未獲通過需要進一步修改后再次提交。教師或管理員對所帶學生上傳的文檔進行審核和管理。文檔通過審核表明學生的相關工作獲得認可,內容不達標的文檔將審核失敗。
對于學生,其功能如下:
(1)文檔提交:提交文檔給指導老師;
(2)文檔審核狀態顯示。
對于教師或管理員,其功能如下:
(1)文檔審核:審核文檔;
(2)修改文檔:對文檔信息進行修改;
(3)刪除文檔:對文檔信息進行刪除。
2.5 系統實現中的兩個關鍵問題
2.5.1 并發訪問問題
大量的訪問會導致記錄鎖死,當網站面對成千上萬的用戶訪問以及高并發請求時,解決這些問題的方法集中在幾個環節:使用高性能的服務器、高性能的數據庫和高效率的編程語言[4-6]。但是上述解決方法在某些程度上需要更大的投入,而且這樣的解決方法會遇到瓶頸問題且可擴展性差。
在本系統開發過程中,主要使用了HTML靜態化以及附件與服務器分離兩種方案來解決并發訪問問題。
(1)HTML靜態化:在系統中,有些更新內容小、使用率高的數據查詢可用靜態化的HTML來實現。對于某些大量被前臺程序調用但是更新小的信息,可以在后臺更新時使其靜態化,從而減少數據庫的訪問請求。
(2)附件服務器分離
對于I2S的Web服務器來說,附件是非常消耗資源的。所以將附件和頁面進行分離,甚至采用獨立的附件服務器,在頁面訪問時可減少服務器的壓力、防止因附件問題導致系統崩潰。
2.5.2 安全性問題
本系統在處理網站安全性問題方面采用了以下兩個方法:
(1)采用隨機登錄驗證碼機制防止黑客利用軟件自動登錄測試。
(2)使用32位MD5加密保護用戶密碼:MD5是一種散列函數被廣泛用于計算機安全領域,主要實現對消息完整性的保護[7-8]。用戶密碼是不可見的,即便是管理員也看不到。管理員可以為用戶設定新密碼,但無法得知老密碼,主要是因為老密碼是用MD5加密過的,從而可以保證用戶密碼的安全性。
論文介紹了基于ASP.Net技術和SQL Server的本科畢業設計管理系統的構建方案,還介紹了應對并發訪問問題和提升系統安全性的方法。采用ASP.Net技術相比ASP技術提升了系統的運行效率,并因界面和代碼分離使得系統維護更加簡單。本系統將有助于綜合提高教師、學生、教務人員的工作效率,還有助于提高本科畢業設計的管理水平,甚至提高畢業設計質量。所提出的系統構建方法對于設計其他基于Web的信息系統具有良好的借鑒作用。
參考文獻
[1] 戴芊.畢業設計管理信息系統中存在的缺陷及解決路徑[J].南京航空航天大學學報(社會科學版),2009,11(1):98-100.
[2] 郭秀娟,王春光.基于B/S模式的畢業設計管理系統開發與實現[J].計算機技術與發展,2010,20(3):240-349.
[3] 鄧志宏,榮秋生,張智,等.基于Web的畢業論文管理系統的設計[J].福建電腦,2010(6):9-14.
[4] 王建林,汪雪琴,王雅英,等.本科畢業設計管理信息系統[J].電氣電子教學學報,2008,30(6):103-104.
[5] 湯穎.畢業設計立項與選題管理及其支持系統[J].合肥工業大學學報,2006,29(5):613-616.
[6] 覃發兵,葛玉輝.基于Java Web組件技術的畢業設計管理系統[J].計算機應用,2010,30(6):322-323.
[7] YI X S,WANG Y, LIU J H,et al.Enterprise information system architecture based on Web 2.0[J].Wuhan University Journal of Natural Sciences,2006,11(5):1398-1402.
[8] LI Z B,LIU J X,ZHAO Y J,et al.Design and implementation of a total quality management system for Graduation Project[C].Proc.of ICEIT 2010,Chongqing,China,2010,3:499-503.