嚴(yán)大虎 李雨婷 蘇秀玲
摘要:本研究以當(dāng)前SQL語言教學(xué)中存在的問題與突破點(diǎn)為出發(fā)點(diǎn),以學(xué)習(xí)者學(xué)習(xí)行為數(shù)據(jù)獲取為目標(biāo)設(shè)計(jì)、開發(fā)了具有測評與知識點(diǎn)學(xué)習(xí)等功能的SQLTutor平臺(SQL查詢語言智能學(xué)習(xí)系統(tǒng)),并通過相關(guān)課程進(jìn)行驗(yàn)證與分析,以期利用數(shù)據(jù)驅(qū)動的SQLTutor可以有效地提升學(xué)生學(xué)習(xí)效率。
關(guān)鍵詞:SQLTutor;學(xué)習(xí)行為數(shù)據(jù);設(shè)計(jì)
中圖分類號:TP393 ?文獻(xiàn)標(biāo)識碼:A ?論文編號:1674-2117(2021)02-0109-04
● 問題提出
作為數(shù)據(jù)庫的核心語言,SQL語言(Structured Query Language)實(shí)現(xiàn)了對數(shù)據(jù)的存取、查詢、更新等多重功能,具有結(jié)構(gòu)簡潔、易學(xué)易用等特點(diǎn)。但在實(shí)際的教學(xué)過程中,學(xué)習(xí)者普遍存在“只能運(yùn)用所學(xué)知識解決特定問題,卻無法實(shí)現(xiàn)知識的遷移”的問題,究其原因主要在于:一方面,教師將教學(xué)重點(diǎn)放在技術(shù)學(xué)習(xí)上,學(xué)生跟著教師的演示或帶有操作步驟的課件進(jìn)行數(shù)據(jù)操作練習(xí),評判標(biāo)準(zhǔn)以操作熟練度為基準(zhǔn),缺乏對學(xué)生鏈接基礎(chǔ)知識技能與實(shí)際問題能力的培養(yǎng)。另一方面,由于常見關(guān)系數(shù)據(jù)庫管理系統(tǒng)存在交互不友好等問題,即對學(xué)習(xí)者提交的錯誤答案缺乏邏輯診斷能力,無法及時(shí)給予學(xué)生反饋信息,造成學(xué)生無法對SQL語言存在的錯誤進(jìn)行準(zhǔn)確判斷。[1]由此可見,教師的教學(xué)側(cè)重點(diǎn)與平臺的交互性能對學(xué)生的學(xué)習(xí)態(tài)度、學(xué)習(xí)成效等產(chǎn)生很大的影響,如何靈活運(yùn)用SQL語言解決本專業(yè)及其他領(lǐng)域的問題,是當(dāng)前學(xué)習(xí)SQL語言迫切需要解決的問題。本研究在對當(dāng)前數(shù)據(jù)庫教學(xué)中存在的問題進(jìn)行收集及分析的基礎(chǔ)上,從學(xué)習(xí)者學(xué)習(xí)行為數(shù)據(jù)出發(fā)設(shè)計(jì)與開發(fā)SQL查詢語言智能教學(xué)系統(tǒng),最后將該系統(tǒng)介入教學(xué)活動進(jìn)行實(shí)踐分析,以期為相關(guān)系統(tǒng)的功能模塊設(shè)計(jì)提供參考依據(jù)。
● 當(dāng)前SQL語言教學(xué)中的問題與突破點(diǎn)
1.SQL語言教學(xué)中的問題
通過對已有文獻(xiàn)的梳理分析發(fā)現(xiàn),關(guān)于SQL語言教學(xué)中的問題分類存在不同觀點(diǎn),如Slonneger將編程語言教學(xué)中遇到的具體問題分為三類,分別是語法問題、語義問題和語用問題。[2]而李廉等認(rèn)為語用問題相對其他兩類問題存在過于寬泛與抽象等問題,因此,他認(rèn)為遵循一定語言格式的語法問題和語義問題是SQL語言教學(xué)過程中普遍存在的問題。[3]基于此,對編程類課程教學(xué)中存在的問題進(jìn)行進(jìn)一步細(xì)化分類,即包括語法問題、語義問題、遷移性問題、系統(tǒng)問題這四類問題。同時(shí),為了驗(yàn)證問題提煉維度的準(zhǔn)確性、適用性與課堂實(shí)踐教學(xué)問題的一致性,采用線上線下相結(jié)合的方式對從事高校編程教學(xué)的教師及參與編程學(xué)習(xí)的研究生、本科生進(jìn)行了訪談?wù){(diào)研,并將分類結(jié)果多次與專家進(jìn)行討論修改,最終得到有效的分類結(jié)果。其中,語法問題是包括書寫錯誤、字符運(yùn)用錯誤等在內(nèi)的違反語言規(guī)則的錯誤;語義問題是代碼不符合語言書寫規(guī)則,但存在邏輯錯誤的問題;遷移性問題是無法在不同問題場景中解決同一或相似知識點(diǎn)的問題;系統(tǒng)問題強(qiáng)調(diào)從宏觀層面對問題解決的步驟進(jìn)行描述,如抽象、分解等。[4]
2.SQL語言教學(xué)中的突破點(diǎn)
在實(shí)際教學(xué)過程中,教師多采用線上與線下相結(jié)合的方式開展SQL語言教學(xué),即以講授為主的課堂基礎(chǔ)理論知識點(diǎn)的學(xué)習(xí),以及借助平臺進(jìn)行的教師演練、學(xué)生操作為主的實(shí)操學(xué)習(xí)。在這個(gè)過程中,學(xué)生產(chǎn)生了大量的過程性學(xué)習(xí)數(shù)據(jù),尤其是利用平臺進(jìn)行學(xué)習(xí)的操作性數(shù)據(jù),實(shí)現(xiàn)對這些數(shù)據(jù)的捕獲能有效地幫助教師教學(xué)與學(xué)生學(xué)習(xí)。[5]從教師角度分析,學(xué)生學(xué)習(xí)行為數(shù)據(jù)的獲取有利于教師及時(shí)地了解學(xué)生的學(xué)習(xí)狀況,針對性地進(jìn)行個(gè)性化輔導(dǎo),同時(shí)可以調(diào)整教學(xué)的重難點(diǎn)以及教學(xué)進(jìn)度等,從而取得最佳的教學(xué)效果。從學(xué)生角度分析,學(xué)生可以利用自己與同伴的學(xué)習(xí)行為數(shù)據(jù)反思學(xué)習(xí)過程,分析與總結(jié)學(xué)習(xí)的方法等,同時(shí)及時(shí)的反饋有利于學(xué)生發(fā)現(xiàn)自己的錯誤,激發(fā)學(xué)習(xí)動機(jī)。通過分析發(fā)現(xiàn),目前許多SQL語言教學(xué)平臺并沒有實(shí)現(xiàn)這一功能,這為本研究提供了功能模塊設(shè)計(jì)的契機(jī),以獲取學(xué)習(xí)行為數(shù)據(jù)幫助教師重新調(diào)整教學(xué)側(cè)重點(diǎn),從而真正實(shí)現(xiàn)個(gè)性化輔導(dǎo)學(xué)生,提高學(xué)生運(yùn)用已學(xué)知識點(diǎn)解決不同場景中問題的能力。
● 數(shù)據(jù)驅(qū)動的SQLTutor的設(shè)計(jì)與實(shí)現(xiàn)
1.數(shù)據(jù)驅(qū)動的SQLTutor理論架構(gòu)
通過分析當(dāng)前SQL語言教學(xué)中使用工具的特性,綜合教學(xué)實(shí)踐中面臨的問題與突破點(diǎn),筆者從數(shù)據(jù)驅(qū)動的角度設(shè)計(jì)了SQLTutor,如圖1所示。該實(shí)驗(yàn)平臺從基礎(chǔ)層、功能層、數(shù)據(jù)層和反饋層這四個(gè)層面實(shí)現(xiàn)整個(gè)SQLTutor平臺的運(yùn)行過程。以題庫和資源庫作為數(shù)據(jù)的直接供應(yīng)者,從四類問題著手設(shè)計(jì)了日常知識點(diǎn)學(xué)習(xí)和測評兩大功能,其中,測評功能模塊以日常操作測試和考試為主,內(nèi)含學(xué)生測試錯題及重點(diǎn)題,而知識點(diǎn)學(xué)習(xí)注重課上與課下對教學(xué)內(nèi)容、學(xué)習(xí)資料等的溫故知新,學(xué)生可根據(jù)學(xué)習(xí)需求進(jìn)行對應(yīng)的操作性訓(xùn)練。學(xué)生在使用平臺完成學(xué)習(xí)任務(wù)的過程中產(chǎn)生了大量的行為數(shù)據(jù)并同步存儲在學(xué)習(xí)行為數(shù)據(jù)庫中,該數(shù)據(jù)庫有學(xué)生測試的相關(guān)數(shù)據(jù)、學(xué)習(xí)筆記、反思記錄等,是整個(gè)實(shí)驗(yàn)平臺學(xué)生數(shù)據(jù)的主要存儲部分,為學(xué)生個(gè)性化定制題庫提供了題目依據(jù)。反饋層通過學(xué)習(xí)分析技術(shù)、可視化技術(shù),以圖表、常規(guī)顯示、知識點(diǎn)文檔的形式呈現(xiàn)了學(xué)生的學(xué)習(xí)結(jié)果信息,是教師進(jìn)行教學(xué)活動調(diào)節(jié)設(shè)計(jì)的關(guān)鍵,也是學(xué)生學(xué)習(xí)效果反饋的重要證據(jù)。
2.數(shù)據(jù)驅(qū)動的SQLTutor技術(shù)實(shí)現(xiàn)
(1)SQLTutor核心功能模塊構(gòu)建
①測試模塊。
測試模塊作為學(xué)生頻繁使用的功能模塊,可以通過增加實(shí)操訓(xùn)練次數(shù)提高對所學(xué)知識的內(nèi)化效率。測試模塊融合了錯題、重難點(diǎn)題以及學(xué)生收藏的題,并在此基礎(chǔ)上從SQL語言教學(xué)中常見的四類問題入手,綜合設(shè)計(jì)題目內(nèi)容。一方面,學(xué)生在進(jìn)行知識點(diǎn)學(xué)習(xí)的過程中根據(jù)學(xué)習(xí)需要進(jìn)行自主測試,學(xué)生在學(xué)習(xí)完某一知識點(diǎn)或復(fù)習(xí)錯題時(shí),可自主選擇知識點(diǎn)的測試范圍、測試時(shí)間和數(shù)量,以及是否及時(shí)反饋等內(nèi)容。另一方面,教師可根據(jù)教學(xué)活動安排發(fā)布課堂實(shí)驗(yàn)測試和正式考試,同時(shí)根據(jù)學(xué)生的可視化學(xué)習(xí)行為信息反饋給學(xué)生定制與發(fā)放個(gè)性化的測試。測試模塊為可視化學(xué)習(xí)結(jié)果的生成提供主要參考依據(jù),為教師有效開展差異化教學(xué)、學(xué)生進(jìn)行精準(zhǔn)學(xué)習(xí)提供支持。
②知識點(diǎn)學(xué)習(xí)模塊。
學(xué)生在進(jìn)行知識點(diǎn)學(xué)習(xí)的過程中,利用知識點(diǎn)學(xué)習(xí)模塊呈現(xiàn)的學(xué)習(xí)資源進(jìn)行課前預(yù)習(xí)、課堂實(shí)踐以及課后復(fù)習(xí)。其中,課前預(yù)習(xí)可預(yù)先對教學(xué)內(nèi)容進(jìn)行宏觀把握,大體掌握知識結(jié)構(gòu)及重點(diǎn)。課堂實(shí)踐是教師發(fā)布任務(wù),學(xué)生通過查看知識點(diǎn)、例題等獨(dú)立與合作完成學(xué)習(xí)任務(wù)。課后復(fù)習(xí)是學(xué)生借助平臺對所學(xué)知識點(diǎn)進(jìn)行復(fù)習(xí),從而達(dá)到對重難點(diǎn)的吸收、內(nèi)化。總體而言,知識點(diǎn)學(xué)習(xí)模塊是促進(jìn)學(xué)生學(xué)習(xí)的輔助性手段,所包含的學(xué)習(xí)材料類型豐富、內(nèi)容詳細(xì)、重難點(diǎn)清晰,聚焦于對知識點(diǎn)的融匯貫通。其中,例題模式多變,以單一知識點(diǎn)或多個(gè)知識點(diǎn)融合的多場景問題為主,其最終目的在于培養(yǎng)學(xué)生運(yùn)用所學(xué)知識點(diǎn)綜合解決不同類型問題的能力。
(2)數(shù)據(jù)驅(qū)動的SQLTutor技術(shù)實(shí)現(xiàn)
在對SQLTutor實(shí)驗(yàn)平臺的理論架構(gòu)、核心功能模塊構(gòu)建的基礎(chǔ)上,對平臺進(jìn)行技術(shù)實(shí)現(xiàn)。利用asp.net、jquery、layui、ajax等技術(shù)實(shí)現(xiàn)對數(shù)據(jù)驅(qū)動的SQLTutor平臺搭建,同時(shí)進(jìn)行多次調(diào)試、優(yōu)化,在嵌入教學(xué)前多次進(jìn)行預(yù)先使用測評,針對出現(xiàn)的問題及時(shí)改進(jìn),優(yōu)化平臺各項(xiàng)功能,以保證嵌入教學(xué)實(shí)踐之后的使用效果。完成搭建后的SQLTutor答題記錄界面如圖2所示。
● SQLTutor的應(yīng)用案例及分析
1.研究對象與數(shù)據(jù)選取
本研究以江蘇某高校大三64名教育技術(shù)專業(yè)學(xué)生為研究對象,在任課教師對獲得SQLTutor認(rèn)可且熟練運(yùn)用的基礎(chǔ)上,以此為教學(xué)工具設(shè)計(jì)與實(shí)施了為期四周的“數(shù)據(jù)庫技術(shù)及應(yīng)用”課程教學(xué)實(shí)踐,同時(shí)以參與者在SQLTutor上的日常實(shí)操訓(xùn)練和測試信息作為數(shù)據(jù)來源。通過對測試數(shù)據(jù)進(jìn)行篩選整理,共獲得實(shí)操訓(xùn)練記錄6506條,其中3434條錯誤記錄,約占總測試記錄的52.78%,大概率說明了學(xué)生每道題大約需要提交兩次。其間,教師安排了四次在線統(tǒng)一測試(共計(jì)256次),學(xué)生自主參與題庫測試966次,共獲得1222次測試記錄。
2.應(yīng)用效果測評與分析
通過對SQLTutor上學(xué)習(xí)者學(xué)習(xí)行為數(shù)據(jù)的整理、篩選,從平臺設(shè)計(jì)的角度對數(shù)據(jù)進(jìn)行不同層面的分析:
①知識點(diǎn)與問題類別測試方面。學(xué)生對查詢語句掌握情況主要呈現(xiàn)為簡單查詢(87.3%)、條件查詢(80.1%)、分組查詢(82.1%)、排序查詢(83.5%),因各個(gè)語句之間的難易程度不一樣,造成學(xué)生對簡單查詢掌握得最好,對條件查詢掌握得最為薄弱的結(jié)果。就問題類別來說,學(xué)生在單一知識點(diǎn)上的成功率達(dá)到85.2%,遠(yuǎn)高于綜合應(yīng)用題的成功率(76.7%)。由此可見,知識點(diǎn)難度低、題型單一的測試其成功率較高,更易激發(fā)學(xué)生的學(xué)習(xí)動機(jī)與自我效能感。
②題庫類型選擇方面。在題庫選擇上,學(xué)生因先前知識水平存在差異性導(dǎo)致出現(xiàn)不同的選擇傾向??傮w來說,基礎(chǔ)薄弱的學(xué)生主要通過訓(xùn)練知識點(diǎn)子題庫來提高知識點(diǎn)的掌握情況,基礎(chǔ)中等的學(xué)生則以單個(gè)知識點(diǎn)子題庫為主,少量涉及其余兩個(gè)題庫,而基礎(chǔ)好的學(xué)生則更傾向于綜合應(yīng)用題庫,主要提高自己對知識點(diǎn)的遷移運(yùn)用能力。
③測試成績方面。研究對同一任課教師所教的上屆學(xué)生與這屆學(xué)生的課程中期測試成績進(jìn)行了量化對比分析。其中,兩屆之間的關(guān)鍵不同在于這屆學(xué)生采用SQLTutor進(jìn)行教學(xué)實(shí)踐,而上屆學(xué)生則以常規(guī)教學(xué)為主。通過分析發(fā)現(xiàn):一是對成績進(jìn)行配對樣本T檢驗(yàn)(Sig=0.001<0.05),說明兩屆學(xué)生的課程成績存在顯著差異。二是利用箱線圖進(jìn)行分析發(fā)現(xiàn),這屆學(xué)生整體學(xué)習(xí)成績集中且離散程度更小,說明利用SQLTutor輔助教學(xué)時(shí)所取得的學(xué)習(xí)效果更好,學(xué)生整體對知識點(diǎn)的掌握程度更高。
④用戶體驗(yàn)方面。通過實(shí)施訪談及問卷調(diào)查來了解教師與學(xué)生對SQLTutor的用戶體驗(yàn)程度。從調(diào)查結(jié)果得出,57.81%的學(xué)生對課程教學(xué)持滿意態(tài)度,通過訪談發(fā)現(xiàn)大多數(shù)學(xué)習(xí)者認(rèn)為SQLTutor減少了對硬件的安裝配置、建表等過程,使個(gè)體更加專注于學(xué)習(xí),進(jìn)而提高了學(xué)習(xí)效率。同時(shí),可視化結(jié)果呈現(xiàn)使得學(xué)習(xí)行為數(shù)據(jù)得到存儲,這對教師教學(xué)和學(xué)生學(xué)習(xí)產(chǎn)生了更優(yōu)的效果。
● 結(jié)語
學(xué)習(xí)行為數(shù)據(jù)為教師教學(xué)與學(xué)生學(xué)習(xí)提供了重要的參考依據(jù),基于數(shù)據(jù)驅(qū)動的SQLTutor為查詢語句的學(xué)習(xí)提供了輔助性支架,滿足了教師利用平臺提高教學(xué)效率、培養(yǎng)學(xué)生利用知識點(diǎn)解決不同場景中問題能力的需求。本研究通過對當(dāng)前SQL語言教學(xué)中存在的問題進(jìn)行深入剖析,設(shè)計(jì)了符合SQL語言教學(xué)需求與學(xué)習(xí)體驗(yàn)需要的數(shù)據(jù)化驅(qū)動平臺,并結(jié)合具體的課程進(jìn)行實(shí)踐。未來,筆者將根據(jù)實(shí)踐反饋進(jìn)一步完善平臺功能,以此幫助教師因材施教,最終改善學(xué)生的學(xué)習(xí)效果。
參考文獻(xiàn):
[1]郝耀軍,王建國,趙青杉,等.SQLTutor的在線實(shí)驗(yàn)技術(shù)研究[J].現(xiàn)代教育技術(shù),2009(08):109-111.
[2]Slonneger K,Kurtz B L.Formal Syntax and Semantics of Programming Languages: A Laboratory Based Approach[M].Addison-Wesley Longman Publishing Co. Inc.1995.
[3]李廉.計(jì)算思維——概念與挑戰(zhàn)[J].中國大學(xué)教學(xué),2012(01):9-14.
[4]Shute V J,Chen S,Asbell-Clarke J.Demystifying computational thinking[J].Educational Research Review,2017(22):142-158.
[5]王麗英,何云帆,田俊華.在線學(xué)習(xí)行為多模態(tài)數(shù)據(jù)融合模型構(gòu)建及實(shí)證[J].中國遠(yuǎn)程教育:綜合版,2020(06):22-30+51.