摘 要: 本文對計算機(jī)專業(yè)課程尤其是軟件類型課程的教學(xué)方法進(jìn)行了探討。基于問題的教學(xué),也稱作問題式學(xué)習(xí)在實踐教學(xué)過程中的應(yīng)用。以計算機(jī)專業(yè)核心課程——編譯原理為例,本文作者提出了一些問題式教學(xué)實踐的具體方法,并對PBL教學(xué)與傳統(tǒng)教學(xué)方法進(jìn)行了對比分析。
關(guān)鍵詞: PBL 計算機(jī)專業(yè) 計算機(jī)軟件教學(xué) 編譯原理
1.引言
當(dāng)前我國計算機(jī)軟件行業(yè)存在著大量人才缺口,但是,擺在中國軟件界和教育界面前的現(xiàn)實問題是,大量的畢業(yè)生面臨擇業(yè)困境,而大批IT企業(yè)卻難以招收到適用的人才。如何盡快協(xié)調(diào)教育與就業(yè)之間的矛盾,PBL(Problem-Based Learning)應(yīng)該是當(dāng)前計算機(jī)軟件教育的一個重要突破口。
軟件人才排在頭三位的專業(yè)技能:算法、數(shù)據(jù)、結(jié)構(gòu)編程。編譯系統(tǒng)是一個很經(jīng)典的、很成熟的軟件系統(tǒng),無論從其復(fù)雜度還是技術(shù)含量來說,都是很適合教學(xué)的系統(tǒng)。“編譯器的編寫涉及程序計算機(jī)體系結(jié)構(gòu)、設(shè)計語言、語言理論、算法和軟件工程等學(xué)科”,既有分析,又有綜合,所以是非常好的實現(xiàn)能力培養(yǎng)的專業(yè)課程。
好的軟件人才必須從程序級走向系統(tǒng)級。在程序設(shè)計、數(shù)據(jù)結(jié)構(gòu)與算法等課程后,還要從系統(tǒng)的級別上來對程序、算法的認(rèn)識進(jìn)行再提高。通過對編譯系統(tǒng)和操作系統(tǒng)的認(rèn)識和理解,能夠很好地提高學(xué)生的系統(tǒng)能力,
本文以計算機(jī)專業(yè)的核心課程《編譯原理》為例,對基于問題的教學(xué)模式進(jìn)行探討。
2.PBL教學(xué)方式的優(yōu)點
“基于問題的學(xué)習(xí)(Problem-Based Learning)”,簡稱PBL,它是一種主動學(xué)習(xí)模式。此方法強(qiáng)調(diào)以學(xué)生的主動學(xué)習(xí)為主,而不是傳統(tǒng)教學(xué)中強(qiáng)調(diào)的以教師講授為主,比如將學(xué)習(xí)與更大的問題掛鉤;使學(xué)習(xí)者投入于問題中;設(shè)計真實性任務(wù);鼓勵自主探究;激發(fā)和支持學(xué)習(xí)者的主動思維;鼓勵爭論;鼓勵對學(xué)習(xí)內(nèi)容和過程的反思,等等。其最終目標(biāo)是使學(xué)生成為能自主學(xué)習(xí)的人才。主要優(yōu)點如下:
(1)PBL教學(xué)是選擇貼近實際應(yīng)用的問題,這些問題對學(xué)生有一定的難度,能夠鍛煉學(xué)生解決問題的技能和思維能力。這樣就能確保學(xué)生在以后的工作和學(xué)習(xí)中將自身的能力有效地應(yīng)用到實際問題的解決中。
(2)要求學(xué)生以分組的方式來完成問題,使學(xué)生在探索研究過程中能充分地進(jìn)行討論和交流,學(xué)生是問題的解決者,PBL教學(xué)模式就是賦予學(xué)生自我學(xué)習(xí)的能力和培養(yǎng)他們獨立解決問題和團(tuán)隊合作的精神。
(3)PBL教學(xué)實踐性很強(qiáng),傳統(tǒng)的先理論后實踐的教學(xué)模式很難滿足模擬現(xiàn)實軟件項目開發(fā)的流程,可以考慮采用現(xiàn)在很有效的“理論、實踐一體化”教學(xué)模式,以便于項目任務(wù)的分解和實現(xiàn)。
3.基于PBL的編譯原理教學(xué)模式的設(shè)計與開展
3.1明確《編譯原理》的課程目標(biāo)
編譯原理課程中有很多經(jīng)典的算法,教師應(yīng)讓學(xué)生采用軟件工程的思想方法開發(fā)一小型的算法類軟件項目,全面體會軟件工程的思想,深刻理解所學(xué)算法對其在軟件設(shè)計中的幫助,以及對今后工作的指導(dǎo)作用,另要求在開發(fā)的每個階段都要編寫相應(yīng)文檔,課堂上隨機(jī)點取多名學(xué)生上講臺講解設(shè)計思路,教師引導(dǎo)學(xué)生共同分析,最終使學(xué)生具備系統(tǒng)全面的代碼編寫能力和開發(fā)文檔編寫能力。
3.2選定問題
選定問題是PBL教學(xué)活動開展的前提,我們應(yīng)該選擇本課程的典型算法,把它們當(dāng)作一個個小型的軟件項目提出并處理。
3.3制定問題(項目)開發(fā)計劃
教師在分組后和各組成員一起討論確定問題的主要研究,分析問題解決過程中可能遇到的難點,任務(wù)怎么分配,驗收方式等,回答成員提出的問題,給組長以一定的權(quán)利及充分的支持。
項目開發(fā)詳細(xì)計劃制定前,教師應(yīng)針對各小組的問題提出指導(dǎo)性的要求,然后要求各小組獨立完成《問題目標(biāo)與開發(fā)思路》文檔。接著要求學(xué)生分組討論問題的實際可行性,寫出《可行性研究報告》文檔,這一階段,教師要能指導(dǎo)學(xué)生目前不是具體解決某個問題,而是研究問題的范圍,分析這個問題是否值得去探索,是否有實際可行的解決辦法。教師應(yīng)先充當(dāng)系統(tǒng)分析員的角色在課上分析一份可行性研究報告,估計問題的成本和效益,并且在此基礎(chǔ)上更具體、更準(zhǔn)確地確定問題的目標(biāo)和規(guī)模。接下來要求學(xué)生分組通過各種渠道搜集資料,完成《問題需求分析》文檔。這一階段,教師仍然要引導(dǎo)學(xué)生不要具體解決某個問題,而要確定為了解決這個問題,必須做什么?主要是確定所探索的問題必須具備哪些功能。
完成了以上幾個階段后,學(xué)生小組開始制定詳細(xì)開發(fā)計劃,計劃的內(nèi)容主要包括:對問題學(xué)習(xí)和資料搜集所需的時間和開展對應(yīng)的活動,小組成員的具體任務(wù)分配,整個問題的開發(fā)進(jìn)程安排。計劃應(yīng)當(dāng)是小組成員共同分析問題需求的基礎(chǔ)上,討論、協(xié)商確定的,教師應(yīng)在此階段重點檢查小組開發(fā)計劃的合理性及可行性,為后面問題的具體設(shè)計和解決打好基礎(chǔ)。
3.4問題的詳細(xì)設(shè)計方案與代碼實現(xiàn)
這個階段問題小組需要面對的是應(yīng)該如何解決這個問題,在小組成員的充分討論后,拿出一個最佳方案后就得出該軟件的結(jié)構(gòu),確定問題的模塊組成和各個模塊間的關(guān)系,小組完成《概要及詳細(xì)設(shè)計說明書》并上交。
接著負(fù)責(zé)各個專門模塊開發(fā)的小組成員詳細(xì)設(shè)計每一個模塊,并對數(shù)據(jù)的結(jié)構(gòu)進(jìn)行設(shè)計并提交《模塊詳細(xì)設(shè)計說明書》。然后根據(jù)選擇的算法流程來完成代碼編寫、測試、集成等開發(fā)工作。
這一階段是PBL教學(xué)模式的主體,基本上學(xué)生軟件開發(fā)所需要的技能和知識的掌握是在這一階段完成的。教師在這一階段起著很重要的作用,要為學(xué)生答疑解惑,還要及時發(fā)現(xiàn)問題并能引導(dǎo)學(xué)生如何去解決問題。要根據(jù)具體教學(xué)目標(biāo)的要求,重點進(jìn)行算法指導(dǎo)和協(xié)作開發(fā)方面的指導(dǎo),還要多加鼓勵學(xué)生利用圖書館、網(wǎng)絡(luò)等資源自主的學(xué)習(xí)。
3.5交流與評價
問題完成后,可以組織各種活動來對學(xué)生作品進(jìn)行展示,如進(jìn)行問題答辯,問題評比等活動。通過這樣的活動讓學(xué)生能交流學(xué)習(xí)過程中的經(jīng)驗和體會。
最后學(xué)生完成《問題(項目)開發(fā)報告》,并對整個問題(項目)開發(fā)過程作出自我分析和自我總結(jié),教師對問題進(jìn)行評價。
4.PBL教學(xué)與傳統(tǒng)教學(xué)方法的比較
5.結(jié)語
我們基于PBL教學(xué)模式在編譯原理課程教學(xué)上的嘗試已取得初步成果,我們在教學(xué)中不僅出色地完成了教學(xué)任務(wù),而且使學(xué)生對軟件方面所學(xué)的知識進(jìn)行了較高層次的概括與總結(jié)。問題完成之后,學(xué)生已經(jīng)基本能夠進(jìn)行獨立的軟件開發(fā)。PBL教學(xué)模式能極大地鍛煉學(xué)生的自主學(xué)習(xí)能力。以問題的設(shè)計與代碼實現(xiàn)階段為例,學(xué)生不僅要運用到編譯的知識,而且要綜合運用軟件工程、數(shù)據(jù)結(jié)構(gòu)等其他課程知識來分析解決問題,真正做到了學(xué)以致用。因此,證明基于問題的教學(xué)是一個能夠幫助學(xué)生提高專業(yè)素質(zhì)的教學(xué)模式。
相信隨著教師教學(xué)水平的提高和教學(xué)手段的改進(jìn),PBL教學(xué)模式將有廣闊的發(fā)展前景。
參考文獻(xiàn):
[1]藍(lán)進(jìn).PBL教學(xué)法在市場營銷專業(yè)實訓(xùn)中的應(yīng)用[J].教育與教學(xué)研究,2009,(05).
[2]劉景福,鐘志賢.基于項目的學(xué)習(xí)模式研究(PBL)[J].長春:外國教育研究,2002,(11).
[3]唐瑋,張麗英.PBL模式在會計基礎(chǔ)教學(xué)中的應(yīng)用[J].合作經(jīng)濟(jì)與科技,2010,(04).
[4]張小玲.以問題為先導(dǎo)的教學(xué)模式在眼科學(xué)教學(xué)中的應(yīng)用研究[J].西北醫(yī)學(xué)教育,2009,(02).
[5]肖波,尹憲明,蔡小紅.康復(fù)治療技術(shù)專業(yè)臨床醫(yī)學(xué)課程教學(xué)改革的實踐與探索[J].衛(wèi)生職業(yè)教育,2008,(23).