張蕾,李艷梅,周文科,崔娟娟
摘? 要: 針對程序設(shè)計類課程存在的共性問題,以“Java程序設(shè)計”課程為例,提出了基于成果導(dǎo)向教育理念的課程教學(xué)改革。根據(jù)學(xué)生培養(yǎng)目標(biāo)和畢業(yè)要求,反向設(shè)計課程的教學(xué)目標(biāo);以案例為驅(qū)動重新設(shè)計教學(xué)內(nèi)容,借助信息技術(shù)實施翻轉(zhuǎn)式課堂教學(xué);以O(shè)BE理念構(gòu)建課程評價體系,為課程后續(xù)的持續(xù)改進(jìn)指明方向。實踐證明,相較以往的課程教學(xué),基于成果導(dǎo)向的“Java程序設(shè)計”課程,教學(xué)效果有了很大的提升。
關(guān)鍵詞: 成果導(dǎo)向; Java程序設(shè)計; 教學(xué)改革; 評價
中圖分類號:G642? ? ? ? ? 文獻(xiàn)標(biāo)識碼:A? ? ?文章編號:1006-8228(2022)01-113-04
Construction of outcome based programming courses
Zhang Lei, Li Yanmei, Zhou Wenke, Cui Juanjuan
(Guangling College, Yangzhou University, Yangzhou, Jiangsu 225000, China)
Abstract: Aiming at the common problems in programming courses, taking "Java programming" course as an example, this paper puts forward the teaching reform with the concept of outcome based education for the programming courses. The courses' teaching objectives are designed reversely according to students' training goal and graduation requirements; driven by cases, the teaching contents are redesigned to put flipped classroom into effect with the help of information technology; the course evaluation system is constructed with the concept of outcome based education to point out the direction for the subsequent sustainable improvement of the courses. Practice proved that compared with the previous course teaching, the teaching effect of the outcome based "Java programming" course has been greatly improved.
Key words: outcome based; Java programming; teaching reform; evaluation
0 引言
2013年6月,我國被接納為《華盛頓協(xié)議》簽約成員。2018年我國教育部發(fā)布了《普通高等學(xué)校本科專業(yè)類教學(xué)質(zhì)量國家標(biāo)準(zhǔn)》,其所遵循“以學(xué)生為中心”、“成果導(dǎo)向”和“持續(xù)改進(jìn)”的教育理念。隨著該標(biāo)準(zhǔn)的實施和專業(yè)認(rèn)證的推行,成果導(dǎo)向教育理念在國內(nèi)得到了廣泛應(yīng)用。該理念要求教師在教學(xué)前對學(xué)生畢業(yè)時應(yīng)達(dá)到的能力及水平有著清楚的認(rèn)知,并選擇適宜的教學(xué)方法、設(shè)計教學(xué)過程讓學(xué)生達(dá)到預(yù)期的目標(biāo)[1]。該理念提倡教學(xué)應(yīng)以學(xué)生為中心,根據(jù)培養(yǎng)目標(biāo)和畢業(yè)要求反向設(shè)計課程教學(xué)目標(biāo)、教學(xué)內(nèi)容、教學(xué)方法及教學(xué)評價模式等。這樣的教學(xué)模式更突出學(xué)生在學(xué)習(xí)中的主體地位,更關(guān)注學(xué)生學(xué)習(xí)后所具備的能力,有利于創(chuàng)新型、應(yīng)用型、復(fù)合型人才的培養(yǎng)。
程序設(shè)計類課程是計算機專業(yè)學(xué)習(xí)的基石,是培養(yǎng)學(xué)生計算思維、程序設(shè)計能力、解決復(fù)雜工程問題能力的重要途徑。然而,以往的程序設(shè)計類課程的教學(xué)多拘泥于程序語言本身,缺少對學(xué)生科學(xué)思維能力的訓(xùn)練;課程的實踐教學(xué)多以糾錯性實驗和驗證性實驗為主,缺少綜合性和設(shè)計性內(nèi)容,實踐教學(xué)還停留在淺層教學(xué),不利于學(xué)生利用綜合知識解決復(fù)雜問題能力的培養(yǎng)[2]。
本文以《Java程序設(shè)計》課程為例,以成果導(dǎo)向教育理念為指導(dǎo)思想,反向設(shè)計課程的教學(xué)目標(biāo)、教學(xué)模式及評價等過程,為解決上述的實際問題提供一些切實可行的方法。
1 成果導(dǎo)向教育對課程的要求
成果導(dǎo)向教育(Outcomes-Based Education,簡稱OBE),是指以學(xué)生的產(chǎn)出為目標(biāo)來進(jìn)行教學(xué)設(shè)計和實施,對照學(xué)生預(yù)期學(xué)習(xí)成果并持續(xù)改進(jìn)教學(xué)過程。該理念強調(diào)學(xué)生預(yù)期學(xué)習(xí)成果的確定、通過什么方式幫助學(xué)生達(dá)到預(yù)期目標(biāo)以及達(dá)成度的評價[3]。
首先要考慮預(yù)期學(xué)習(xí)成果該如何確定。學(xué)習(xí)成果的確定要充分考慮國家、社會和行業(yè)、用人單位等外部的需求和期望,根據(jù)本專業(yè)畢業(yè)生五年左右應(yīng)達(dá)到的職業(yè)和專業(yè)成就確定專業(yè)人才培養(yǎng)目標(biāo),依據(jù)培養(yǎng)目標(biāo),細(xì)化畢業(yè)要求,并將畢業(yè)要求逐條地落實到具體的每一門課程中[4]。
培養(yǎng)目標(biāo)(Program Objective,PO)主要包括學(xué)生的知識、能力和素質(zhì)這三個方面。知識結(jié)構(gòu)包含:PO1—自然科學(xué)知識,PO2—專業(yè)知識。能力結(jié)構(gòu)包含:PO3—獲取知識的能力,PO4—分析問題和解決問題的能力,PO5—團隊合作和組織管理的能力。素質(zhì)結(jié)構(gòu)包含:PO6—科學(xué)文化素養(yǎng)和職業(yè)道德,PO7—國際視野和創(chuàng)新精神。
以揚州大學(xué)廣陵學(xué)院為例,計算機科學(xué)與技術(shù)專業(yè)將培養(yǎng)目標(biāo)細(xì)分為12條畢業(yè)要求。Java程序設(shè)計課程支撐培養(yǎng)目標(biāo)PO2、PO4和PO5,支撐四個畢業(yè)要求。①GR1(能夠?qū)?shù)學(xué)、自然科學(xué)、工程基礎(chǔ)和專業(yè)知識用于解決計算機及應(yīng)用領(lǐng)域內(nèi)的復(fù)雜工程問題)的指標(biāo)點GR1.2:掌握計算機工程基礎(chǔ)知識,了解計算機解決復(fù)雜工程問題的基本要求和基本方法。②GR2(能夠應(yīng)用數(shù)學(xué)、自然科學(xué)和工程科學(xué)的基本原理,識別、表達(dá)并通過文獻(xiàn)研究分析計算機及應(yīng)用領(lǐng)域的復(fù)雜工程問題,以獲得有效結(jié)論)的指標(biāo)點GR2.2:針對分解后的計算機領(lǐng)域復(fù)雜工程問題進(jìn)行表達(dá)和建模。③GR5(能夠針對復(fù)雜工程問題,開發(fā)、選擇與使用恰當(dāng)?shù)募夹g(shù)、資源、現(xiàn)代工程工具和信息技術(shù)工具,包括對計算機及應(yīng)用領(lǐng)域復(fù)雜工程問題的預(yù)測與模擬,并能夠理解其局限性)的指標(biāo)點GR5.1:了解軟硬件設(shè)計與開發(fā)、系統(tǒng)設(shè)計分析等過程所需要的軟硬件開發(fā)環(huán)境與工具的最新發(fā)展,并掌握不同開發(fā)環(huán)境與工具的性能、特點和使用方法。④GR9:能夠在涉及多學(xué)科交叉的團隊中發(fā)揮個體專業(yè)特長,并能迅速融合到團隊中,具備團隊協(xié)作理念和大局意識。
基于OBE反向設(shè)計的理念,根據(jù)課程支撐的培養(yǎng)目標(biāo)和畢業(yè)要求,將課程的教學(xué)目標(biāo)確定為:CO1,掌握J(rèn)ava語言的基本概念和語法,了解面向?qū)ο蟮奶攸c,掌握類和對象、繼承、多態(tài)、重載、重寫等基本概念、含義和實現(xiàn)方法;CO2,掌握面向?qū)ο蟪绦蛟O(shè)計方法,熟悉基本的算法,能根據(jù)問題正確選擇、組合算法;CO3,搭建開發(fā)環(huán)境、選擇工具,用Java語言進(jìn)行軟件開發(fā);CO4,培養(yǎng)計算思維、解決復(fù)雜工程問題的能力和創(chuàng)新能力;CO5,增強社會責(zé)任意識和表達(dá)交流能力,培養(yǎng)吃苦耐勞、團隊協(xié)作的精神。
《Java程序設(shè)計》課程內(nèi)容按知識點區(qū)別主要分為:CM1,Java系統(tǒng)環(huán)境概述;CM2,Java語言基礎(chǔ)知識;CM3,數(shù)組;CM4,字符串;CM5,面向?qū)ο螅篊M6,繼承與多態(tài)和CM7,高級應(yīng)用這7個模塊。各模塊內(nèi)容與課程目標(biāo)及課程支撐的培養(yǎng)目標(biāo)、畢業(yè)要求之間的關(guān)系如表1所示。
2 基于成果導(dǎo)向教學(xué)理念的課程教學(xué)改革
傳統(tǒng)的《Java程序設(shè)計》課程多是以老師講授程序語言語法點為主,學(xué)生演練為輔,課程的實驗多是驗證性實驗,難度較低。這樣的課程設(shè)計讓學(xué)生把更多的精力放在了學(xué)習(xí)語言本身上,卻忽略了對學(xué)生計算思維、程序設(shè)計能力和創(chuàng)新意識的培養(yǎng)[5]。為了改善這一現(xiàn)狀,依據(jù)課程教學(xué)目標(biāo),以成果導(dǎo)向教育理念為指導(dǎo),本課程對教學(xué)內(nèi)容、教學(xué)方法及教學(xué)模式都進(jìn)行了一定的改進(jìn)和創(chuàng)新。
2.1 案例驅(qū)動式教學(xué)
依據(jù)課程的教學(xué)目標(biāo)及支撐的畢業(yè)要求,以“程序設(shè)計為主線,問題為導(dǎo)向,案例為驅(qū)動”為教學(xué)設(shè)計理念,重新梳理課程的教學(xué)內(nèi)容。將具體的實踐任務(wù)與課程理論知識的學(xué)習(xí)相結(jié)合,讓學(xué)生在解決實際問題的過程中理解程序設(shè)計的思路,從而提升學(xué)生的邏輯思維能力和實踐創(chuàng)新能力。Java程序設(shè)計課程的內(nèi)容可以細(xì)分為五個部分:基礎(chǔ)語法、面向?qū)ο?、繼承與多態(tài)、網(wǎng)絡(luò)編程和數(shù)據(jù)庫連接,網(wǎng)絡(luò)編程和數(shù)據(jù)庫連接是《Java程序設(shè)計》的高級應(yīng)用部分。具體的內(nèi)容及案例設(shè)計見表2所示。比如在講解數(shù)組查找、排序知識點時,將學(xué)習(xí)情景設(shè)定在本班同學(xué)學(xué)號姓名的查找、課程成績的排序方面,通過熟悉的查找、排序情景讓學(xué)生理解數(shù)組查找、排序的作用及日常應(yīng)用。比如,通過實際生活中的動物分類的講解讓學(xué)生理解繼承的概念。同時,在講解課程內(nèi)容時,注重對相關(guān)算法、程序設(shè)計的講解,在解決問題的過程中讓學(xué)生掌握程序設(shè)計的一般過程。
2.2 翻轉(zhuǎn)課堂式教學(xué)
翻轉(zhuǎn)課堂起源于2007年的美國科羅拉多州落基山,是由林地公園高中的兩位化學(xué)教師Jon Bergmann和Aaron Sams開創(chuàng)。翻轉(zhuǎn)課堂是一種教學(xué)手段,它借助信息技術(shù)手段改變了傳統(tǒng)的教學(xué)形式:將知識的學(xué)習(xí)放在了課堂外,課堂內(nèi)主要完成知識的內(nèi)化。在這樣的教學(xué)模式中,教師的角色由內(nèi)容的呈現(xiàn)者轉(zhuǎn)變?yōu)榱藢W(xué)習(xí)的教練,通過多種方式引導(dǎo)學(xué)生成為更好的學(xué)習(xí)者。Java程序設(shè)計課程是程序設(shè)計類課程,除了講授語言本身的知識以外,課程教學(xué)的重點應(yīng)該放在訓(xùn)練學(xué)生思維能力、提高學(xué)生程序設(shè)計能力方面。顯然,知識灌輸式教學(xué)是達(dá)不到這樣的目標(biāo)。因此,Java程序設(shè)計課程教學(xué)采用了翻轉(zhuǎn)課堂的教學(xué)模式。
課前,教師將制作好的教學(xué)視頻、課件、教學(xué)案例、參考資料等資源上傳到網(wǎng)絡(luò)平臺供學(xué)生們學(xué)習(xí)。為了引導(dǎo)學(xué)生主動探究、合作交流,在課前的任務(wù)中設(shè)置了一系列相關(guān)的問題及項目,讓學(xué)生合作完成。課堂內(nèi),教師主要針對課前學(xué)習(xí)存在的問題及項目與學(xué)生進(jìn)行互動交流,并強化訓(xùn)練實現(xiàn)對知識的內(nèi)化。翻轉(zhuǎn)課堂式教學(xué)混合了直接講解與建構(gòu)主義學(xué)習(xí)的教學(xué)模式,它真正地讓學(xué)生成為學(xué)習(xí)的主體,有效地激發(fā)了學(xué)生學(xué)習(xí)的主動性和積極性。
3 OBE達(dá)成度計算
培養(yǎng)目標(biāo)、畢業(yè)要求的指標(biāo)點達(dá)成度評價依賴于課程目標(biāo)的達(dá)成度,課程目標(biāo)的達(dá)成度依賴于課程的評價方式[6]。Java程序設(shè)計課程的評價主要由期末考試、平時實驗、綜合設(shè)計三個方式來衡量,其對應(yīng)的達(dá)成度計算如表3-表5所示。筆者以2021年春學(xué)期的Java程序設(shè)計課程實踐的數(shù)據(jù)來說明課程OBE達(dá)成度的計算方法。
為了讓學(xué)生掌握面向?qū)ο蟪绦蛟O(shè)計的方法,訓(xùn)練學(xué)生的思維能力,期末考試的試題主要是以程序填涂、程序設(shè)計題為主,平時的實驗、綜合設(shè)計多是以設(shè)計型、綜合型、創(chuàng)新型實驗為主。在各個環(huán)節(jié)評價的基礎(chǔ)上,可以得出課程達(dá)成度評價,并為課程后續(xù)的持續(xù)改進(jìn)指明方向。課程達(dá)成度評價具體情況見表6。
4 結(jié)束語
自從2018年Java程序設(shè)計課程進(jìn)行了基于成果導(dǎo)向理念的教學(xué)改革,相較于以往的課程教學(xué),課程的教學(xué)效果有了很大的提升,課程的OBE達(dá)成度從原來的78%上升到了85%以上,學(xué)生的實踐能力得到了很大的提升。將成果導(dǎo)向教育理念應(yīng)用于程序設(shè)計類課程有利于調(diào)動學(xué)生的積極性,讓學(xué)生真正地成為學(xué)習(xí)的主人,極大地提高了學(xué)生的自主學(xué)習(xí)能力和實踐創(chuàng)新能力。
參考文獻(xiàn)(References):
[1] Spady G. Outcome-based education critical issues and answer[M].Arlington Virginia: American Association of School Administrators,1994:1-25
[2] 盧瑾,任宏亮.OBE理念下程序設(shè)計實驗教學(xué)體系改革探索[J].計算機教育,2020(7):157-161
[3] 王金旭,朱正偉,李茂國.成果導(dǎo)向:從認(rèn)證理念到教學(xué)模式[J].中國大學(xué)教學(xué),2017(6):77-82
[4] 李志義.解析工程教育專業(yè)認(rèn)證的成果導(dǎo)向理念[J].中國高等教育,2014,17:7-10
[5] 于延,李英梅.基于PBL和OBE融合的程序設(shè)計實驗金課建設(shè)研究——以高級語言程序設(shè)計實驗課程為例[J].計算機教育,2020(3):43-47
[6] 吳勁,周帆,王瑞錦,等.OBE模式下的程序設(shè)計與算法基礎(chǔ)課程改革探索[J].計算機教育,2019(11):86-90