黃顯寧,陽 光,印 東,劉毅文
(懷化學(xué)院 計算機科學(xué)與工程學(xué)院,湖南 懷化 418008)
數(shù)十年前,錢學(xué)森問:“為什么我們學(xué)??偸桥囵B(yǎng)不出杰出的人才”,過去我國沒能發(fā)展起來的一個重要原因就是沒有一所大學(xué)能夠按照培養(yǎng)科學(xué)技術(shù)發(fā)明創(chuàng)造人才模式去辦學(xué),沒有自己獨特的創(chuàng)新的東西[1]。國內(nèi)培養(yǎng)人才與經(jīng)過國外系統(tǒng)教育培養(yǎng)出來的人才在創(chuàng)新能力上存在差距,為此國家召集了大批的專家學(xué)者展開研討,就如何提高高校人才創(chuàng)新素養(yǎng)展開討論,同時制定了一系列政策措施,例如開展創(chuàng)新創(chuàng)業(yè)教育,鼓勵在校學(xué)生自主創(chuàng)業(yè),高校挑戰(zhàn)杯活動,開設(shè)創(chuàng)新創(chuàng)業(yè)教育課程,以及各類創(chuàng)新創(chuàng)業(yè)競賽活動等,其目的在于提高在校學(xué)生在項目實訓(xùn)上的創(chuàng)新能力。
創(chuàng)新教育的本質(zhì)在于對學(xué)習(xí)者的教育,而不是對創(chuàng)新項目的培養(yǎng),開設(shè)創(chuàng)新創(chuàng)業(yè)教育是為了在傳授創(chuàng)業(yè)知識的同時,培養(yǎng)學(xué)生的創(chuàng)新意識。本文通過對計算機課堂教學(xué)實踐的研究,希望能夠?qū)?chuàng)新創(chuàng)業(yè)教育融入高校日常教學(xué)活動中去,采用理論加實訓(xùn)“雙螺旋”式的教學(xué)模式,為社會輸送一批高素質(zhì)人才。普通高校不同于頂尖院校,著重培養(yǎng)的是學(xué)生的實踐能力、動手能力,將在課堂上學(xué)習(xí)到的理論知識運用到實踐中去,實驗室、課外基地建設(shè)與教學(xué)是高校培養(yǎng)學(xué)生素質(zhì)的重要一環(huán),通過課外基地讓學(xué)生組隊參與實驗,提供比賽、學(xué)習(xí)、互助的平臺,提高學(xué)生的團隊協(xié)作能力并參與企業(yè)的團隊開發(fā)工作。
計算機專業(yè)教學(xué)邏輯性較強,知識一環(huán)扣一環(huán),同時注重實踐能力,邏輯性不強同時又不擅動手的學(xué)生在學(xué)習(xí)過程中一直感覺很吃力,主要原因在于:
(1)填鴨式教學(xué)。高等教育基本上是在有限時間內(nèi)完成基本的教學(xué)任務(wù),教師課上為完成基本的教學(xué)任務(wù),需要將一些難懂的知識點壓縮,基本上是“滿堂灌”的現(xiàn)狀。學(xué)生需要提前預(yù)習(xí)或課后深入了解,但大部分學(xué)生未能達到這種自覺程度。因此,一堂課下來,許多學(xué)生仍是聽了個大概,沒有掌握知識點[2]。
(2)偏重語法教學(xué)。課程體系結(jié)構(gòu)設(shè)計中,重理論,輕應(yīng)用,重傳授知識,輕能力培養(yǎng),忽視學(xué)生的編程動手能力考查。人才的培養(yǎng)模式依舊停留在專才教育上,表現(xiàn)在重視理論學(xué)習(xí),輕視學(xué)生綜合素質(zhì)培養(yǎng),尤其是學(xué)生的思維能力、創(chuàng)造能力、動手能力。計算機專業(yè)很多學(xué)科都具有邏輯性,需要上機編程實踐才能加深對知識點的理解,例如數(shù)據(jù)結(jié)構(gòu)、算法設(shè)計與分析、形式語言與自動機、匯編語言等邏輯性強的學(xué)科,往往都是課上通過課件的簡單講解,對學(xué)生采用滿堂灌的教學(xué)方式,沒有給學(xué)生更多的自主學(xué)習(xí)時間與思考時間,且上機時間少,學(xué)生進行實踐的機會很少,課后能夠自己花時間去學(xué)習(xí)的更是少數(shù),因此導(dǎo)致大多數(shù)學(xué)生不能很好地掌握這些重點學(xué)科。
(3)課外練習(xí)考查不合理。目前,很多學(xué)校的計算機學(xué)院都擁有無紙化考試與教學(xué)系統(tǒng),教師通過線上布置作業(yè),設(shè)置時間讓學(xué)生完成,但是并不能具體考查到每個學(xué)生的學(xué)習(xí)情況,沒有起到實時督促作用。同時,由于應(yīng)試教育,學(xué)生過于關(guān)注分數(shù),忽略了實訓(xùn)過程,使得學(xué)生得不到相應(yīng)的訓(xùn)練,與教育初衷背道而馳。
(4)缺少個性化培養(yǎng)模式。教學(xué)計劃的制定、教材的選用、課程的設(shè)置、教學(xué)大綱基本一體化,學(xué)生所接受的教育大都相同,這就使得高校很難培育出具有個性特色的專業(yè)人才。雖然現(xiàn)在很多高校已經(jīng)開始采用選課制,提高選修課程比例,給了學(xué)生更多的空間去自主選擇,但由于選修課門類有限,而且學(xué)校對每個學(xué)期必修課程的學(xué)分上限與下限的限制,使這種選課制度只能流于形式,并且大多數(shù)學(xué)生并不能很好認清自己的特長,往往隨大流選課。
敏捷開發(fā)目前在信息系統(tǒng)研發(fā)中運用十分廣泛,主要是以用戶需求進化為核心,采用迭代、循序漸進的方法進行軟件開發(fā)[3]。在敏捷迭代開發(fā)中,軟件項目被劃分為多個子項目,團隊成員負責(zé)不同的子項目開發(fā),并且每個子項目經(jīng)過測試后,可以集成到大項目或單獨運行。總而言之,就是把一個大項目劃分成許多相互聯(lián)系的可獨立運行的小項目,在此過程中軟件一直處于可運行狀態(tài)。本文吸收敏捷迭代式開發(fā)的核心思想,在不同課程階段對學(xué)生的學(xué)習(xí)成果進行考查,并運用到懷化學(xué)院計算機科學(xué)與工程學(xué)院的教育教學(xué)中。敏捷課程開發(fā)流程如圖1所示。
圖1 敏捷課程開發(fā)流程
黑盒測試又簡稱功能測試,著眼于程序外部結(jié)構(gòu),不考慮內(nèi)部邏輯結(jié)構(gòu),主要對軟件界面與功能進行測試[4]。通過運用該測試方式,在人機界面設(shè)計的專業(yè)考查課中,首先讓學(xué)生自主組隊,3人一組并且自主命題選取需要完成的系統(tǒng)或APP,給1個星期的組隊與選題時間,在下個星期的上課期間進行統(tǒng)計。之后學(xué)生通過團隊協(xié)作,開始合作完成系統(tǒng)開發(fā)并且撰寫相關(guān)開發(fā)文檔、錄制演示視頻,在課程結(jié)束的后兩節(jié)課中,每組的組長上臺講解所完成的系統(tǒng)并進行演示,由教師與其他各組成員對系統(tǒng)的界面、功能、實用性、表達能力進行評分,最后由高到低進行排名。通過考查發(fā)現(xiàn)優(yōu)秀作品,學(xué)生通過了解其他組的作品,進一步完善自己的作品。
在田徑運動中,田徑運動員每天重復(fù)相同的訓(xùn)練,一是為了把自己的極限再次提高,二是形成肌肉記憶。人的大腦同樣擁有記憶效應(yīng),同一種動作重復(fù)多次之后,肌肉就會形成條件反射,肌肉獲得記憶的速度十分緩慢,但是只要獲得,其遺忘的速度也十分緩慢。在操作系統(tǒng)Linux實訓(xùn)課程中,首次使用基于肌肉訓(xùn)練的考查方式,對Linux的基本操作采用項目過點的方式進行考查,每次考查根據(jù)題目量限時完成;在課堂上教師對每個學(xué)生進行計時計量考查,這樣對每個學(xué)生的掌握情況都會有一個大概了解;在課后,教師會根據(jù)學(xué)生的完成程度布置相應(yīng)訓(xùn)練任務(wù),使學(xué)生不僅掌握必要技能,得到足夠練習(xí),還訓(xùn)練了學(xué)生的肌肉記憶。往復(fù)的課程訓(xùn)練,知識點的掌握更加鞏固,記憶更加深刻,延長了遺忘周期,達到了訓(xùn)練目的。
通過項目實訓(xùn)或?qū)W科競賽提高計算機專業(yè)人才培養(yǎng)的質(zhì)量,主要體現(xiàn)在學(xué)生學(xué)習(xí)模式的改變??v觀高校學(xué)生的教育模式,無外乎就是在課堂上組織學(xué)生參與教師的教學(xué)任務(wù)或者參與教學(xué)實訓(xùn)活動,聽從教師的安排,所接受的知識都是通過教師的言傳身教所習(xí)得,這種方式的學(xué)習(xí)使得記憶不會很深刻,同時更容易遺忘,需要通過反復(fù)訓(xùn)練才能牢牢掌握,學(xué)生處于一種被動接受狀態(tài)。而在項目實訓(xùn)或?qū)W科競賽中卻不同,學(xué)生是活動的主體,這一過程中學(xué)生往往會碰到許多平時從未遇到過的問題,或者從未聽說過的知識與技巧,要想順利完成項目考核或者在學(xué)科競賽中取得優(yōu)異成績,就要主動查閱資料,利用身邊一切資源解決問題。在此過程中學(xué)生的水平自然而然得到提高,同時促使學(xué)生將知識進行遷移,具備一定基礎(chǔ)知識與技能的學(xué)生,可以將平時的積累運用到學(xué)科競賽中,解決實際問題,這種能力的培養(yǎng)將進一步激發(fā)學(xué)生的創(chuàng)新能力。
TDD(Test Driven Development,測試驅(qū)動開發(fā)),是敏捷開發(fā)的一項核心實踐與技術(shù),也是一種設(shè)計方法論[5]。上述黑盒測試與肌肉訓(xùn)練不單單是通過師生評判、計時計量的評分,前期還需要提供呈正態(tài)分布的試題庫。對試題庫的選取使用TDD原理,先選取單元測試題目,測試題目需要確定適用于什么科目。通過三者結(jié)合,學(xué)生的考查成績基本上呈正態(tài)分布,例如操作系統(tǒng)Linux實訓(xùn)課程中學(xué)生成績(見圖2)。實踐證明,這種考查方式區(qū)分度高,能夠促進學(xué)生的學(xué)習(xí)。
圖2 操作系統(tǒng)Linux實訓(xùn)課程學(xué)生成績正態(tài)分布圖
以計算機學(xué)院的敏捷迭代式教學(xué)體制對計算機課程的創(chuàng)新考查為例,結(jié)合筆者近年教育教學(xué)實踐,發(fā)現(xiàn)計算機課程的授課與考查方案若使用傳統(tǒng)的教學(xué)方式,學(xué)生大部分處于跟不上的狀態(tài),導(dǎo)致教學(xué)質(zhì)量欠佳。通過實施敏捷迭代式教學(xué),結(jié)合黑盒測試、肌肉訓(xùn)練,將教學(xué)與實訓(xùn)項目相結(jié)合,引導(dǎo)學(xué)生參加學(xué)科競賽,計算機實訓(xùn)課考查中使用TDD進行評估,教學(xué)效果得到顯著提高。實踐表明,學(xué)生對實訓(xùn)課程中重難點知識的掌握程度與記憶時間有了顯著提高,實踐動手能力得到增強。