朱宏濤
(新疆應用職業技術學院 新疆 奎屯 833200)
目前,傳統手工實驗管理方式已不能很好滿足當下的需要,很多高職院校開始嘗試實驗開放模式。在這種背景下,本文使用JSP、MVC及B/S模式設計的開放型實驗管理系統采用模塊化設計,將系統劃分成系統管理、門禁管理、教師管理、實驗管理和儀器管理等5大模塊,是一個面向全體師生的開放共享平臺,大大提高了大型實驗設備利用率與辦學水平。
目前,實驗室管理主要存在實驗室不能共享、晚上值班難度大、教學資源無法共享、實驗儀器設備易損壞等問題。就以上問題進行深入分析,本文設計的開放型實驗管理系統應具備:學生可網上在線預約實驗室,可實時查看實驗室或實驗儀器設備使用情況;監控、門禁考勤系統實時記錄學生在實驗室的活動情況及出入實驗室的時間;文件、文檔、視頻等資源上傳和下載功能;在線提問與答疑等功能[1]。由于開放型實驗管理系統需要聯合門禁系統,并要與門禁系統進行實時數據交互,因此,系統需要具有良好的大數據并發處理能力及一定的安全性與可靠性。
MVC開發模式即模型-視圖-控制器模式,將數據層和表示層很好地分離,可給相同的數據提供多樣化的視圖。MVC模式將開放型實驗管理系統劃分為Model(模型)、View(視圖)及Controller(控制器)這3部分。Model類位于數據層,主要實現管理系統的數據邏輯和業務邏輯;View類位于表現層,向用戶展示帶有數據的頁面;Controller類位于服務層,主要用于流程控制。MVC較好地實現了數據邏輯、業務邏輯、控制邏輯及顯示邏輯的相互獨立,將數據表現和數據訪問分離開來,從而實現面向實際應用設計顯示邏輯與控制邏輯,面向系統業務設計數據邏輯及業務邏輯[2]。
JSP是一種標準技術,使創建動態Web頁面更加便利、簡潔,在Web服務器上解析通過表單傳遞的數據,使用適當的邏輯轉換為標準的HTML頁面,而后用戶在客戶端看到的就是一個帶相應數據的標準HTML頁面[3]。基于JSP的MVC體系結構聯合使用Servlet容器和JSP技術來提供動態內容服務,綜合利用了這2項技術的優勢,利用JSP展現表示層的內容,使用Servlet進行深層次的任務處理。其中,Servlet作為控制器,用于處理用戶請求,創建JSP所需對象,根據用戶請求將帶有相應數據的JSP頁面響應給用戶[4]。這種設計方式將內容和表達分離,讓角色定義、網頁設計及開發人員的分工等都更加明確清晰,JSP的MVC體系結構如圖1所示。

圖1 JSP的MVC體系結構
開放型實驗管理系統依照模塊化進行設計,主要有管理員、學生和老師3種角色,有系統管理、門禁管理、教師管理、實驗管理和儀器管理等5大模塊,實現了基礎數據、實驗預約、在線答疑、儀器設備預約、門禁管理、權限管理、發布公告等功能。開放型實驗管理系統的結構如圖2所示。
3.2.1 實驗管理
實驗管理模塊實現了實驗預約、實驗查詢、實驗資源下載、實驗室預約,以及在線提問等功能。教師可在線添加實驗相關的學習資源,如電子文檔、實驗操作流程視頻、相關資料等,這些資源可供學生下載或是在線查看瀏覽。其中,實驗預約是開放型實驗管理系統的核心功能,通過實驗預約功能,學生可以自主科學地安排實驗時間,調動了學生自主性和學習積極性,同時提高了實驗儀器設備的利用率。在實驗預約時,開放型實驗管理系統會自動完成學生上課時間沖突、實驗室占用沖突等沖突檢查,當實驗預約不存在沖突,學生可進行預約并在約定時間內到達相應實驗室完成實驗即可。
3.2.2 儀器管理
儀器管理主要有儀器設備預約、儀器維修管理、貴重儀器設備管理,以及儀器設備使用記錄等功能。學生預約實驗絕大多數情況下,使用預約功能來預約實驗所用儀器設備,這一功能實現儀器設備的科學管理,最大限度地滿足學生的需要,同時提高了實驗儀器的使用效率。
3.2.3 門禁管理
學生提前網上預約好實驗項目及實驗時間后,在約定時間可憑借本人校園卡進入相應實驗室,實驗完成后可刷校園卡通過門禁離開。門禁管理模塊實時顯示所有門禁IP、地址等詳細信息,并提供重啟和遠程開啟、關閉的功能,門禁與開放型實驗管理系統一直保持連接并完成數據和通信交互。
3.2.4 系統管理
系統管理實現了公告發布、操作日志、用戶管理、權限管理,以及數據庫備份與還原等功能。另外,在系統管理模塊還可以對學生訪問實驗室的時間及人流量進行統計和分析,并以柱形圖等圖表進行呈現。同時通過對這些數據分析,可以進一步科學合理安排實驗室開放層次、開放對象及開放時間等。
3.2.5 用戶管理
用戶管理模塊包含學生、管理員及教師的管理,管理員擁有最高最多權限,部分權限是教師和管理員共有,開放實驗管理系統可通過用戶提供的賬號密碼來判識登錄人員的身份,并根據相應權限跳轉到對應界面。
3.2.6 考勤模塊
考勤模塊用來記錄考生參加實驗的具體情況,可查詢某一學生或全部學生某時間段的實驗預約和完成情況,考勤模塊聯合門禁系統記錄學生進入和離開實驗室的時間。
開放型實驗室管理系統使用MySQL作為數據庫服務器,MySQL數據庫是當下主流關系型數據庫管理系統之一,具有免費開源、速度快、體積小、成本低等優點,在中小型Web開發中應用廣泛[5]。數據庫設計影響著管理系統的性能,如果設計時考慮不夠全面或結構設計不合理,一方面會增加軟件編程工作難度,另一方面會增加后續管理系統的升級與維護的難度。為了使開放型實驗室管理系統更加契合使用者需求,本管理系統著重對核心表結構進行了設計,主要有實驗項目預約表、設備登記表、實驗報告表、學生信息管理表及通知公告表等表。同時,在數據表之間依照實際情況建立關聯性以實現數據庫設計的最小冗余。例如:學生信息管理表的主鍵stu_ID和實驗項目預約表的字段stu_ID具有一對一映射關系,因此將實驗項目預約表中的stu_ID設置為外鍵,由此通過多表聯查,根據輸入的stu_ID值或是學生名稱等可查詢到該同學預約了哪些實驗項目。其他的表也是根據這一原則進行了設計。
開放型實驗管理系統的開發環境為Win10 64位操作系統,使用MySQL 8.0作為數據庫,開發工具使用IDEA,使用Tomcat 9.0服務器。由于C/S模式具有“瘦服務器-胖客戶端”的弊端,為了避免這一問題,本實驗管理系統采用B/S結構,不需要分別編寫服務器端程序和客戶端程序,僅需要重點關注實現服務器端程序即可[6]。使用者不需要安裝相應的客戶端程序,在電腦上任一瀏覽器都可以訪問系統并在權限內進行操作。服務器端采用Java EE技術,這一技術面向對象,具有跨平臺、開源免費的特點,自帶GC(垃圾回收機制)從而很好地避免內存泄漏的問題。
4.2.1 表示層
表示層是開放實驗室管理系統向用戶提供的一個交互界面,界面設計是否簡潔、美觀直接影響用戶體驗。這一層幾乎沒有業務邏輯與流程控制,專注頁面展現、數據呈現,不能直接訪問數據,常使用CSS+DIV來實現頁面布局,通過Bootstrap前端框架和jQuery框架完成實驗預約、用戶登錄、資源上傳/下載等界面設計,主要負責接收前臺表單的數據,將數據傳遞給業務邏輯層,并將返回的邏輯數據組成標準HTML頁面呈現給用戶。
4.2.2 業務邏輯層
業務邏輯層作為開放實驗管理系統的核心組成部分,使用Spring框架處理業務邏輯方法和傳遞數據,這一框架使用接口與實現分離技術,具有良好的擴展性[7]。當學生需要預約實驗項目時,在實驗預約界面選擇合適的時間段,選擇要預約的實驗項目并點擊預約,預約完成后可在實驗預約情況列表查看預約詳細情況,并在預約時間到達實驗室完成實驗,實驗預約的完整業務流程如圖3所示。

圖3 實驗預約流程
4.2.3 數據訪問層
數據訪問層也是持久層,這一層的功能是將數據持久化到數據庫并根據實際要求對數據進行操作。持久層選用支持ORM模式的hibernate框架,在數據庫模型和對象模型之間建立對應關系,同時將對底層數據庫具體操作細節進行封裝,向業務邏輯層僅提供API調用接口[8]。數據訪問層不依賴于邏輯層,具有良好的獨立性,這有效降低了模塊之間的耦合性,使用了Java面向對象的思想,大大提高了開發效率。
4.2.4 系統的工作流程
以學生查詢某一實驗項目為例,簡要概述使用JSP的MVC開放實驗管理系統的工作機制。根據實驗項目查詢功能需求,已經設計好相應類并實現了實驗項目查詢功能,當學生在搜索框中填寫相應實驗項目編號來查詢該實驗項目的詳細內容時,開放實驗管理系統會進行如下步驟:首先,學生輸入實驗項目編號向Servlet發送查詢請求;再次,Servlet接收用戶請求,獲取地址欄中的請求參數,在Handlers列表中查找處理這類請求的Handler,找到后要求Handlers提供一個用于查詢實驗項目的QueryProjectHandler來處理用戶請求;接著,QueryProjectHandler根據傳遞過來的參數來進行相應業務邏輯處理,調用DataManager中的查詢函數對數據庫進行查詢操作,查詢完成后,將返回的數組數據封裝成ProjectDAO實例,這些對象實例經一定處理后再封裝到預先定義的QueryResultViewBean中并由Handler組裝和返回給Servlet;最后,Servlet將數據呈現在標準的HTML頁面上并返回給用戶。
4.3.1 開放實驗模塊
開放實驗模塊是實驗管理中的核心功能,也是開放型實驗管理系統的基礎功能。這一模塊服務對象主要是學生,具有個人課程表、開放實驗查詢、開放實驗預約、實驗資料下載及實驗報告提交等功能。開放實驗體現在實驗項目的開放,其主要步驟如下:
步驟1 老師發布開放的實驗項目并對開放中的實驗項目進行維護,同時向系統上傳開放的實驗項目大綱及實驗相關學習資料;
步驟2 教務處或管理員向各實驗室和全體師生發布實驗任務公告,各實驗室開放實驗預約,學生按照自己實際情況合理安排實驗時間,在規定時間范圍內完成實驗;
步驟3 老師或相關管理人員審核實驗預約,若沒有問題則同意實驗預約并公布預約結果;
步驟4 學生依預約完成試驗后,完成相關實驗報告并上傳提交,在老師查看完成后可以查詢實驗成績。
4.3.2 儀器設備模塊
儀器設備模塊是開放型實驗管理系統的另一重要模塊,包含大型貴重儀器設備管理與儀器設備管理,儀器設備管理的內容有入庫、領用、臺賬、領用、報損及維修等,對于貴重儀器設備多增加了儀器設備信息共享和運行記錄2項,上述管理均通過登記、調整申請、審核及結果查詢等進行管理。
綜上所述,本文設計的開放性實驗管理系統利用多種先進技術實現了高職院校實驗教學信息化管理,有效解決了資源利用低、實驗管理與維護成本較高及實驗室管理封閉等問題。另外,使用開放型實驗管理系統一方面實現了學生靈活使用實驗室和實驗儀器設備,另一方面降低了教師的管理強度,提高了實驗室信息化水平。開放型實驗管理系統在高職院校大范圍投入使用,加快了我國高職院校信息化建設步伐,優化了實驗設備儀器的資源配置,提高了資源使用效益與實驗教學質量。