朱杰 王小正 陳長偉 李瀅
摘要:JavaEE框架結(jié)構(gòu)開發(fā)是一門實(shí)踐性很強(qiáng)的綜合性課程,它要求學(xué)生具備一定的專業(yè)知識(shí),現(xiàn)有課程存在的問題是學(xué)生的學(xué)習(xí)基礎(chǔ)存在很大差異,傳統(tǒng)的教學(xué)模式已不能滿足“根據(jù)學(xué)生特點(diǎn)和程度進(jìn)行個(gè)性化教學(xué)”的要求。為此作者提出基于OBE模式的JavaEE課程教學(xué),通過該教學(xué)方法可以滿足不同程度學(xué)生的學(xué)習(xí)需求,激發(fā)學(xué)生的學(xué)習(xí)興趣,充分發(fā)揮學(xué)生的學(xué)習(xí)潛能。
關(guān)鍵詞:JavaEE框架;OBE模式;結(jié)果導(dǎo)向
中圖分類號:G434? 文獻(xiàn)標(biāo)識(shí)碼:A? 論文編號:1674-2117(2020)15/16-0175-04
在CNCC(中國計(jì)算機(jī)學(xué)會(huì))2019年舉辦的“人工智能賦能未來教育”論壇上,哈爾濱工業(yè)大學(xué)人工智能研究院副院長、哈爾濱工業(yè)大學(xué)社會(huì)計(jì)算與信息檢索研究中心主任劉挺教授做了題為《智能教育的理念變革與技術(shù)落地》的報(bào)告,對報(bào)告的學(xué)習(xí),引發(fā)了筆者對現(xiàn)有課程“JavaEE框架結(jié)構(gòu)開放”教學(xué)模式的思考,并對這門課程的教學(xué)方法做了一些調(diào)整與改進(jìn)。同時(shí),筆者所在學(xué)校在今年引進(jìn)了Blackboard OBE教學(xué)管理平臺(tái),該平臺(tái)為教師和學(xué)生創(chuàng)建自主的網(wǎng)絡(luò)學(xué)習(xí)環(huán)境,使教師和學(xué)生擁有自己的個(gè)性化的學(xué)習(xí)空間,其功能覆蓋整個(gè)教學(xué)過程。該平臺(tái)提供豐富的應(yīng)用工具來輔助教學(xué)工作,主要功能包括網(wǎng)絡(luò)課程建設(shè)、教學(xué)資源展示共享、教學(xué)互動(dòng)、交流協(xié)作、數(shù)據(jù)統(tǒng)計(jì)和評測反饋等,這個(gè)平臺(tái)的教學(xué)輔助正好幫助筆者把基于OBE模式的教學(xué)想法實(shí)施落地。
● JavaEE課程教學(xué)研究現(xiàn)狀
“JavaEE框架結(jié)構(gòu)開發(fā)”課程屬于一門綜合性課程,一般是安排在學(xué)生大三、大四階段完成的。傳統(tǒng)的教學(xué)內(nèi)容包括JavaEE開發(fā)環(huán)境的搭建、網(wǎng)頁設(shè)計(jì)基礎(chǔ)、JSP基礎(chǔ)以及數(shù)據(jù)庫應(yīng)用這些基礎(chǔ)知識(shí),要求學(xué)生既要能夠上機(jī)熟練完成Struts2框架、Hibernate框架、Spring框架的應(yīng)用實(shí)例開發(fā),又要能夠綜合性地對Struts2、Hibernate和Spring框架進(jìn)行整合,用SSH框架完成一個(gè)綜合性網(wǎng)站系統(tǒng)的搭建。這對學(xué)生理論知識(shí)的掌握以及動(dòng)手實(shí)踐能力的要求都很高。其教學(xué)過程,存在如下一些問題。
首先,這門課程內(nèi)容豐富,而課堂講授時(shí)間有限,很多內(nèi)容需要學(xué)生課后再閱讀一些相關(guān)材料來加深理解。如果學(xué)生不具備良好的學(xué)習(xí)基礎(chǔ)和學(xué)習(xí)習(xí)慣,不知道這個(gè)知識(shí)點(diǎn)與其他相關(guān)知識(shí)的關(guān)聯(lián),只單純地學(xué)習(xí)這個(gè)知識(shí)點(diǎn)本身,那么在上機(jī)實(shí)踐中如果出現(xiàn)問題就找不到解決問題的切入點(diǎn)。其次,JavaEE框架技術(shù)的學(xué)習(xí)需要很多前導(dǎo)性知識(shí),如Java面向?qū)ο蟪绦蛟O(shè)計(jì)語言、數(shù)據(jù)庫基礎(chǔ),以及Java Web基礎(chǔ)知識(shí)等,這要求學(xué)生具備扎實(shí)的基本功,但往往學(xué)生的學(xué)習(xí)基礎(chǔ)和能力不一樣,上課的時(shí)候?qū)W習(xí)效果和接受度有很大的差異。如何做到因材施教,滿足不同學(xué)生的學(xué)習(xí)需求,這是亟待解決的問題。最后,傳統(tǒng)的教學(xué)是面向全體學(xué)生進(jìn)行講授,無法及時(shí)從學(xué)生的學(xué)習(xí)成果中得到反饋,因而就無法針對不同程度的學(xué)生進(jìn)行差別化教學(xué)。學(xué)生數(shù)量眾多,教師對學(xué)生都采取同樣的教學(xué)進(jìn)度、同樣的教學(xué)安排,學(xué)生無法做到針對性的學(xué)習(xí),教師也很難根據(jù)每個(gè)學(xué)生的個(gè)性化差異開展不同的教學(xué)。
西北農(nóng)林科技大學(xué)信息工程學(xué)院的聶艷明等[1]采用以基于項(xiàng)目驅(qū)動(dòng)的面向?qū)ο筌浖こ谭椒ㄩ_發(fā)的典型業(yè)務(wù)項(xiàng)目作為教學(xué)案例闡述了基于項(xiàng)目驅(qū)動(dòng)的課程教學(xué)方法。北京交通大學(xué)軟件學(xué)院的冀振燕[2]提出了采用案例驅(qū)動(dòng)的教學(xué)方式對課程教學(xué)進(jìn)行設(shè)計(jì),改進(jìn)了“先理論后實(shí)踐”的傳統(tǒng)教學(xué)方式。暨南大學(xué)信息科學(xué)技術(shù)學(xué)院的張曉剛[3]借鑒工程教育的先進(jìn)理念并結(jié)合JavaEE技術(shù)特點(diǎn),提出項(xiàng)目進(jìn)階驅(qū)動(dòng)的實(shí)踐教學(xué)模式。這些關(guān)于JavaEE課程教學(xué)改革[4-6]的研究都提供了有益的解決思路,但是對學(xué)生個(gè)性化教學(xué)的相關(guān)研究還比較少,本文重點(diǎn)從學(xué)生個(gè)性化角度做了有益的探索。
● 結(jié)果導(dǎo)向型的教學(xué)方案
過程導(dǎo)向比較注重過程,就是重在參與;結(jié)果導(dǎo)向是站在結(jié)果的角度思考問題,重在結(jié)果。本文所指的結(jié)果導(dǎo)向并不是只看中結(jié)果,而不考慮過程,而是從結(jié)果的反饋來調(diào)整實(shí)施過程,從而達(dá)到更好的學(xué)習(xí)效果。
1.OBE教育模式
基于學(xué)習(xí)產(chǎn)出的教育模式(Outcomes-based Education,縮寫為OBE)最早出現(xiàn)于美國和澳大利亞的基礎(chǔ)教育改革,是以學(xué)生的學(xué)習(xí)成果為導(dǎo)向的教育理念。在OBE教育模式中,學(xué)生學(xué)到了什么和是否成功遠(yuǎn)比怎樣學(xué)習(xí)和什么時(shí)候?qū)W習(xí)重要。它的主要思想是根據(jù)學(xué)生某一階段學(xué)習(xí)后所應(yīng)達(dá)到的能力水平,及時(shí)調(diào)整學(xué)習(xí)過程,改進(jìn)原有的課程設(shè)計(jì)與課程教學(xué)來保證學(xué)生達(dá)到預(yù)期的學(xué)習(xí)目標(biāo)。下圖為OBE課程設(shè)計(jì)理念與傳統(tǒng)課程設(shè)計(jì)理念的對比。
緊扣新經(jīng)濟(jì)對本科人才的需求特點(diǎn),堅(jiān)持以產(chǎn)出為導(dǎo)向的工程教育的理念,OBE關(guān)注四個(gè)問題:①我們想讓學(xué)生取得的學(xué)習(xí)成果是什么?②為什么要讓學(xué)生取得這樣的學(xué)習(xí)成果?③如何有效地幫助學(xué)生取得這些學(xué)習(xí)成果?④如何知道學(xué)生已經(jīng)取得了這些學(xué)習(xí)成果,并依次細(xì)分教學(xué)內(nèi)容和教學(xué)環(huán)節(jié)關(guān)聯(lián)矩陣,持續(xù)改進(jìn)教學(xué)效果?
對想讓學(xué)生取得的學(xué)習(xí)成果是什么這個(gè)問題,高校研究得最多,從教學(xué)大綱到每節(jié)課的學(xué)習(xí)知識(shí)點(diǎn),內(nèi)容都已經(jīng)非常具體。第二個(gè)問題為什么要讓學(xué)生取得這樣的學(xué)習(xí)成果和第三個(gè)問題如何有效地幫助學(xué)生取得這些學(xué)習(xí)成果,是圍繞第一個(gè)問題詳細(xì)展開的。針對這兩個(gè)問題教師不斷地革新教學(xué)方法,各類精品課的出現(xiàn)都是為了讓學(xué)生能夠更好地接受學(xué)習(xí)的內(nèi)容和掌握學(xué)習(xí)中的重點(diǎn)、難點(diǎn)知識(shí)。在現(xiàn)代課程中,信息化時(shí)代的發(fā)展讓學(xué)生有更多獲取知識(shí)的途徑,筆者所在學(xué)校引進(jìn)的OBE教學(xué)平臺(tái),是以活動(dòng)為中心,讓學(xué)生每次進(jìn)入課程去訪問一個(gè)活動(dòng)。在課前,教師把課件上傳到課程資源中,同時(shí)分享網(wǎng)上一些優(yōu)秀的教學(xué)資源,供學(xué)生課外學(xué)習(xí),進(jìn)而更多地幫助學(xué)生在課堂上領(lǐng)會(huì)吸收,學(xué)生在學(xué)習(xí)過程中可以在討論區(qū)提出問題,分享給大家,教師和學(xué)生可以在討論區(qū)進(jìn)行互動(dòng)答疑和解惑。這就大大提高了師生之間以及學(xué)生之間的互動(dòng),激發(fā)了學(xué)習(xí)熱情,同時(shí)可以了解學(xué)生的學(xué)習(xí)時(shí)間。第四個(gè)問題如何依次細(xì)分教學(xué)內(nèi)容和教學(xué)環(huán)節(jié)關(guān)聯(lián)矩陣,持續(xù)改進(jìn)教學(xué)效果,是本文主要思考的問題,筆者為此進(jìn)行了一些有益的嘗試,從目前的情況來看,取得了比較好的教學(xué)效果。下面是從理論知識(shí)的學(xué)習(xí)和上機(jī)實(shí)踐兩個(gè)方面,基于第四個(gè)問題,對教學(xué)方法做的一些改進(jìn)。
2.理論知識(shí)的教學(xué)方法研究
劉挺教授認(rèn)為,應(yīng)當(dāng)根據(jù)學(xué)生的個(gè)性化來定制學(xué)習(xí)路線。但是學(xué)生本身是有惰性的,而且知識(shí)是有次序的,因此應(yīng)該認(rèn)識(shí)到“教”的重要性。教師是“答疑解惑”者,但更是知識(shí)的傳播者,好的教師是把知識(shí)的架構(gòu)先告訴學(xué)生,將知識(shí)里面的重點(diǎn)難點(diǎn)梳理給學(xué)生,有些學(xué)生本身的學(xué)習(xí)能力不是很強(qiáng),這就更需要教師的引領(lǐng)。所以“JavaEE框架結(jié)構(gòu)開發(fā)”課程中的網(wǎng)頁設(shè)計(jì)基礎(chǔ)、JSP基礎(chǔ)、數(shù)據(jù)庫應(yīng)用基礎(chǔ),以及Struts2、Spring和Hibernate的概述這些基礎(chǔ)知識(shí)及重難點(diǎn)概念,采取傳統(tǒng)的教學(xué)方法——教師課堂講授,學(xué)生課下練習(xí),運(yùn)用教學(xué)PPT、教學(xué)視頻等豐富資源,吸引學(xué)生興趣,讓學(xué)生先踏進(jìn)這個(gè)門檻里面來。但是學(xué)生的接受程度、先前的基礎(chǔ)儲(chǔ)備不一樣,所以當(dāng)教授完相關(guān)課程后,需采取隨堂測試的方式來了解學(xué)生對理論知識(shí)的掌握程度,然后根據(jù)反饋結(jié)果,來調(diào)整后續(xù)的講課內(nèi)容。以Struts2的核心配置為例,在OBE平臺(tái)下,教師可以課堂同步給學(xué)生布置練習(xí)題:①請寫出在web.xml文件中配置Struts2核心過濾器的代碼片段,并上機(jī)驗(yàn)證。②簡述Struts2常量配置的3種方式并舉例。學(xué)生練習(xí)提交答案并給出遇到的問題,教師統(tǒng)計(jì)出學(xué)生的正確率,從而判斷學(xué)生的掌握程度。對于第一個(gè)問題,學(xué)生大部分出現(xiàn)404錯(cuò)誤,這是因?yàn)閷W(xué)生下載的jar包版本和書上給出的jar包版本不一致,而不同的jar包對應(yīng)的web.xml文件內(nèi)容不一樣,學(xué)生沒有注意到版本問題導(dǎo)致部分出現(xiàn)404錯(cuò)誤。這說明學(xué)生對本課Struts2框架搭建沒有完全理解與掌握,在課堂上就需要補(bǔ)充原有知識(shí)點(diǎn),告知學(xué)生Struts2框架版本是不斷更新的,相應(yīng)jar包可能會(huì)合并更新,濾波器也相應(yīng)進(jìn)行改變,而不是繼續(xù)往下講新的知識(shí)。第二個(gè)問題比較簡單,屬于基礎(chǔ)知識(shí),正確率很高,那么把常量配置里面如果出現(xiàn)多個(gè)配置文件都配置常量可能出現(xiàn)后面的文件覆蓋前面文件的情況告訴學(xué)生就可以,并給學(xué)生補(bǔ)充一些額外知識(shí)點(diǎn),然后繼續(xù)后面的學(xué)習(xí)。
JavaEE課程中的基礎(chǔ)概念大多需要學(xué)生簡答,少部分概念可以以填空和選擇的方式提出。例如,Struts2、Hibernate缺省的核心配置文件名分別為(struts.xml)和(hibernate.cfg.xml);在Hibernate項(xiàng)目中,如實(shí)體類為User,則對應(yīng)的配置文件名為(User.hbm.xml);持久化對象的生命周期中對象的三種狀態(tài)(瞬時(shí)態(tài))(持久態(tài))(脫管態(tài));等等。這些概念對教師了解學(xué)生對基本原理的掌握情況非常重要,教師可通過小測試的方式,得到學(xué)生成績的分析圖,根據(jù)分析的結(jié)果可以了解學(xué)生的學(xué)習(xí)情況。這里選取了一次測試的考核結(jié)果,課程平均分為73.1,超過預(yù)期目標(biāo)70.0%,說明學(xué)生已經(jīng)基本掌握了基礎(chǔ)知識(shí),那么就把這次考核出現(xiàn)的問題分析講解給學(xué)生聽,同時(shí)把與問題相關(guān)的知識(shí)點(diǎn)再次引入,使得出現(xiàn)類似問題的學(xué)生都可以迎刃而解,而不需要再次講解基礎(chǔ)知識(shí),也不需要再補(bǔ)充前序知識(shí)點(diǎn)了。
3.上機(jī)實(shí)踐方面的教學(xué)方法研究
除了理論知識(shí),JavaEE框架框架結(jié)構(gòu)開發(fā)課程還是一門動(dòng)手性很強(qiáng)的課程,需要學(xué)生大量的上機(jī)練習(xí)。對于上機(jī)部分,采用線上線下同步的方式。
講解MVC設(shè)計(jì)模式,指導(dǎo)學(xué)生做一個(gè)簡單的留言系統(tǒng)。課堂上,對于編程能力強(qiáng)的學(xué)生,不僅要求其完成了登錄、留言功能,還可以繼續(xù)加深難度,額外給他們提出一些要求,如讓學(xué)生模仿登錄功能完成注冊功能,加入其他章節(jié)的知識(shí)進(jìn)行融合,讓學(xué)生再加入刪除、修改功能等。對于剛剛能夠消化理解本課內(nèi)容的學(xué)生,只要求他們完成登錄和留言功能,同時(shí)模仿完成注冊功能,然后根據(jù)上機(jī)過程中出現(xiàn)的針對性問題進(jìn)行解答,并且把這部分學(xué)生的問題進(jìn)行匯總,在課堂上統(tǒng)一講解,并且不限于此類問題,所有相關(guān)問題也一起給學(xué)生分析,當(dāng)出現(xiàn)類似問題時(shí)應(yīng)該如何解決,舉一反三。課堂時(shí)間畢竟有限,對于來不及指導(dǎo)的學(xué)生,就讓他們把問題發(fā)布在OBE平臺(tái)的作業(yè)測試區(qū)和討論區(qū),讓大家一起來討論并幫助解決遇到的問題。這里遇到的問題一般屬于班上大部分學(xué)生都可能出現(xiàn)的問題,通過大家的問題匯總及討論,讓學(xué)生把可能遇到的問題進(jìn)行匯總并延伸給予講解。
例如,通過練習(xí),發(fā)現(xiàn)學(xué)生對session概念的欠缺,大部分學(xué)生沒有掌握,可以很好地補(bǔ)充學(xué)生知識(shí)的盲點(diǎn)。還有一部分是上機(jī)出現(xiàn)困難的學(xué)生,需要采取線下輔導(dǎo),一對一地講解,因?yàn)檫@樣的學(xué)生通常基礎(chǔ)比較差,在答疑的過程中可能需要給學(xué)生補(bǔ)充很多知識(shí)點(diǎn),讓學(xué)生了解自己欠缺的知識(shí)點(diǎn),回去針對性做一些練習(xí)。同時(shí)這部分學(xué)生學(xué)習(xí)積極性不高,教師在輔導(dǎo)的過程中,需要幫助提升學(xué)生的學(xué)習(xí)興趣和自信心,這是非常必要的。還有部分學(xué)生編程能力不足,又比較內(nèi)向,這時(shí)候還可以讓動(dòng)手能力較強(qiáng)的學(xué)生來給予輔導(dǎo),這不管是對輔導(dǎo)的學(xué)生還是被輔導(dǎo)的學(xué)生都是一次能力的提升。
● 結(jié)語
通過OBE平臺(tái),教師可以實(shí)時(shí)看到學(xué)生學(xué)習(xí)的效果,配合多元彈性的個(gè)性化學(xué)習(xí)要求,讓學(xué)生通過練習(xí)來發(fā)現(xiàn)自己的問題,再將結(jié)果反饋給教師,從而改進(jìn)原有的課程設(shè)計(jì)與課程教學(xué)。線上線下互動(dòng)式教學(xué)模式提高了學(xué)生的學(xué)習(xí)熱情,通過線上討論,學(xué)生可以打開思路從多個(gè)角度思考問題,同時(shí)也起到督促的作用,讓學(xué)生的學(xué)習(xí)都記錄在線,學(xué)生會(huì)更加重視。此外,課程網(wǎng)站的建設(shè)為學(xué)生提供了一個(gè)便利的課程學(xué)習(xí)平臺(tái),學(xué)生不僅可以方便地獲取課程學(xué)習(xí)資料,還可以發(fā)揮主觀能動(dòng)性積極進(jìn)行學(xué)習(xí)交流。
通過結(jié)果導(dǎo)向的教學(xué)方法,教師可以在學(xué)生的學(xué)習(xí)過程中,及時(shí)了解學(xué)生是當(dāng)前知識(shí)點(diǎn)出現(xiàn)問題,還是基礎(chǔ)知識(shí)沒有掌握,根據(jù)學(xué)生的掌握程度來調(diào)整教學(xué)安排,定制個(gè)性化教學(xué)方案。通過該教學(xué)方法,學(xué)生在學(xué)習(xí)當(dāng)中,已經(jīng)明顯增加了學(xué)習(xí)興趣,學(xué)習(xí)效果也得到有效提升。
參考文獻(xiàn):
[1]聶艷明,劉全中,李宏利,等.基于開發(fā)模型對比的Java EE課程教學(xué)方法研究[J].中國信息技術(shù)教育,2015(07):107-109.
[2]冀振燕.JavaEE框架與程序設(shè)計(jì)課程的案例驅(qū)動(dòng)教學(xué)探索[J].計(jì)算機(jī)教育,2013(24):27-29.
[3]張曉剛.項(xiàng)目進(jìn)階驅(qū)動(dòng)的JavaEE課程實(shí)踐教學(xué)改革探索[J].計(jì)算機(jī)教育,2016(09):115-118.
[4]董運(yùn)成,代威.JavaEE課程教學(xué)與實(shí)踐方法初探[J].信息與電腦:理論版,2015(13):197-198.
[5]王小正,楊鑫,侯青.面向應(yīng)用型本科院校的JavaEE教材建設(shè)[J].計(jì)算機(jī)教育,2015(12):98-101.
[6]張淑麗,姚登舉,車楠.基于JavaEE的開源框架類課程整合教學(xué)方法探索[J].黑龍江教育,2014(06):17-18.