王則瀚 福建省福州第十九中學
《義務教育信息科技課程標準(2022年版)》(以下簡稱“課標”)指出計算思維是運用計算機科學領域的思想方法解決問題的思維活動,而學界公認評估能力是衡量學生計算思維發展的重要維度之一。因此,本文以閩教版2020修訂版八年級下冊《體驗開源硬件與編程工具應用》一課為例,嘗試通過在教學中運用科學的評估活動,促進學生計算思維的發展。
《體驗開源硬件與編程工具應用》一課要求學生能利用micro:bit設計數字骰子,即micro:bit在每次受到振動之后,LED上都能隨機顯示一個1~6的隨機整數。在本課的教學中,學生需要學習選取隨機數的積木塊,并將其顯示在LED上。
學生通過編程實踐初步體驗了開源硬件程序設計中的算法思維,能夠用相應的編程手段控制micro:bit開源硬件,設計出達成預期目標的作品。但是這個作品真的可以如預期設想的那樣工作嗎?大多數教師在教學活動中會讓學生把這個代碼上傳到micro:bit,通過嘗試振動兩三次,觀測是否可以顯示不同的數字,以驗證“選取隨機數”是否正常工作。上述做法是一種“評估”測試開源硬件作品的方法,但這種做法只能證偽,不可以證真。也就是說如果通過兩三次振動LED沒有顯示不同的數字,那么可以得出結論——這個數字骰子并沒有正常工作,當前的設計是失敗的(證偽);但僅僅振動了兩三次,并不能就此確信這個數字骰子是可以正常工作的(證真),因為在實際運作的過程中,設備存在多種非正常運作的可能。
課標提倡開展真實的學習,凸顯學生的主體性,要求學生在教學活動中主動發現問題,在做中學、用中學、創中學。這既強調了學生在學習過程中的主體地位,也意指教師在教學活動中應啟發學生深入思考,發現現存作品設計中的疑點和問題。
因此,在學生編寫好代碼之后,筆者有意識地引導學生思考兩個問題:真實的骰子1~6的出現機會是均等的,你的數字骰子1~6的出現機會是均等的嗎?通過振動兩三次micro:bit看到不同的數字,就足夠證明這點了嗎?通過討論,學生達成共識:①應對micro:bit數字骰子進行多次測試。②應記錄每次測試的結果,便于觀測1~6的整數是否“均勻地”出現,同時檢查是否有超出1~6的情況。筆者帶領學生設計了觀測表,要求學生各自進行20次micro:bit振動測試,并利用觀測表記錄觀測結果。這種評估活動不但鍛煉了學生的計算思維,還培育了學生的科學精神,特別是問題意識、實證主義精神和嚴謹的求知態度。
筆者發現,不少學生根據既有的數學知識,主觀預判觀測表的數中據,如果1~6出現次數較為平均,那么每個數字大約應出現20÷6=3.33次。有一部分學生在振動micro:bit進行評估的過程中發現2的出現次數特別多,在振動10次之后,2的出現次數已經達到了5~6次甚至更多。于是在接下來的評估中,他們不再將2填寫到觀測表中,而是重新振動micro:bit,直至晃出其他的數字再計入表中。
信息科技的課程性質之一就是培養科學精神和科技倫理,而科學精神的要素之一就是尊重事實與證據,有實證意識與嚴謹的求知態度。筆者針對這一現象進行了講評,引導學生理解尊重實驗評估的客觀結果對科學探究本身的重要意義。學生也明白了如實記錄評估實驗數據的重要性:沒有客觀的數據記錄,就無法得出科學的評估結果。
學生在教師的指導下,重新進行了評估活動,但發現了新問題:1~6的數字出現并不“均勻”。于是,筆者以學生甲乙的評估觀測為例,將他們的評估記錄數據導入Excel表格(如圖1)。從兩位學生的評估測試數據來看,2的出現次數明顯偏少,只有最大值的三分之一甚至五分之一,而1、5的出現次數明顯偏多。學生丙測試了50次,得到了類似的結果:評估數據的最大最小值之間相差了4倍。于是,學生提出問題:為什么這里1~6的出現次數“不均勻”?是不是“選取隨機數”積木并不那么“隨機”呢?

圖1
筆者調整了教學計劃和進度,引領學生探究“‘選取隨機數’是不是真的隨機”這一問題。上述評估所觀測到的現象,存在兩種可能的解釋:①可能micro:bit所提供的“選取隨機數”積木,并不是真的隨機。它的隨機數生成質量很低,所以導致評估數據的大范圍波動。②可能產生的評估樣本太少,20次和50次振動,并不能完全反映“選取隨機數”積木產生隨機數的真實狀況。無論是哪種可能性,都需要學生增加評估的樣本,擴大評估數據的規模,從而對“選取隨機數”的效果進行科學的分析。
因此,學生提出將評估樣本提高到1000次。但是,手動振動1000次并且記錄評估結果,是不小的工程,而且人力記錄還存在出錯的可能。于是,筆者引導學生應用計算思維中的“分解”理念,將評估的過程分解成三個部分進行思考(如圖2)。其中A、C在較少評估數據的情況下,是用人力完成的。為了準確記錄大規模評估的數據,筆者啟發學生對A、C進行了改進(如圖3),學生使用的代碼樣例如圖4所示,最終的可視化結果如下頁圖5所示。

圖2

圖3

圖4

圖5
通過以上數據可知,課堂上設計的評估手段是可行的,數據經過可視化手段印證了“選取隨機數”積木滿足預想中的隨機能力。評估過程中學生的計算思維得到了充分發展,學生不僅學到了科學評估的手段和方法,同時也鍛煉了對復雜系統進行分解思考、對開源硬件進行編程的能力。在評估過程中使用IoT物聯網技術,鍛煉了學生使用實驗設備搭建物聯網原型,并通過實驗平臺讀取、發送、接收、匯集和分析數據的能力。
通過上面的實踐,學生的思維得到了啟發,有的學生提出將評估的規模提升到100萬次。但是,依靠搖擺器振動產生數據的過程較慢,這使得學生不得不追求更先進的評估手段。學生發現,評估的是“選取隨機數”積木,和是否產生振動輸入沒有直接關聯,只需要讓程序不停地“選取隨機數”,同時搜集產生的數據,就可以評估“選取隨機數”的效果,于是學生改進了代碼(如圖6),最終的可視化結果如圖7所示。

圖6

圖7
綜上所述,學生通過不同階段逐漸提升的評估活動,鍛煉了自己的計算思維,也認可了“選取隨機數”積木的可靠性。
計算思維是信息科技課程的核心價值,但是評估對發展學生計算思維的價值,經常被教師低估。評估與傳統意義上的課堂評價不同,評估是運用計算思維對復雜系統的運行效果、時間空間效率、精確性、可靠性等進行科學的評價和研判。評估的結果對系統的精度、可靠性、正確性都提供了翔實可靠的客觀結論。科學的評估是計算思維的重要運用途徑,也是衡量學生計算思維發展程度的重要指標。
在教學活動中,教師應深入思考教材案例,從中發掘值得評估的內容,引發學生的好奇心和想象力,促使學生產生問題意識,在發現問題、設計評估方案、搜集評估數據、分析評估結果的過程中,綜合運用多種信息科技的手段和技能開展對作品的評估。在教學中有意識地引導學生設計并實施科學的評估活動,既能印證學生計算思維的發展水平,又能體現其科學精神,同時,也會讓信息科技課程變得更有魅力。