郭廣豐,肖鳳艷
(包頭師范學院 信息科學與技術學院,內蒙古 包頭 014030)
Java EE軟件開發技術課程是一門培養學生軟件開發能力的核心課程,也是一門涉及Java語言程序設計、數據庫、Web程序開發等知識的綜合性課程,其教學目標是:學生通過本課程的學習,掌握基于Java EE技術開發Web系統的基礎知識和基本方法,對Web系統開發有一個全面的認識,并能夠使用Java EE技術獨立開發Web系統。
在實際授課中發現,一部分學生很難達到課程教學目標。通過對前幾屆修完該課程的學生進行訪談和問卷調研發現,有如下因素直接影響教學效果:①前續課程的學習不夠扎實,沒有掌握相關知識和技能,導致該課程的學習難度加大,特別是Java核心技術課程學業成績比較差的學生讀不懂代碼,也不會調試代碼,在該課程學習的開始階段就會產生畏難情緒,主動放棄了該課程的學習;②一部分學生抽象能力不強,教師如果按知識點組織教學,這部分學生只是完成教師指定的練習,無法把實際需求轉化為系統設計,遇到具體項目無從下手;③在該課程學習中,一部分學生的學習主動性不強,投入時間不足,主動參與意識差,學習成績也不夠理想。因此,針對上述問題,對Java EE軟件開發技術課程進行教學改革勢在必行。
Java EE軟件開發技術課程的前驅課程為數據庫、Java核心技術、Java Web程序設計。Java EE軟件開發涉及的相關技術較多,根據對企業人才需求的分析,本課程主要培養學生使用Struts、Hibernate、Spring等輕量級框架開發Web系統的能力。三大框架涉及知識點較多,精選相關內容整合為4個模塊,見表1。
該課程的教學目標是培養學生獨立開發Web系統的能力,但如果學生沒有習得相關知識(如Web技術原理),就無法獨立開發Web系統。因此,知識和能力的學習缺一不可,二者相輔相成。這就需要在整個教學過程中,將“知識學習”和“技能培養”有機結合起來,遵循“學中做,做中學,學會做,獨立做”的教學改革思路[1],將“集體授課”“小組學習”“個人自主學習”等方法優化組合在一起,將教師的“教”和學生的“學”有機結合,真正讓學習者從學習中獲得樂趣,最大程度地參與整個教學,才能達到該課程教學目標的要求。“學中做”指在每個模塊的學習中引入案例,教師作為專家,引導學生分析問題,并展示解決問題的過程,學生跟著教師做;“做中學”指在一個或幾個案例的學習后,教師給定實驗題目,學生完成相應的實驗,并撰寫實驗報告,從實驗中體會其中的技術原理,鞏固相關知識;“學會做”指在每一模塊的案例教學和實驗教學結束后,小組協作完成一個Web系統開發項目的相關子任務;“獨立做”指在全部4個模塊的教學結束后,在前期小組項目開發的基礎上,每位學生獨立完成一個Web項目的開發。

表1 各模塊學習目標
如圖1所示,在整個課程實施過程,將“案例教學”“實驗教學”“小組項目開發及展示”“自行開發項目及展示”等教學環節有機結合起來,讓每位學生參與教學全過程,最大限度地發揮其主體作用。在每一模塊的教學中,交替進行“案例教學”和“實驗教學”,從“學中做”“做中學”中及時強化所學知識;之后通過“學會做”(即“小組項目開發及展示”),和小組成員一起開發項目,在學習伙伴的相互幫扶下,逐步把習得的知識遷移到新的情境中,將知識內化為基本能力。在整個4個模塊的教學過程完成后,再通過“獨立做”(即“個人項目開發及展示”),個人獨立完成項目開發,進一步提升學生的項目開發能力,培養學生分析問題、解決問題的能力。
在課程教學中,為了降低學生理解案例的難度,使其更容易理解Web項目涉及的業務流程,在整個課程教學中統一使用了一個學生都非常熟悉的案例——學生成績管理系統。學生在前導課程Java Web程序設計學習中接觸過此案例,也有使用教務系統查詢成績的經歷,因此容易理解其業務流程。每個模塊的教學,只選擇其中的幾個功能模塊進行設計與實現。每個模塊的教學,根據每個模塊的學習目標,設計相應的案例。案例教學按照程序教學“小步子”的設計思路,按“一個引入式案例→多個進階式案例→模塊學習小結”這一順序開展教學(見表2,以模塊2的教學為例)。

圖1 教學實施流程圖

表2 模塊2的案例教學
1)一個引入式案例。
在每一模塊的教學中,先給出一個較簡單的問題,教師分析其解決辦法,并一步步演示如何編寫代碼,學生按步驟編寫代碼,教師講解其中的知識點。通過引入式案例的學習,使學生初步了解所使用技術的基本原理、基本步驟。
2)多個進階式案例。
在每一模塊的教學中,在學習較簡單的引入式案例的基礎上,分析引入式案例或上一個進階式案例中未解決的問題,引入新知識,給出解決辦法,并一步演示如何修改代碼,學生跟著教師做。通過多個進階式案例的學習,使學生進一步加深對所使用技術的基本原理、基本步驟的認識,并逐步理解相關技術細節。
3)模塊學習小結。
在每一模塊的教學中,引入式案例和進階式案例涉及的知識點比較零散,不夠系統。在學習完引入式案例和進階式案例后,通過“模塊學習小結”將案例中涉及的零散知識點體系化,總結各種技術的特點、基本原理、基本開發步驟、相關技術要點。通過“模塊學習小結”的學習,使學生將習得的知識系統化,進一步加深對所使用技術的基本原理、基本步驟的認識,并深刻理解相關的技術細節。
根據每個模塊不同的學習目標,設計相應的實驗題目,讓學生自己動手編寫代碼,并完成相應的實驗報告。通過實驗,讓學生理解相應的技術原理,鞏固案例教學中的知識點。設計實驗題目時,選擇學生比較熟悉的業務場景及與案例教學內容接近的開發任務,讓學生獨立完成。見表3,案例教學中針對“管理員信息管理”模塊進行開發,相應的實驗題目也選取了同一項目中的其他模塊——“班級信息管理”模塊,讓學生完成該模塊的開發任務。這樣開發難度較低,學生直接使用案例教學的相關技術就可完成實驗,比較容易獲得成功的體驗,從而提高學習興趣。實驗教學是對學習內容的強化,因此其實施時間選擇也很重要。每一模塊的實驗教學與案例教學穿插進行,每組學習目標對應的案例教學結束后,緊接著開展該組學習目標對應的實驗教學,學生通過獨立完成相應的實驗題目,就可以強化之前習得的知識和技能。
每個模塊的案例教學和實驗教學結束后,則進入小組項目開發環節。在小組項目開發前,4~5人組成開發小組,自主選定一個Web項目開發任務,在每個模塊的案例教學和實驗教學結束后,完成相應的子任務,見表4。每個子任務主要由小組成員在課下完成,課堂教學中利用3~6個學時進行答疑。每個子任務完成后,每組提交相應的階段性成果,并隨機選擇一名成員匯報該小組的成果,教師和學生根據評價量表對各組的成果進行教師評分和組間互評,并產生優勝小組。
在全部4個模塊的“案例教學”“實驗教學”“小組項目開發與展示”教學環節結束后,每位學生自主選題完成課程設計,獨立開發一個小型Web系統。學生根據自己的能力水平,既可以選擇難度稍小的、和小組項目相關的Web項目,也可以自擬題目,對選定項目進行獨立的需求分析、系統設計和實現。項目完成后,提交項目需求分析書、數據庫設計說明書、演示PPT等相關材料,面向全班展示并回答教師提問。3~5個任課教師組成答辯組,根據評分量表對課程設計成果及答辯表現進行綜合評分。通過此過程,進一步培養學生分析問題、解決問題、語言表達等方面的能力。

表3 模塊2的實驗教學

表4 小組項目開發的子任務列表
在課程考核時,一方面采用多元評價方式,將學習主體學生納入評價者的角色,突出學生在學習過程中的責任,激發其學習主動性和積極性[2]。因此,該課程考核方式需要由單一的教師評價轉變為教師評價、學習小組間評價、學習小組內評價等多種評價方式相結合,從多方面、多角度對學習活動進行較科學、全面的評價。
另一方面,不能單純采用終結性評價方法,而是將過程性評價方法和終結性評價方法結合起來。評價過程中隱含了對學習行為的肯定與否定,以此可以實現對學習行為的修正與引導,從而提高學生的學習效果。過程性評價滲透于學習過程之中,學習者親身參與評價過程,有益于其加強對自身學習意義的了解,并從中汲取學習的動力;在學習過程中適時切入的評價是即時評價,便于學習者認識已經發生的學習過程的價值[3]。而經過長時間的課程學習后,學生一定會在態度、行為以及認知層面發生變化[4],這種變化可以通過終結性評價方法獲得,授課教師可以通過對終結性評價的分析為課程教學改革提供必要的依據。
該課程學業成績由平時成績、個人項目兩部分組成,其中平時成績占60%、個人項目得分占40%。平時成績由考勤、實驗、小組項目展示得分組成,分別占10%、60%、30%。個人項目評分由答辯組每位教師根據學生個人項目完成情況和答辯情況依據評分量表給分。實驗成績由授課教師根據學生實驗完成情況和實驗報告撰寫情況給分。小組項目展示按照教學進度安排分4次進行,其均值計入該課程的學業成績。每次小組項目展示得分包括教師評價、學習小組間評價、學習小組內評價等3個部分,分別占60%、20%、20%,都采用相應的評價量表評分。在“小組項目展示”評價中,“教師評價”由教師依據小組完成項目情況和個人在小組項目開發中的表現進行評定;“學習小組間評價”是各小組對其他小組的項目完成質量進行評價;“學習小組內評價”是各小組成員根據各組員對本小組貢獻的情況進行互評,評價組員的參與意識。
Java EE軟件開發技術課程是學校計算機科學與技術服務外包方向的一門專業必修課,筆者對該專業的2013級、2014級學生進行了2輪的Java EE軟件開發技術課程教學改革試驗,教學滿意度和學業成績均有了明顯的提升,特別是中等生成績的提升尤為突出。該課程改革收到了良好的效果,激發了學生的學習興趣,提高了學生分析問題、解決問題的能力,其編程能力也有了明顯提升,為后續課程的學習打下了良好的基礎。此外,還培養了學生語言表達能力、溝通能力以及協作意識,為今后的工作奠定了一定的基礎。