姜冬潔
摘要:為方便教師對學(xué)生上機(jī)作業(yè)的評價(jià)管理,解決作業(yè)評價(jià)反饋不及時(shí)的問題,針對上機(jī)操作類課程,結(jié)合職業(yè)院校上機(jī)類作業(yè)評價(jià)管理的情況,通過對需求和改進(jìn)方案進(jìn)行分析,設(shè)計(jì)并開發(fā)一個(gè)基于SSH三層架構(gòu)的多元作業(yè)評價(jià)平臺(tái),采用MVC模式,以MySQL為系統(tǒng)后臺(tái)數(shù)據(jù)庫,使用tomcat為Web服務(wù)器,使用MyEclipse開發(fā)工具及JAVA語言開發(fā)。該平臺(tái)打破傳統(tǒng)師對生單向評價(jià)的局限,實(shí)現(xiàn)師-生-生使用各種終端設(shè)備隨時(shí)隨地互動(dòng)互評,經(jīng)理論設(shè)計(jì)和試驗(yàn)表明,該平臺(tái)是可行和有效的。
關(guān)鍵詞:三層架構(gòu); 作業(yè)評價(jià); SSH; 多元; 有效性
中圖分類號(hào):TP311.13 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)12-0055-04
Abstract:In order to facilitate evaluation management for students' assignments, to solve the job evaluation feedback problems for courses operating on computers, by combining with the actual situation of assignments evaluation in the vocational colleges, this paper analysis the assignments evaluation management requirements and design,design and develope a pluralistic evaluation platform based on SSH three layer architecture,the platform uses MVC mode, MySQL as database system, Tomcat as Web server, MyEclipse as development tools and JAVA language. the platform break the limitations of traditional one-way evaluation of teacher to student, and realizes the interaction among teacher-student-teacher. Theoretic argument and example analysis demonstrate that our scheme is secure and maintain the validity of data.
Key words:three layer architecture; assignments evaluation; SSH framework; pluralistic; validity
1 引言
隨著信息化的發(fā)展,學(xué)生課堂作業(yè)的提交形式越來越趨向電子化,對于上機(jī)操作類課程,一直以來,課堂作業(yè)的提交和評價(jià)方式困擾著很多師生,通常教師將學(xué)生提交的作業(yè)后經(jīng)U盤拷貝課下評閱,學(xué)生不能及時(shí)得到反饋,且評價(jià)形式非常單一, 只限于教師對學(xué)生的單向評價(jià),無論是效率還是效果都無法滿足日益發(fā)展的信息化教學(xué)的需求。因此設(shè)計(jì)開發(fā)一個(gè)基于目前流行的SSH架構(gòu)[1](Struts、Spring、Hibernate)的多元作業(yè)評價(jià)平臺(tái),既實(shí)現(xiàn)教師對學(xué)生作業(yè)的評價(jià),又實(shí)現(xiàn)學(xué)生間的互評及學(xué)生對自己作業(yè)的自評,除了學(xué)生與教師間的互動(dòng)外,更強(qiáng)調(diào)學(xué)生之間的交流互動(dòng)以及學(xué)生對自身的評價(jià),本平臺(tái)利用編程語言JAVA[2]及MVC模式實(shí)現(xiàn),操作簡便、功能性強(qiáng)、通用性強(qiáng),非常適合各院校上機(jī)操作類課程使用。
2 系統(tǒng)需求分析
通過對一些院校進(jìn)行調(diào)研,多數(shù)學(xué)校缺少完善的作業(yè)評價(jià)平臺(tái),從教學(xué)效率及效果出發(fā),教師和學(xué)生都需要一個(gè)高效的作業(yè)評價(jià)平臺(tái),從使用者的角度分析,作業(yè)評價(jià)平臺(tái)由面向?qū)W生用戶和面向教師用戶兩個(gè)部分組成。
1)學(xué)生用例:學(xué)生登錄后,可以提交作業(yè)、評價(jià)其他同學(xué)作業(yè)、查看老師和同學(xué)對自己作業(yè)的評價(jià)以及自我評價(jià)。圖1是學(xué)生用例圖。
2)教師用例:教師可以設(shè)置及修改學(xué)生密碼、對學(xué)生分組、評價(jià)學(xué)生作業(yè)、分配學(xué)生互評任務(wù)、查看學(xué)生之間的互評結(jié)果、成績統(tǒng)計(jì)分析等。圖2是教師用例圖。
3 系統(tǒng)架構(gòu)
本文使用SSH框架實(shí)現(xiàn),Struts框架作為表現(xiàn)層,是系統(tǒng)的整體基礎(chǔ)架構(gòu),負(fù)責(zé)各層的分離,控制業(yè)務(wù)跳轉(zhuǎn)、接收請求及顯示請求結(jié)果,該平臺(tái)表現(xiàn)層中使用HTML或JSP等頁面實(shí)現(xiàn)與用戶的交互; Spring為業(yè)務(wù)處理層,通過IOC容器為表現(xiàn)層的交互動(dòng)作注入相應(yīng)的業(yè)務(wù)處理模型和對象數(shù)據(jù)處理組件;Hibernate 作為數(shù)據(jù)持久層,對象數(shù)據(jù)處理(DAO)組件通過Hibernate的對象關(guān)系映射與數(shù)據(jù)庫進(jìn)行交互,并返回處理結(jié)果。使用SSH框架,系統(tǒng)中的每一層都以低耦合的方式與其他層通信,實(shí)現(xiàn)了視圖、控制器與模型的分離,視圖變化時(shí),模型不用改動(dòng)或改動(dòng)很少,從而可以提高系統(tǒng)的可擴(kuò)展性和穩(wěn)定性。圖3是SSH架構(gòu)圖。
4 系統(tǒng)功能
平臺(tái)的功能從使用者的角度可分為兩個(gè)部分,即面向教師用戶的功能及面向?qū)W生用戶的功能,下面介紹其具體功能。
4.1 面向教師用戶的功能
教師在該平臺(tái)中的角色即是管理者也是普通用戶,具體功能如下:
1)用戶管理功能:此部分主要是對進(jìn)入對應(yīng)課程的學(xué)生進(jìn)行登錄驗(yàn)證、對學(xué)生密碼進(jìn)行管理等。
2)評價(jià)功能:教師可以對學(xué)生完成作業(yè)的情況進(jìn)行評價(jià)評分。
3)分組管理功能:這是系統(tǒng)的輔助功能,分組教學(xué)時(shí),使用該功能對學(xué)生進(jìn)行快速分組。
4)評價(jià)管理功能:學(xué)生不僅要完成作業(yè)任務(wù),還要完成評價(jià)他人的任務(wù),該模塊為學(xué)生分配評價(jià)任務(wù)、對每個(gè)學(xué)生得到的評價(jià)進(jìn)行統(tǒng)計(jì)分析、對學(xué)生的評論評價(jià)進(jìn)行審核等。
5)課程管理功能:學(xué)期初,課程負(fù)責(zé)教師可以添加課程,生成班級,設(shè)置作業(yè)成績的配分規(guī)則等。
6)統(tǒng)計(jì)分析成績:該功能有兩個(gè)主要目的,一是根據(jù)學(xué)生每次作業(yè)的成績,得知學(xué)生對課程內(nèi)容的掌握程度;二是根據(jù)學(xué)生每次的作業(yè)的成績,統(tǒng)計(jì)出該名學(xué)生一學(xué)期的作業(yè)成績。
7)清空訪客IP功能:隨著系統(tǒng)訪問量的增加 ,會(huì)占用大量后臺(tái)主機(jī)的緩存,因此需及時(shí)地清空歷史訪問者的IP 。
8)數(shù)據(jù)庫備份與恢復(fù)功能:數(shù)據(jù)庫中存放所有學(xué)生的作業(yè)及評價(jià)的數(shù)據(jù)信息,因此可靠性至關(guān)重要,因此需及時(shí)地備份數(shù)據(jù)庫。
4.2 面向?qū)W生用戶的功能
1)上傳作業(yè)功能:學(xué)生登錄系統(tǒng),進(jìn)入相應(yīng)課程后,所具有的最基本的功能。
2)評價(jià)其他同學(xué)作業(yè)功能:這是學(xué)生擁有的一個(gè)重要的功能。學(xué)生提交的作業(yè)是不共享的,教師會(huì)隨機(jī)分配哪些學(xué)生作為另一些學(xué)生的評價(jià)者,并授予評價(jià)者評價(jià)的權(quán)限,此功能設(shè)計(jì)的初衷是通過學(xué)生間的互評[3],創(chuàng)造一個(gè)互相學(xué)習(xí)的空間,也為學(xué)生的自主學(xué)習(xí)創(chuàng)造更多參與的機(jī)會(huì)。
3)查看評價(jià)功能:學(xué)生可以查看教師及其他同學(xué)對自己本次作業(yè)的評價(jià)。
4)學(xué)生自評功能:教師和其他同學(xué)對自己評價(jià)后,通過老師的評語及同學(xué)的評價(jià),學(xué)生會(huì)對本次作業(yè)有更深層次的理解和認(rèn)識(shí),學(xué)生通過對他人作業(yè)的評閱,對于同一問題學(xué)習(xí)到不同的解決方法,拓寬了自己的思維,此時(shí),學(xué)生會(huì)對自己的作業(yè)有更客觀的評價(jià),因此,學(xué)生自評功能是在收到評價(jià)及評價(jià)過他人后才開放的。圖4是系統(tǒng)結(jié)構(gòu)功能圖:
5 系統(tǒng)功能的實(shí)現(xiàn)
5.1 公共類的設(shè)計(jì)
為了實(shí)現(xiàn)代碼的重用、提高程序的性能和代碼的可讀性[4],設(shè)計(jì)了三個(gè)公共類:Item公共類,實(shí)現(xiàn)對數(shù)據(jù)表最常用的id和name屬性的封裝,用于系統(tǒng)中各種Swing列表、表格、下拉列表框等組件的賦值;數(shù)據(jù)模型公共類DModel,與Item類的使用方法相似,是對數(shù)據(jù)表中所有字段的封裝,但僅是純粹的模型類,主要用于存儲(chǔ)數(shù)據(jù);Dao公共類,即數(shù)據(jù)訪問對象,在該類中實(shí)現(xiàn)了數(shù)據(jù)庫的驅(qū)動(dòng)、連接、關(guān)閉和多個(gè)操作數(shù)據(jù)庫[5]的方法。
5.2 評價(jià)管理模塊功能的實(shí)現(xiàn)
下面以評價(jià)管理模塊為例,介紹其實(shí)現(xiàn)的過程。接口InfAssess中定義了對評價(jià)進(jìn)行管理的方法,如添加評價(jià)、刪除評價(jià)、修改評價(jià)、查詢評價(jià)等,ClsAssess類用來實(shí)現(xiàn)InfAssess接口。AssessAction繼承了SSH架構(gòu)中表示層Struts中的Action類,用于接收用戶輸入的評價(jià)信息,封裝為AssessInfo對象,同時(shí)根據(jù)Struts的配置文件信息調(diào)用 ClsAssess類中的對應(yīng)方法實(shí)現(xiàn)師生對作業(yè)評價(jià)的相關(guān)操作。該模塊類圖設(shè)計(jì)如圖5所示:
其中,Struts的配置文件信息如下:
利用Spring對Hibernate支持,Hibernate所需要的基礎(chǔ)資源,都由Spring提供注入,ClsAssess類通過繼承HibernateDaoSupport 類,獲得 HibernateTemplate 模板的引用完成對AssInfo對象的持久的操作。Spring通過配置文件為AssessAction注入相應(yīng)的業(yè)務(wù)處理模型和對象數(shù)據(jù)處理(DAO)組件,Spring配置文件信息如下:
AssInfo類和數(shù)據(jù)表AssInfo的對象關(guān)系映射如下:
column=" AssContent "/> …
5.3 成績統(tǒng)計(jì)分析模塊的實(shí)現(xiàn)
該模塊借助struts2和jfreechart實(shí)現(xiàn)使用餅狀圖、柱狀圖、折線圖展示學(xué)生作業(yè)成績的各種統(tǒng)計(jì)分析,包括每位學(xué)生每次作業(yè)的成績,每位學(xué)生所有作業(yè)的平均成績,全班每次作業(yè)的平時(shí)成績,全班學(xué)期作業(yè)的平均成績,平行班同一門課程的成績比較分析以及成績的導(dǎo)出等功能。在設(shè)置struts中的package配置時(shí)使其繼承jfreechart-default,配置如下: