屈微++姚琳++武航星++張敏++萬亞東
摘 要:通過分析高校計(jì)算機(jī)教育的培養(yǎng)目標(biāo),提出基于游戲編程的計(jì)算機(jī)實(shí)踐教學(xué)模式,具體說明在新的實(shí)踐教學(xué)中如何實(shí)現(xiàn)計(jì)算思維和工程能力的培養(yǎng),結(jié)合開設(shè)的具體項(xiàng)目設(shè)計(jì)及實(shí)現(xiàn)過程,說明新實(shí)踐教學(xué)模式實(shí)施的效果并總結(jié)課程反饋情況。
關(guān)鍵詞:實(shí)踐教學(xué);程序設(shè)計(jì);計(jì)算思維;工程能力;量規(guī)
0 引 言
傳統(tǒng)的程序設(shè)計(jì)實(shí)踐課程教學(xué)目標(biāo)通常設(shè)定為綜合已學(xué)習(xí)的理論知識(shí),提高編程解決實(shí)際應(yīng)用問題的能力,初步掌握計(jì)算機(jī)應(yīng)用程序設(shè)計(jì)的一般方法?;诖四繕?biāo)的教學(xué)設(shè)計(jì)存在以下問題:學(xué)生對教師給定的題目進(jìn)行驗(yàn)證性編程,題目只是加大了平時(shí)上機(jī)實(shí)驗(yàn)難度和程序代碼量,缺乏思維性訓(xùn)練;課堂理論教學(xué)加上機(jī)實(shí)驗(yàn)的傳統(tǒng)教學(xué)形式使得知識(shí)點(diǎn)僵化,學(xué)生創(chuàng)新能力培養(yǎng)不足;教師根據(jù)學(xué)生出勤和實(shí)踐報(bào)告給出評分,無法實(shí)現(xiàn)過程表現(xiàn)性評價(jià)和有效激勵(lì)。
1 高校計(jì)算機(jī)教育培養(yǎng)目標(biāo)
隨著計(jì)算機(jī)技術(shù)的發(fā)展,高等學(xué)校計(jì)算機(jī)教育不再是計(jì)算機(jī)普及教育和單一技能傳授,需要轉(zhuǎn)變?yōu)槟芰?、素質(zhì)、思維和文化的綜合培養(yǎng),特別要著眼于以下兩個(gè)方面。
一是計(jì)算思維的培養(yǎng)。計(jì)算機(jī)技術(shù)已經(jīng)發(fā)展到“復(fù)雜信息系統(tǒng)時(shí)代”,計(jì)算機(jī)教育的目標(biāo)不再是傳播計(jì)算機(jī)技術(shù),而是傳播計(jì)算思維,即“通過計(jì)算機(jī)教育,學(xué)生學(xué)會(huì)如何像計(jì)算機(jī)科學(xué)家那樣思考”[1]。教育部制定的《大學(xué)計(jì)算機(jī)基礎(chǔ)課程教學(xué)基本要求(2015)》提出大學(xué)計(jì)算機(jī)基礎(chǔ)教學(xué)的總體目標(biāo)是“大學(xué)生通過學(xué)習(xí)應(yīng)能夠理解計(jì)算學(xué)科的基本知識(shí)和方法,掌握基本的計(jì)算機(jī)應(yīng)用能力,同時(shí)具備一定的計(jì)算思維能力和信息素養(yǎng)?!庇?jì)算機(jī)程序設(shè)計(jì)課程不再局限于對程序執(zhí)行性能、代碼復(fù)用性等編程技術(shù)的訓(xùn)練,而要關(guān)注問題的計(jì)算機(jī)建模,引導(dǎo)并訓(xùn)練學(xué)生利用計(jì)算思維提高解決專業(yè)問題的能力,培養(yǎng)學(xué)生跨學(xué)科范圍的“計(jì)算”意識(shí),自主地將計(jì)算思維應(yīng)用到本專業(yè)領(lǐng)域的學(xué)習(xí)研究中,提高專業(yè)相關(guān)知識(shí)發(fā)現(xiàn)、問題處理和科學(xué)創(chuàng)新能力。
二是工程能力的培養(yǎng)。2016年教育部《中國工程教育質(zhì)量報(bào)告》要求“高等教育‘回歸工程,把學(xué)生能力培養(yǎng)當(dāng)做工程教育質(zhì)量之本,指出學(xué)生工程實(shí)踐能力薄弱是當(dāng)前工程教育的顯性‘短板。工程教育應(yīng)切實(shí)扭轉(zhuǎn)科學(xué)化傾向,把學(xué)生能力培養(yǎng)當(dāng)做質(zhì)量之本?!备叩冉逃鳛榕囵B(yǎng)創(chuàng)新型工程科技人才的重要平合,其模式正在轉(zhuǎn)變?yōu)楣こ谭妒较碌墓こ探逃J?。此外,新一輪科技革命和產(chǎn)業(yè)變革對高等工程教育提出了新的、更高的要求,需要加強(qiáng)“知識(shí)結(jié)構(gòu)、能力結(jié)構(gòu)、創(chuàng)新素質(zhì)和創(chuàng)新精神” 4個(gè)方面素質(zhì)的培養(yǎng),尤其需要具備跨界創(chuàng)新能力的工程技術(shù)人才,這類人才需要跨學(xué)科、跨專業(yè)和跨文化的“跨界培養(yǎng)”[2]。
2 基于游戲編程的計(jì)算機(jī)實(shí)踐教學(xué)模式建立
近年來,國內(nèi)計(jì)算機(jī)教育界對計(jì)算機(jī)游戲形式教學(xué)展開研究,一些學(xué)者探討了這種形式對程序設(shè)計(jì)課程教學(xué)的影響[3]。2013年開始,我們對計(jì)算機(jī)實(shí)踐課程開展全面教學(xué)改革,探索一種基于游戲編程、突出計(jì)算思維和工程能力一體化培養(yǎng)的計(jì)算機(jī)實(shí)踐新教學(xué)模式。新教學(xué)模式基本思路是訓(xùn)練學(xué)生運(yùn)用計(jì)算機(jī)思維,遵循軟件開發(fā)流程,借助程序設(shè)計(jì)語言將計(jì)算問題轉(zhuǎn)變?yōu)橛?jì)算機(jī)程序,實(shí)現(xiàn)解決各學(xué)科領(lǐng)域的計(jì)算問題?;谟螒蚓幊痰挠?jì)算機(jī)實(shí)踐,設(shè)定的待解決問題為編寫一個(gè)可運(yùn)行的游戲,即基于游戲和動(dòng)畫界面的C、C++和Java語言綜合實(shí)驗(yàn)教學(xué)平臺(tái),開發(fā)互動(dòng)式游戲或應(yīng)用系統(tǒng)。教學(xué)改革包括設(shè)立計(jì)算思維和工程能力一體化培養(yǎng)的教學(xué)目標(biāo),確定以計(jì)算思維模式為主的教學(xué)內(nèi)容,采用基于教學(xué)游戲開發(fā)流程的教學(xué)形式和配套包含表現(xiàn)性評價(jià)的考核體系。新教學(xué)模式建立思路和過程如圖1所示。
3 新實(shí)踐教學(xué)模式中計(jì)算思維和工程能力的培養(yǎng)
3.1 教學(xué)目標(biāo)
新實(shí)踐教學(xué)模式的總體教學(xué)目標(biāo)是突出計(jì)算思維和工程能力培養(yǎng),使學(xué)生了解計(jì)算思維的概念,建立運(yùn)用計(jì)算思維解決問題的思想,掌握游戲編程中典型計(jì)算思維模式的內(nèi)涵及實(shí)現(xiàn)算法,并能夠?qū)⒂螒蛑械挠?jì)算思維模式擴(kuò)展應(yīng)用到專業(yè)問題的解決和建模仿真中;使學(xué)生建立初步的工程意識(shí),了解工程技術(shù)人才應(yīng)具備的基本素質(zhì),掌握工程項(xiàng)目控制流程、團(tuán)隊(duì)合作和協(xié)調(diào)分工的工程實(shí)施方法。
3.2 教學(xué)內(nèi)容和形式
新實(shí)踐教學(xué)模式的教學(xué)內(nèi)容包括計(jì)算思維模式和軟件工程基礎(chǔ)理論兩個(gè)方面。
國際教育技術(shù)協(xié)會(huì)(ISTE)和計(jì)算機(jī)科學(xué)教師聯(lián)合會(huì)(CSTA)提出了建立計(jì)算思維的可操作定義,即在解決問題的過程中,如果包含下述特征,即體現(xiàn)出計(jì)算思維的建立[4]:①以使用計(jì)算機(jī)解決問題為目的,對待解決問題進(jìn)行規(guī)劃;②通過算法思維,即一系列有序步驟,自動(dòng)求解問題;③對一個(gè)問題求解的計(jì)算思維過程可以推廣和轉(zhuǎn)化到更多問題求解。
計(jì)算思維模式可以進(jìn)行具體分類,包括碰撞、吸收、產(chǎn)生、拉、推、查找、輪詢檢測、協(xié)同擴(kuò)散、認(rèn)知/行為同步等[5],其中,前5種是基本計(jì)算思維模式,作為課程重點(diǎn)內(nèi)容。將計(jì)算思維模式實(shí)例化融入每個(gè)項(xiàng)目編程中作為可實(shí)施的具體教學(xué)內(nèi)容,見表1。各專業(yè)對計(jì)算思維模式的要求不同,還需要進(jìn)一步確定具體教學(xué)內(nèi)容。我們在實(shí)際應(yīng)用中初步實(shí)現(xiàn)了與自動(dòng)化專業(yè)過程控制建模仿真軟件Matlab的結(jié)合,與材料科學(xué)專業(yè)材料分析建模軟件Ansys的結(jié)合。
新教學(xué)模式中游戲項(xiàng)目的設(shè)計(jì)和實(shí)現(xiàn)過程是完整的軟件開發(fā)及運(yùn)行過程,將軟件工程的基本知識(shí)納入教學(xué)內(nèi)容,能夠?qū)崿F(xiàn)工程的概念和工程意識(shí)的建立并保證教學(xué)進(jìn)度的正常推進(jìn)。具體教學(xué)內(nèi)容側(cè)重開發(fā)流程和文檔編輯兩個(gè)方面,包括項(xiàng)目開發(fā)流程,即項(xiàng)目開發(fā)背景、需求分析、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、代碼實(shí)現(xiàn)及測試、打包部署等相關(guān)內(nèi)容以及經(jīng)典的瀑布模型[6]。
商業(yè)游戲生產(chǎn)基于軟件工程流程,屬于軟件開發(fā)范疇,但教學(xué)與商業(yè)開發(fā)不同,學(xué)生缺少開發(fā)經(jīng)驗(yàn),投入的時(shí)間精力不足,因此教學(xué)中應(yīng)精簡開發(fā)流程,建立一套以學(xué)生執(zhí)行為主、教師指導(dǎo)監(jiān)督的教學(xué)游戲開發(fā)流程,作為教學(xué)實(shí)施方法和推進(jìn)方式。教學(xué)游戲開發(fā)流程包括項(xiàng)目啟動(dòng)、項(xiàng)目運(yùn)行管理、項(xiàng)目質(zhì)量管理、項(xiàng)目驗(yàn)收評審4個(gè)環(huán)節(jié),在各個(gè)環(huán)節(jié)中教師和學(xué)生分擔(dān)不同的角色和任務(wù),兩者結(jié)合構(gòu)成完整的工程實(shí)施過程。學(xué)生處于主體地位,擔(dān)任項(xiàng)目開發(fā)的主要任務(wù),包括啟動(dòng)階段的部分任務(wù)以及運(yùn)行管理和質(zhì)量管理的全部任務(wù);教師承擔(dān)輔助角色,任務(wù)是題目審查和驗(yàn)收方案制訂。教學(xué)游戲開發(fā)流程及角色分配如圖2所示。endprint
為保證教學(xué)實(shí)施的有效性,適時(shí)增加中期檢查、預(yù)答辯等環(huán)節(jié),增進(jìn)組間的交流討論,有助于調(diào)整工程進(jìn)度和項(xiàng)目順利完成,同時(shí)可以提高學(xué)生對工程的控制意識(shí)和能力,幫助學(xué)生了解工業(yè)生產(chǎn)過程管理方式。
3.3 考核評價(jià)及激勵(lì)機(jī)制
教師應(yīng)建立與教學(xué)內(nèi)容相對應(yīng)的考核評價(jià)和激勵(lì)機(jī)制,包括以下幾方面。
(1)評價(jià)計(jì)算思維模式的使用:制訂項(xiàng)目中計(jì)算思維模式使用種類、次數(shù)、質(zhì)量和效果4個(gè)方面的量化指標(biāo),給出分級評分。
(2)評價(jià)項(xiàng)目最終成果:根據(jù)學(xué)生提交的游戲項(xiàng)目文檔,結(jié)合PPT答辯和成果展示,給出評分。
(3)評價(jià)課程中學(xué)生表現(xiàn):設(shè)計(jì)表現(xiàn)性評價(jià)方法,建立評價(jià)量規(guī)[7]。
(4)實(shí)施有效的激勵(lì)機(jī)制:采用組織競賽評獎(jiǎng)和作品展示方式,促進(jìn)學(xué)生相互競爭,激發(fā)學(xué)生的主動(dòng)性和積極性。
4 新實(shí)踐教學(xué)模式實(shí)施和效果
4.1 新教學(xué)模式實(shí)施
自動(dòng)化專業(yè)是工程性、實(shí)踐性和綜合性較強(qiáng)的工科專業(yè)。2016年暑期,我們選擇自動(dòng)化專業(yè)試點(diǎn)實(shí)施新教學(xué)模式。課程共3周,60學(xué)時(shí),授課對象是已修C語言程序設(shè)計(jì)的自動(dòng)化專業(yè)學(xué)生,具體實(shí)施過程如下。
(1)選擇結(jié)合自動(dòng)化專業(yè)的計(jì)算思維模式。將自動(dòng)化過程建模軟件Matlab與游戲編程中一致的計(jì)算思維模式實(shí)例化到實(shí)踐教學(xué)過程中,培養(yǎng)建立專業(yè)性計(jì)算思維。例如,Matlab編程中的矩陣處理與游戲編程中的二維和三維地圖建立具有一致性計(jì)算思維模式;自動(dòng)化過程控制仿真中消息傳遞和處理與游戲編程的碰撞計(jì)算思維模式具有一致性等。
(2)分組選題。按自愿原則建立合作式小組,自定組長,組長分配任務(wù)并帶領(lǐng)組員執(zhí)行各個(gè)階段的任務(wù)。教師對各組實(shí)行目標(biāo)管理,只檢查各組最終運(yùn)行結(jié)果。組內(nèi)具體運(yùn)作則由內(nèi)部自行協(xié)調(diào),教師只在必要時(shí)提出建議,培養(yǎng)學(xué)生的團(tuán)隊(duì)合作精神及協(xié)調(diào)工作能力。各組根據(jù)教師給定的范圍和建議,在規(guī)定時(shí)間內(nèi)選定題目,經(jīng)教師認(rèn)可啟動(dòng)項(xiàng)目。
(3)工程化項(xiàng)目管理。教師在實(shí)施選題、中期、預(yù)答辯、驗(yàn)收等環(huán)節(jié),引導(dǎo)學(xué)生遵循軟件工程思想,關(guān)注和控制工程進(jìn)度,分階段進(jìn)入開發(fā)的各環(huán)節(jié),在游戲開發(fā)過程中采用經(jīng)典軟件開發(fā)瀑布模型;從實(shí)體設(shè)計(jì)包括場景建立、地圖形成、精靈控制和效果添加,到代碼建立、修改運(yùn)行測試的軟件設(shè)計(jì),從無到有,最終形成一個(gè)分階段控制的工程。
(4)考核評價(jià)。強(qiáng)調(diào)工程意識(shí)的項(xiàng)目驗(yàn)收,教師對學(xué)生提交的項(xiàng)目文檔、PPT答辯和計(jì)算思維模式的量化應(yīng)用給出評分;對項(xiàng)目中的個(gè)人表現(xiàn)實(shí)施表現(xiàn)性評價(jià),綜合教師和同組成員之間兩方面評分,量規(guī)包括團(tuán)隊(duì)合作分、組員完成所承擔(dān)任務(wù)情況及質(zhì)量、是否盡了最大的努力、組員間合作時(shí)的表現(xiàn)、參與會(huì)議的出勤情況及發(fā)言情況等。
(5)通過各種形式展示優(yōu)秀作品,實(shí)現(xiàn)激勵(lì)機(jī)制并為課程實(shí)施的良性循環(huán)提供準(zhǔn)備。游戲平臺(tái)提供商評定優(yōu)秀作品并給予獎(jiǎng)金激勵(lì);將優(yōu)秀作品實(shí)踐報(bào)告整理修改,作為下一屆學(xué)生的項(xiàng)目參考案例文檔,并在課程網(wǎng)站宣傳和在微信公眾號(hào)推廣。
4.2 教學(xué)效果反饋
對參與課程的5個(gè)班150人實(shí)施全樣本問卷調(diào)查,發(fā)現(xiàn)認(rèn)為參加實(shí)踐課程對培養(yǎng)團(tuán)隊(duì)合作精神十分有效的占62.75%,一般有效的占29.41%,僅僅了解的占7.84%;對游戲編程中計(jì)算思維模式的體驗(yàn),認(rèn)為十分顯著的占64.71%,效果一般的占31.37%,不深刻的占3.92%;對使用C程序設(shè)計(jì)語言開發(fā)項(xiàng)目方面的成就感,認(rèn)為十分顯著的占66.67%,效果一般的占25.49%,不深刻的占7.84%。另外,要求每個(gè)學(xué)生項(xiàng)目驗(yàn)收報(bào)告中包括不少于800字的感受。粒子闖關(guān)游戲的設(shè)計(jì)者這樣描述其對計(jì)算思維模式學(xué)習(xí)和使用過程的感受:“……而粒子的跳躍更是超出了預(yù)計(jì),本以為設(shè)置碰撞就行,因?yàn)楦鱾€(gè)粒子之間存在的作用,所以粒子在木板上不是簡單的碰撞,而是在不停地上下抖動(dòng),顯然碰撞已經(jīng)不能適用。后來解決方案只能改變成與木板的距離,當(dāng)二者的距離足夠近時(shí)給予粒子跳躍的屬性”。磚塊大作戰(zhàn)小組學(xué)生的感受體現(xiàn)出其對工程概念的初步認(rèn)識(shí):“制訂目標(biāo)不能好高騖遠(yuǎn),一開始我們沒有按照一個(gè)固定的程序套路編寫,而是選擇設(shè)計(jì)自己的游戲,這使得我們在后來的工作中,在程序邏輯和實(shí)際編寫上都遇到不小的麻煩,帶來需要學(xué)習(xí)新東西的挑戰(zhàn)”。
以訪談形式收集教師對課程的反饋。參與實(shí)踐教學(xué)的教師認(rèn)為“與以往參與的學(xué)生相比,學(xué)生為了實(shí)現(xiàn)游戲編程中的功能,會(huì)主動(dòng)學(xué)習(xí)涉及的科學(xué)仿真建模和編程知識(shí)”。自動(dòng)化現(xiàn)代控制理論課程教師談到“本屆學(xué)生更容易理解自動(dòng)控制流程建立的思想,掌握過程模型的抽離方法,較往屆學(xué)生更快進(jìn)入控制理論學(xué)習(xí)”。
5 結(jié) 語
北京科技大學(xué)每年約有3 300名學(xué)生參加暑期實(shí)踐,參加計(jì)算機(jī)實(shí)踐的學(xué)生約為1 600名,占比約50%。計(jì)算機(jī)實(shí)踐分為程序設(shè)計(jì)類:VB程序設(shè)計(jì)(約120人)、C++和C程序設(shè)計(jì)(約1 200人)以及辦公軟件類:Office高級應(yīng)用(約280人);在教學(xué)開展過程中,探索建立基于游戲編程的計(jì)算機(jī)實(shí)踐教學(xué)模式,并在自動(dòng)化專業(yè)本科開展試點(diǎn)實(shí)施。通過教學(xué)結(jié)果數(shù)據(jù)統(tǒng)計(jì)和學(xué)生教師反饋表明,與以往枯燥抽象的實(shí)踐課程感受相比,新教學(xué)模式能夠提高參與者的興趣和主動(dòng)性,同時(shí)將計(jì)算思維向?qū)I(yè)領(lǐng)域擴(kuò)展,對專業(yè)課學(xué)習(xí)起到助力作用,達(dá)到計(jì)算思維和工程能力一體化培養(yǎng)的教學(xué)目標(biāo)。計(jì)算思維模式的細(xì)化、分類及量化評價(jià)是下一階段的研究內(nèi)容。
參考文獻(xiàn):
[1] Wing J M. Computational thinking[C]//Visual Languages and Human-Centric Computing. Washington D C: IEEE, 2011: 3.
[2] 周緒紅. 中國工程教育人才培養(yǎng)模式改革創(chuàng)新的現(xiàn)狀與展望: 在2015國際工程教育論壇上的專題報(bào)告[J]. 高等工程教育研究, 2016(1): 1-4.
[3] 牟琴.“輕游戲”對計(jì)算思維能力的培養(yǎng): 教育游戲?qū)Τ绦蛟O(shè)計(jì)基礎(chǔ)課程教學(xué)的影響[J]. 遠(yuǎn)程教育, 2011, 29(6): 94-101.
[4] Repenning A, Webb D C, Koh K H, et al. Scalable game design: A strategy to bring systemic computer science education to schools through game design and simulation creation[J]. Acm Transactions on Computing Education, 2015, 15(2):11-29.
[5] Koh K H, Basawapatna A, Nickerson H, et al. Real time assessment of computational thinking[C]// Visual Languages and Human-Centric Computing. Washington D C: IEEE, 2014: 49-52.
[6] 李發(fā)陵, 劉志強(qiáng), 張浩然, 等. 軟件工程[M]. 北京: 清華大學(xué)出版社, 2013: 111-178.
[7] 李雁冰. 課程評價(jià)論[M]. 上海: 上海教育出版社, 2002: 102-155.
(編輯:宋文婷)endprint