基于Python的輔助教學(xué)系統(tǒng)設(shè)計(jì)與開發(fā)
0 引 言
隨著我國教育水平的不斷提升,對高等教育的質(zhì)量要求 越來越高,與此同時各種問題也日益突出。根據(jù)實(shí)際調(diào)查與多 方了解,目前高等院校的在線教學(xué)系統(tǒng)普遍具有功能比較簡單、 界面不夠友好等缺點(diǎn),尤其缺乏自動分析功能,如成績對比分 析、出勤率分析、抄襲率分析等。
Python 語言由于具有簡潔、易讀、易維護(hù)以及類庫豐富 等優(yōu)點(diǎn),在編程界的地位迅速上升(在 2017 年 5月的 TIOBE 編程語言社區(qū)排行榜中,Python 語言已升至第 4 位)[1,2]。因此, 在借鑒相關(guān)軟件的基礎(chǔ)上 [3],基于 Python 語言設(shè)計(jì)并開發(fā)符 合時代特色的新型輔助教學(xué)平臺具有十分重要的現(xiàn)實(shí)意義。
1 基于 Python 的輔助教學(xué)模塊設(shè)計(jì)
為了提高教學(xué)平臺的質(zhì)量和可維護(hù)性,Piclass 輔助教學(xué) 系統(tǒng)采用 Django 1.9.8 作為 Web 應(yīng)用程序框架,開發(fā)語言為 Python 2.7.10,后臺關(guān)系型數(shù)據(jù)庫采用 MySQL 5.6,非關(guān)系型 數(shù)據(jù)庫采用 Redis(緩存)。系統(tǒng)基礎(chǔ)功能包括課程管理、微 信簽到、作業(yè)管理、文件管理、消息管理、教務(wù)管理六大模塊, 提供了數(shù)據(jù)分析功能和微信接口,解決了各高校在課程管理、 上課點(diǎn)名、作業(yè)批改、師生互動等方面產(chǎn)生的一系列問題。
1.1 上課與上機(jī)一體化管理
由于上課人數(shù)過多,傳統(tǒng)的點(diǎn)名方式往往存在同學(xué)代替 答到的情況,無法保證數(shù)據(jù)的可靠性。由于我校計(jì)算中心采用 大面積上課的方式,上機(jī)課程選課獨(dú)立,由教師手工統(tǒng)計(jì)上課、 上機(jī)簽到信息,造成了很多不必要的麻煩,因此,在調(diào)研相 關(guān)產(chǎn)品的基礎(chǔ)上,Piclss 采用基于微信的簽到模型,即學(xué)生通 過掃描動態(tài)二維碼快速簽到,同時會借助動態(tài)二維碼時間差、 微信 openid 綁定等方式來防止各種作弊行為,提升數(shù)據(jù)的可 靠性。通過事先在數(shù)據(jù)庫中建立上機(jī)、上課的關(guān)聯(lián),通過退 改選課程增量導(dǎo)入、重復(fù)課程合并等模塊,解決了上課、上機(jī) 數(shù)據(jù)同步問題。上機(jī)、上課數(shù)據(jù)關(guān)聯(lián)示意圖如圖 1 所示。
1.2 作業(yè)成績自動對比分析
作業(yè)批改需要消耗大量時間和精力,同時周期也長,導(dǎo) 致學(xué)生無法及時了解自己的不足,而老師則難以及時掌握學(xué)生 的學(xué)習(xí)情況。由于目前大多高校存在跨校區(qū)的現(xiàn)狀,作業(yè)來回 搬運(yùn)十分不便。在調(diào)研一線教師日常布置作業(yè)的類型、評測方 式等基礎(chǔ)上,借鑒 ACM 評測模式,查閱相關(guān)資料解決死循環(huán)、 惡意代碼等問題后,Piclass系統(tǒng)的作業(yè)管理模塊實(shí)現(xiàn)了程序類、 填選類作業(yè)的自動評測功能,如圖 2 所示,能自動生成規(guī)范化 的實(shí)驗(yàn)報告,幫助老師了解學(xué)生的掌握情況,及時修改授課內(nèi) 容并調(diào)整進(jìn)度。
1.3 微信端隨時學(xué)習(xí)、溝通
結(jié)合時代需求,學(xué)生通過學(xué)號和密碼綁定本系統(tǒng)微信接 口后即可進(jìn)行微信做題,微信簽到,微信收發(fā)消息及各種信息 查詢,如圖 3 所示。微信做題可以通過順利、隨機(jī)、錯題復(fù)習(xí)等方式練習(xí)大學(xué)計(jì)算機(jī)基礎(chǔ)、數(shù)據(jù)庫、大學(xué)物理等課程的 客觀題目,迄今為止已擁有 56 萬刷題記錄 ;微信簽到可以實(shí) 現(xiàn)上課、上機(jī)的快速點(diǎn)名;微信收發(fā)消息可以實(shí)現(xiàn)教師與學(xué) 生之間、學(xué)生與學(xué)生之間的消息互動等功能。
2 結(jié) 語
根據(jù)高校真實(shí)需求并結(jié)合先進(jìn)技術(shù),Piclass 輔助教學(xué)系 統(tǒng)不僅實(shí)現(xiàn)了傳統(tǒng)輔助教學(xué)系統(tǒng)的各種功能,還根據(jù)時代需求 積極探索,實(shí)現(xiàn)了微信 2 分鐘快速簽到;程序、填選類作業(yè)自 動評測;上課上機(jī)課程數(shù)據(jù)關(guān)聯(lián)、退改選數(shù)據(jù)增量導(dǎo)入;教師、 學(xué)生、管理員等角色的控制,不同角色之間的關(guān)系構(gòu)架 ;各類 分析報告自動導(dǎo)出(學(xué)生綜合情況,程序題實(shí)驗(yàn)報告,選擇題 情況分析 ppt);網(wǎng)頁端、移動端、客戶端、服務(wù)端等多平臺系 統(tǒng)的開發(fā)與數(shù)據(jù)交互等功能。解決了目前教學(xué)管理系統(tǒng)中存在 的一系列問題。
本套系統(tǒng)在 2016 年中國大學(xué)生計(jì)算機(jī)設(shè)計(jì)大賽中獲得了 全國二等獎的好成績 [4],并于 2017 年獲得了華東理工大學(xué)教 學(xué)成果獎三等獎。目前系統(tǒng)公眾號粉絲有 3 800人,本學(xué)期有 15 門課程在使用該系統(tǒng)。未來會將大數(shù)據(jù)技術(shù)與現(xiàn)代教育相 融合,繼續(xù)加強(qiáng)數(shù)據(jù)分析模塊的研究,努力實(shí)現(xiàn)精準(zhǔn)教育。