

摘要:筆者把CSCL應用于數據結構的教學過程,對實驗班級采用CSCL教學方式和形成性評價,在學習過程中多次循環,經過一個學期,實驗班學生在考試成績、反饋信息和學習能力方面都比非實驗班有更好的效果。本文闡述了這一過程。
關鍵詞:CSCL;形成性評價;數據結構
80年代中后期,計算機支持的協作學習在國外成為協作學習領域的研究熱點之一[1]。20世紀90年代后期,我國研究者們開始關注如何應用信息技術促進協作學習,華東師范大學、北京師范大學等都進行了計算機支持協作學習的理論和技術的研究[2]。筆者嘗試將CSCL理論用于數據結構教學過程,制定了嚴密的學習步驟并加以實施,采用形成性評價考核學生成績,取得了良好的教學效果。
數據結構是計算機專業的一門核心課程,是設計與實現編譯原理、操作系統、數據庫及其他系統程序和應用程序的基礎。數據結構的教學目標是培養學生數據抽象、算法設計、創造思維、協同工作的能力[3]。
1CSCL和形成性評價
計算機支持的協作學習(Computer Supported Cooperative Learning,CSCL)是計算機支持的協同工作(CSCW)和協作學習(CL)相融合發展起來的,指利用計算機技術來輔助和支持協作學習的一種新的技術手段,是利用計算機技術建立協作學習的環境,使教師與學生、學生與學生在討論、協作與交流的基礎上進行協作學習的一種學習方式[4]。
教學形成性評價(formative evaluation)是相對于終結性評價(summative evaluation)而言的。所謂形成性評價,即“對學生日常學習過程中的表現、所取得的成績以及所反映出的情感、態度、策略等方面的發展”做出的評價,是基于對學生學習全過程的持續觀察、記錄、反思而做出的發展性評價[5]。
2數據結構教學CSCL和形成性評價實施步驟
圖1展示了CSCL和形成性評價在數據結構教學中的實施步驟。
圖1展示了CSCL結合形成性評價在數據結構教學中的實施步驟,包含以下幾個主要的教學階段,教師評價貫穿于整個教學過程。本文將就計算機0704班的一次具體學習周期,結合圖示展示此次嘗試的步驟,并總結教學效果。
2.1確定學習內容
小組協作學習的內容要有一定難度,有一定探究和討論價值和一定的開放性。本文選擇了一個實際生活中經常遇見的問題,即火車車廂重排問題:一列貨運列車共有n節車廂,每節車廂將停放在不同的車站。假定n個車站的編號分別為1~n,即貨運列車按照第n站至第1站的次序經過這些車站。為了便于從列車上卸掉相應的車廂,車廂的編號應與車站(目的地)的編號相同,使各車廂從前至后按編號1~n的次序排列,這樣,在每個車站只需卸掉最后一節車廂即可。所以,給定任意次序的車廂,必須重新排列它們。可能通過轉軌站完成車廂的重排工作,在轉軌站中有一個入軌、一個出軌和k個緩沖軌,緩沖軌位于入軌和出軌之間。開始時,n節車廂從入軌進入轉軌站,轉軌結束時各車廂按照編號1~n的次序離開轉軌站進入出軌。假定緩沖軌按先進先出的方式動作,因此可將它們視為隊列,并且禁止將車廂從緩沖軌移至入軌,也禁止從出軌移至緩沖軌。
圖2給出了一個轉軌站,其中有3個緩沖軌H1、H2和H3。
要求:設計存儲結構表示n個車廂、k個緩沖軌以及入軌和出軌;設計并實現車廂重排。
算法:分析算法的時間性能。
2.2分析學習目標
在這個過程中,要實現三個方面的學習目標:
(1) 知識技能目標:學生學會分析問題,設計合適的數據結構,寫出算法,用學過的C++語言實現算法并分析算法的效率。
(2) 方法策略目標:鍛煉學生的發散思維,用多種存儲結構和算法完成此題。
(3) 態度體驗目標:讓學生提高團隊合作能力,每個學生都要思考,充分發揮每個人的潛能。
2.3確定小組的基本結構
按照“組間同質、組內異質”的原則,把0704班35名學生分為5組,確保每組都有一名解決問題能力、主動思考能力強的學生,一名編程能力強的學生,一名設計能力強的學生,一名語言表達能力強的學生,便于向其他同學講解小組的設計思路。分組爭取做到每個學生在合作中都有展示自我的機會,讓學習困難的學生在互相幫助中不斷提升,讓學習優良的學生也能獲得自信。
2.4協作環境的創造
Groove的工作原理就是基于P2P技術,在網絡上任意兩臺計算機建立的共享虛擬空間中,項目內各個團隊成員利用各種資源工具進行協同工作。本次教學在計算機機房的每臺機器都安裝了Groove,創建了一個虛擬協作學習環境。
2.5信息資源的設計
在整個虛擬協作學習環境中,資源包括教師提供的數據結構課件和一些必要的學習資料,以及學生自主學習過程中累積的習題、資料、程序或算法。
2.6協作學習活動的開展
Groove學習空間的屏幕界面主要包括歡迎、文件、瀏覽、日歷、討論及聯系[6]功能。
歡迎部分是這次協作學習周期內容的大體介紹,包括學習內容、考察重點、解題思路提示、分組情況、小組成員的大致分工等;文件部分包括所有信息資源;瀏覽包括一些網頁地址;日歷允許教師制定課時安排與進度;討論允許學生對某一問題發表意見。
小組成員確定自己的任務,開始討論問題解題思路,在如何轉化成算法的討論中,善于思考的學生起到關鍵作用,教師能夠看出組間組內的差異,有的學生可以就問題提出堆棧、隊列、是否遞歸的方法,可有的學生只能想到一種方法或根本沒有思路,這時教師有了一定評價,學生之間也有了對比。
學生可以請教師確認算法的可行性,教師起指導作用,并不給出建設性意見,讓學生在編程與調試過程中進一步改進算法。
算法確定后開始編碼,這時善于編程的學生發揮主要作用,編程結束后討論可行性,在此過程中,學生都能參與其中并提出想法,還可以改正細小的編程錯誤。
之后,小組成員開始整理解題思路,制作幻燈片,準備講解給教師和其他小組成員聽,這時文字表達能力強的學生就是主力了。
在整個過程中,教師穿梭于每個小組之間,適時與學生溝通,幫助學生糾正出現的問題,觀察每個學生的表現并作出評價。
實踐過程結束后,教師制定評價標準,如圖1中的“評價總結”所示,讓評價有據可依。教師首先總結自己在整個過程中的評價,學生除了對自己的表現進行評價,還要對組內合作成員進行評價,最后教師做總結,為下次學習做參考,在下一個教學周期中,教師根據上次的評價結果重新分組。
3學習效果評價
經過一學期的嘗試,我們用調查問卷方法對0704班學生進行學習效果的調查,29名學生反映自己對計算機學習的興趣提高了,80%的學生反映在程序分析方面的思路拓廣了;上學期C++程序設計課中學習困難的同學一開始覺得自己在協作學習中的作用不大,可是一學期結束時學到好多東西,到后期也可以完全融入到討論中。
前一學期C++程序設計期終考試中,0704班和同一教師授課的0705班平均成績在70分左右,經過這次嘗試,在與上學期C++程序設計同樣難度系數的數據結構期終考試中,0704班的平均成績為76.5分,而未參與實驗的0705班平均成績為72分,在高分同學中,0704班最高分為97分,比0705班的最高分高出5分,證明這次嘗試取得了良好的教學效果。
4結語
筆者將CSCL原理用在具體的課程學習中,豐富了CSCL理論。在實踐方面,為數據結構教學提供可操作的方法,通過課程評價改進教師的教和學生的學,科學評價學生,培養學生的發散思維,提高他們協作學習、算法分析、編程等各方面的能力,促進學生整體進步,提高教學效果。
參考文獻:
[1] 何克抗. 教學系統設計[M]. 北京:北京師范大學出版社,2002.
[2] 謝幼如,尹睿. 基于網絡的協作學習活動形式的質的研究[J]. 華南師范大學學報,2003(5):120-152.
[3] 嚴蔚敏,吳偉民. 數據結構(C語言版)[M]. 北京:清華大學出版社,2005.
[4] 王真星. 基于本體的計算機支持協同學習關鍵技術研究[M]. 上海:復旦大學出版社,2003.
[5] 姜瑩. 大學英語教學中形成性評價體系的應用探究[J]. 科技信息(科學教研),2008(14):232-233.
[6] 王史峰. 淺談Groove在項目管理中的應用[J]. 電力信息化,2009(3):83-86.
Attempt on the CSCL and Formative Assessment in Teaching of Data Structure
YUAN Yue-chun, JIA Guo-jun
(School of Mathematics and Computer Science, Shanxi Normal University, Linfen 041004,China)
Abstract: This Paper used CSCL in the process of data structure teaching, and used formative assessment as the standard to evaluate students’ performance. In the process of teaching to experimental class we used the CSCL and formative evaluation. After a semester of teaching which included several cycles, Experimental class is all superior to non-experimental classes in student test scores, student feedback and capacity-building.
Key words: CSCL; formative evaluation; data structure
(編輯:張玥)