胡江婧 曹雙雙
摘? 要:隨著教育信息化的普及,傳統(tǒng)的人工課程設(shè)計管理模式已經(jīng)很難適應(yīng)現(xiàn)代化需求,針對此問題,設(shè)計實現(xiàn)了基于JAVA技術(shù)的課程設(shè)計管理系統(tǒng),該系統(tǒng)采用MVC設(shè)計模式以及MySQL數(shù)據(jù)庫技術(shù)進(jìn)行開發(fā),實現(xiàn)師生暢通式交流、在線實行課題雙選、過程數(shù)據(jù)實時處理、用戶行為計算分析等功能,達(dá)到最大程度的資源共享。測試結(jié)果表明,本系統(tǒng)具有一定的穩(wěn)定性,保證了數(shù)據(jù)的正確性及實時性,有效降低教師工作過程中產(chǎn)生的失誤,促進(jìn)師生互動交流,保障了課程設(shè)計過程管理規(guī)范性。
關(guān)鍵詞:課程設(shè)計;管理系統(tǒng);JAVA
中圖分類號:TP311? ? ? ? ?文獻(xiàn)標(biāo)志碼:A? ? 文章編號:2095-2945(2019)16-0080-03
Abstract: With the popularization of educational informatization, the traditional management mode of manual curriculum design has been difficult to meet the needs of modernization. In order to solve this problem, a curriculum design management system based on JAVA technology is designed and implemented. The system is developed using MVC design pattern and MySQL database technology to realize the functions of smooth communication between teachers and students, on-line subject selection, real-time processing of process data, calculation and analysis of user behavior, and so on, in order to achieve the maximum degree of resource sharing. The test results show that the system has a certain stability, ensures the correctness and real-time data, effectively reduces the mistakes in the process of teachers' work, promotes the interaction between teachers and students, and ensures the standardization of curriculum design process management.
Keywords: curriculum design; management system; JAVA
引言
課程設(shè)計是學(xué)生在教師指導(dǎo)下綜合運(yùn)用自己所學(xué)知識解決問題的一次實踐過程,也是檢驗學(xué)生綜合素質(zhì)以及教師教學(xué)質(zhì)量的重要環(huán)節(jié)[1]。針對傳統(tǒng)人工管理模式而言,其管理效率較低,也存在工作過程中數(shù)據(jù)的泄露及正確率損失。各大高校在教學(xué)管理方面目前已經(jīng)普遍實現(xiàn)的是學(xué)生學(xué)籍等方面管理,對課程設(shè)計管理這一方面很少涉及或不夠全面[2]。同時,學(xué)生在完成作品過程中不能與老師及時溝通,導(dǎo)致指導(dǎo)效果欠缺。而隨著當(dāng)今遠(yuǎn)程教育的發(fā)展和豐富網(wǎng)絡(luò)資源共享對其實現(xiàn)網(wǎng)絡(luò)化是必要的。因此,如何采用先進(jìn)的技術(shù)和方法來提高課程設(shè)計的質(zhì)量尤為重要。
提高課程設(shè)計質(zhì)量直接有效的方式就是實行課程設(shè)計過程的管理,并且對用戶使用系統(tǒng)過程行為作出詳細(xì)數(shù)據(jù)分析,總結(jié)工作改進(jìn)意見。通過本系統(tǒng)能夠有效提升課程設(shè)計的管理規(guī)范,最大限度地提高教學(xué)過程中課程設(shè)計的信息化建設(shè)。
1 功能需求分析
通過調(diào)研,明確本系統(tǒng)的總體任務(wù)是進(jìn)行課程設(shè)計工作的有效管理。根據(jù)課程設(shè)計工作流程,系統(tǒng)設(shè)計為三級化登錄,系統(tǒng)角色分別為學(xué)生,教師,管理員[3]。各類角色擁有各自不同的權(quán)限,登入系統(tǒng)后通過瀏覽器與服務(wù)器的交互工作完成相關(guān)信息處理。
學(xué)生登入系統(tǒng)后可以進(jìn)行查看課程設(shè)計相關(guān)通知和課題信息,瀏覽教師信息,在線選擇課題和查看最終雙選結(jié)果;查看教師提供的資源,上傳作品,能夠在線留言及教學(xué)評價,保存數(shù)據(jù)后并退出系統(tǒng)。
教師端進(jìn)入系統(tǒng)后也能夠查看課程設(shè)計相關(guān)通知,查看學(xué)生信息;確定雙選結(jié)果,課程設(shè)計課題內(nèi)容管理(包括課題內(nèi)容上傳及增刪改,查看學(xué)生作品,上傳參考資料等),對學(xué)生問題進(jìn)行答疑,查看教學(xué)評價。
系統(tǒng)管理員擁有系統(tǒng)最大權(quán)限,實現(xiàn)用戶信息統(tǒng)一管理(包括師生信息瀏覽,添加,修改刪除,實行管理員信息修改刪除等),管理課程設(shè)計通知消息(上傳公告,更改刪除公告內(nèi)容),雙選時間管理、信息匯總統(tǒng)計,管理學(xué)生選題過程信息及成績輸出,保存數(shù)據(jù)后退出系統(tǒng)。
2 系統(tǒng)設(shè)計
通過上文需求調(diào)查與分析,結(jié)合課程設(shè)計流程,本系統(tǒng)功能主要體現(xiàn)在以下幾個方面:
2.1 課程設(shè)計工作實行分級化管理
不同的等級擁有不同的權(quán)限,管理員實施對系統(tǒng)的管理,而師生不需要進(jìn)行注冊操作,登錄時使用學(xué)校錄入數(shù)據(jù)庫的賬號以及密碼即可。
2.2 課程設(shè)計過程實行智能化管理
教師和學(xué)生能夠按照工作要求,按時完成雙選工作,同時管理員也可對過程信息進(jìn)行管理,使課程設(shè)計工作規(guī)范化,公開化,公平化。
2.3 設(shè)計過程實現(xiàn)師生溝通暢通性[4]
當(dāng)師生不能及時見面時,防止問題得不到解決,學(xué)生可上線進(jìn)行留言詢問,教師端可根據(jù)學(xué)生需求進(jìn)行答疑,若存在多條相同批次問題,教師能通過系統(tǒng)在線聊天室對學(xué)生進(jìn)行在線集中答疑。
2.4 課程設(shè)計數(shù)據(jù)實現(xiàn)可視化
系統(tǒng)可根據(jù)學(xué)生選題行為進(jìn)行數(shù)據(jù)分析,包括選題趨勢,頻率等。通過一定的科學(xué)分析,了解學(xué)生的具體學(xué)習(xí)情況,進(jìn)行工作的改進(jìn)。
2.5 系統(tǒng)具有一定的安全性以及可擴(kuò)展性
本系統(tǒng)僅供本校人員使用,完全禁止無關(guān)人員訪問服務(wù)器,同時系統(tǒng)功能擴(kuò)充時不影響當(dāng)前功能結(jié)構(gòu)[5]。
根據(jù)設(shè)計要求,保證規(guī)范且高效地完成課程設(shè)計工作,系統(tǒng)模塊詳細(xì)功能如圖1。
3 功能實現(xiàn)
3.1 師生雙向選題模塊
這是系統(tǒng)關(guān)鍵的部分,學(xué)生選擇的結(jié)果直接影響到最后其課程設(shè)計作品完成以及最終成績的高低,合適的選題可以充分發(fā)揮出學(xué)生的學(xué)習(xí)能力,激發(fā)學(xué)生去主動探索新知識,同時也促進(jìn)了教師課題質(zhì)量提高及自身指導(dǎo)水平。
待選課通知下發(fā)后,學(xué)生根在正確的時間點進(jìn)入系統(tǒng)進(jìn)行選擇,根據(jù)自己實際情況選擇自己心儀的課題及教師,每個學(xué)生擁有兩種選擇,分別為第一志愿及第二志愿[7]。待初選題結(jié)束后,教師端上線可查看選題結(jié)果進(jìn)行選題的確認(rèn),每名教師優(yōu)先選擇第一志愿所報學(xué)生,且只有當(dāng)教師小組名額大于第一志愿所報學(xué)生數(shù)目時教師端才能順延選擇第二志愿學(xué)生,而對于選課過程余下未選到的學(xué)生,再統(tǒng)一集中進(jìn)行第二次選課,對于終選結(jié)束后依舊未選到的同學(xué),管理員采取隨機(jī)平均分配的方式以確保每個同學(xué)都完成選題工作。
學(xué)生觸發(fā)選題動作后,頁面通過二級聯(lián)動形式綁定數(shù)據(jù),篩選后返回出所選的教師姓名tname,課題名稱cname,志愿類別wishtype等基本信息存入學(xué)生選課表單CHOOSE_COURSE中,系統(tǒng)通過動態(tài)取得DAO層所查詢到list數(shù)據(jù)得到學(xué)生所選課題詳細(xì)信息,按照第一志愿wishtype1及第二志愿wishtype2做出分類別呈現(xiàn),教師端上線能夠查看學(xué)生對其的選擇情況,根據(jù)組內(nèi)人數(shù)對學(xué)生進(jìn)行選擇,若wishtype1_num < Tno.cgroup_num,則導(dǎo)師需在所報第二志愿人數(shù)中選擇剩余學(xué)生完善組員,對于第二輪選題后能未完成選題的同學(xué),系統(tǒng)采取平均分配的思想完成整個分配流程,找出未滿員人數(shù)最大max_notfull的導(dǎo)師組,其他導(dǎo)師組以該組未滿員人數(shù)為標(biāo)桿,算出每組可容納的人數(shù),所有未滿員組可容納人數(shù)和為sum1,當(dāng)sum1等于未選學(xué)生人數(shù)時,未滿員組別接收待選學(xué)生,完成整個雙選過程。
3.2 在線留言模塊
此模塊為師生互動模塊,合適且及時的師生交流可以更好解決學(xué)生設(shè)計過程中所遇難題,促進(jìn)學(xué)生能力提升。當(dāng)學(xué)生遇到難解決情況時,可以登入系統(tǒng)后在線向相關(guān)指導(dǎo)教師留言,解決自己不懂的問題,教師端登錄后可以查看學(xué)生所問的問題,并在線進(jìn)行回復(fù)。當(dāng)學(xué)生點擊留言按鈕后,觸發(fā)留言action:addliuyan通過Servlet配置文件,通過post方法得到表單中內(nèi)容信息以及留言學(xué)生id,通過DAO層添加(insert)方法將留言內(nèi)容以及留言學(xué)生id插入留言信息表中,教師端進(jìn)行回復(fù)留言時,點擊回復(fù)觸發(fā)action后,系統(tǒng)得到表單內(nèi)回復(fù)內(nèi)容,被回復(fù)人id以及被回復(fù)留言內(nèi)容將其存入回復(fù)信息表。
3.3 聊天室模塊
考慮到學(xué)生所提問題可能存在重復(fù)相似性,以及教師臨時集中對學(xué)生進(jìn)行答疑等情況,為了提高教師工作效率,保障師生交流體系的暢通,構(gòu)建聊天室模塊,優(yōu)化教學(xué)工作。
當(dāng)用戶發(fā)送消息時,客戶端將用戶信息封裝后向服務(wù)器端發(fā)送連接請求,建立一個Socket對象與服務(wù)器端進(jìn)行連接,連接成功后便可成功發(fā)送接收信息[8]。服務(wù)器端采用多線程形式滿足多個客戶端發(fā)送消息且處理信息,提高服務(wù)器工作效率及使用率,建立Server Socket類滿足實時數(shù)據(jù)交換,在端口處監(jiān)聽客戶端請求[9]。
3.4 教學(xué)評價模塊
教學(xué)評價是整個教學(xué)流程中檢驗教學(xué)質(zhì)量重要的環(huán)節(jié)之一,以學(xué)生為主體,公正對教師教學(xué)情況進(jìn)行客觀評價,進(jìn)一步提高學(xué)校教學(xué)質(zhì)量管理水平。
學(xué)生評教時根據(jù)評價等級-優(yōu)秀,良好,一般,及格,不及格五個等級對教師指導(dǎo)過程給予評價,每一類等級對應(yīng)分?jǐn)?shù)為30,25,20,15,10。當(dāng)選擇checkbox中下拉列表某一等級時,request對象通過getParameter()得到post表單中等級內(nèi)容使其存入相應(yīng)數(shù)據(jù)庫從而對應(yīng)屬性值增加1,教師得到反饋表中Assess_num也對應(yīng)增加1,系統(tǒng)將得到的屬性值后臺進(jìn)行平均計算,反饋給各個老師。
3.5 數(shù)據(jù)導(dǎo)入/導(dǎo)出模塊
為了減輕管理員人工錄入學(xué)生教師信息的工作量,運(yùn)用Java的反射和注解機(jī)制能夠有效實現(xiàn)數(shù)據(jù)庫與Excel文件的數(shù)據(jù)交互,保證了數(shù)據(jù)的正確性以及完整性,使用注解時自定義Excel基本信息,如字段名,字段標(biāo)題,對齊方式等,再通過在Model層中屬性對應(yīng)getter方法添加這些注釋,便能將其標(biāo)記為Excel相關(guān)字段,未被注釋的字段則不受影響,同時使用反射的方式能獲取到類中方法屬性。利用反射與注解機(jī)制相結(jié)合,在實體類中,通過反射機(jī)制再基于注解定義的相關(guān)字段,創(chuàng)建相應(yīng)Excel。
導(dǎo)入Excel文件意味著將已經(jīng)生成的Excel模板存入系統(tǒng)數(shù)據(jù)庫中,此過程中需定義接口方法接收文件并對文件進(jìn)行解析,在Excel文件中,每一行都對應(yīng)于每一個實體對象,解析后得到存放多個對象的List,在解析過程中,首先檢驗文件格式以保證文件有效性,再循環(huán)每一行數(shù)據(jù),將其賦值給對象,存入數(shù)據(jù)庫中。導(dǎo)出過程中引用反射機(jī)制,獲得實體類中屬性方法,再通過@Excel注解將JavaBean中字段找出,最后通過HSSFWorkbook對象將值設(shè)置到單元格中,實現(xiàn)數(shù)據(jù)的導(dǎo)出。
3.6 數(shù)據(jù)分析模塊
系統(tǒng)通過對用戶行為進(jìn)行分析,將日志文件做出總結(jié)計算,生成分析報告,闡明用戶行為趨勢并給出相關(guān)建議,促進(jìn)系統(tǒng)性能的優(yōu)化,同時也反饋給教師學(xué)生在課程設(shè)計工作過程中的表現(xiàn),使其更深入了解學(xué)生學(xué)習(xí)掌握程度,提升工作能力。
為了實現(xiàn)數(shù)據(jù)的快速精準(zhǔn)計算以及減少資源損耗,系統(tǒng)采用Hadoop存儲以及Spark技術(shù)結(jié)合進(jìn)行數(shù)據(jù)構(gòu)建,其中數(shù)據(jù)源層中包括用戶在使用本系統(tǒng)時產(chǎn)生的實時數(shù)據(jù)及數(shù)據(jù)庫中等脫機(jī)數(shù)據(jù),在抽取數(shù)據(jù)源內(nèi)數(shù)據(jù)時,根據(jù)采集的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析,MySQL數(shù)據(jù)庫內(nèi)靜態(tài)數(shù)據(jù)通過Sqoop數(shù)據(jù)轉(zhuǎn)換工具進(jìn)行導(dǎo)入,而對于在線產(chǎn)生的Log日志文件采用Flume文件收集工具進(jìn)行采集,采集后的數(shù)據(jù)通過接口連接存儲在HDFS分布式系統(tǒng)中。其中NameNode組件查詢元數(shù)據(jù)返回一定數(shù)量DataNode節(jié)點,上傳后的數(shù)據(jù)以block塊形式儲存在HDFS系統(tǒng)內(nèi)[10]。數(shù)據(jù)計算層中Spark計算框架實行讀取HDFS內(nèi)數(shù)據(jù)內(nèi)容構(gòu)建出RDD,資源管理器分配出Executor,并啟動進(jìn)程。DAGScheduler對根據(jù)RDD內(nèi)部依賴關(guān)系形成的DAG圖進(jìn)行解析,同時TaskScheduler進(jìn)行分配任務(wù),最后Task把Executor計算的結(jié)果反饋給Task調(diào)度器再行反饋給DAG調(diào)度器,系統(tǒng)通過調(diào)用MLib庫中分類、回歸等算法實現(xiàn)更多數(shù)據(jù)分析結(jié)果。最后系統(tǒng)調(diào)用echarts技術(shù)將結(jié)果分析進(jìn)行可視化轉(zhuǎn)化,管理員查看直觀性圖表分析出學(xué)生的學(xué)習(xí)效果及教師教學(xué)狀態(tài),將分析報告反饋給老師,從而對課程設(shè)計工作實行監(jiān)督改進(jìn)。
4 系統(tǒng)測試
為了確保發(fā)布前系統(tǒng)質(zhì)量,應(yīng)對系統(tǒng)進(jìn)行必要的測試環(huán)節(jié),本系統(tǒng)采用綜合黑盒測試和白盒測試兩種方式完成測試。以本系統(tǒng)雙選結(jié)構(gòu)模塊為例,從用戶的角度出發(fā),參照雙選模塊中程序流程、數(shù)據(jù)聯(lián)系及參數(shù)闡明等,采用黑盒模型中等價類劃分法、邊界值分析法結(jié)合白盒中基本路徑測試對該模塊中程序結(jié)構(gòu)進(jìn)行計算分析。
該測試結(jié)果一切順利,同理對于系統(tǒng)其他功能模塊采取相應(yīng)方法實現(xiàn)測試。經(jīng)過測試,該系統(tǒng)工作一切正常,能夠應(yīng)用于高校課程設(shè)計工作管理。
5 結(jié)束語
在此次開發(fā)研究過程中,本文所設(shè)計的課程設(shè)計管理系統(tǒng)將傳統(tǒng)人工管理的模式轉(zhuǎn)換成信息化管理模式,簡單方便,界面實用,用戶操作難度較低,同時系統(tǒng)權(quán)限層次分明,開發(fā)架構(gòu)中采用多種防御手段,加強(qiáng)了安全性能,完全禁止其他無關(guān)人員訪問服務(wù)器,有效避免漏洞產(chǎn)生,同時系統(tǒng)具備易維護(hù)性和可擴(kuò)展性等特點,有助于后續(xù)維護(hù)人員工作提供支持。
因此,本文所開發(fā)的管理系統(tǒng)具有很強(qiáng)的實用價值,并具有一定安全性及擴(kuò)展性滿足當(dāng)下高校對課程設(shè)計工作管理的需求,提高了課程設(shè)計任務(wù)中高校的管理效果,降低教師工作過程中產(chǎn)生的失誤,便于課程設(shè)計工作信息的及時傳遞。
參考文獻(xiàn):
[1]李運(yùn)平,吳素芹,劉艷華.基于Web的畢業(yè)設(shè)計管理系統(tǒng)設(shè)計與實現(xiàn)[J].軟件導(dǎo)刊,2016,15(11):123-125.
[2]瞿沁麒,陳書書,藍(lán)靜怡,等.基于Web的班級日常事務(wù)管理系統(tǒng)設(shè)計與實現(xiàn)[J].福建電腦,2018,34(09):122-123.
[3]楊旭東,陳婷,梁瀟聆.基于web的本科畢業(yè)師生雙選系統(tǒng)開發(fā)設(shè)計[J].軟件,2018,39(05):182-188.
[4]李蕖,張利.基于B/S與C/S架構(gòu)的本科生導(dǎo)師制雙選系統(tǒng)設(shè)計與實現(xiàn)[J].攀枝花學(xué)院學(xué)報,2014,31(06):97-99.
[5]鄧雄輝,蔡夢婷,陳專升,等.基于J2EE的班級學(xué)生信息管理系統(tǒng)設(shè)計與實現(xiàn)[J].福建電腦,2018,34(08):26-27.
[6]馮欣,宋勇.基于MVC模式的網(wǎng)絡(luò)教學(xué)資源管理系統(tǒng)設(shè)計[J].信息與電腦(理論版),2018(18):225-226.
[7]鄭天宇,張玉軍,楊陽,等.基于ASP.Net的畢業(yè)設(shè)計雙選系統(tǒng)中幾個關(guān)鍵問題的研究[J].電腦知識與技術(shù),2018,14(01):115-116.
[8]任琴,孔令慧,秦冰.基于JAVA的多人聊天室的系統(tǒng)設(shè)計[J].時代農(nóng)機(jī),2018,45(01):142.
[9]郝勝華,張素華.基于JAVA的聊天軟件設(shè)計與實現(xiàn)[J].電腦知識與技術(shù),2017,13(14):97-99.
[10]石敏,盧丹海,秦婷.基于大數(shù)據(jù)的高校學(xué)生分析與服務(wù)平臺的研究[J].信息技術(shù),2019(02):5-10.