◆任丹
(湖北文理學院 湖北 441053)
實際教學中,大多數計算機公共系列課程的教師選擇考勤、作業、實驗來構成平時成績的組成部分。公共計算機系列課程開課班級眾多,課程內容操作性很強,因而在公共計算機系列課程教學中平時成績考核工作存在如下的問題:
1)教師工作重心與考核數據的關系
教師的工作重心是教學,是知識的傳承與思維方式的啟迪。通過對學生的成績考核可以很好地發現教學工作中的問題和不足,但是占據教師時間和精力比重最大的工作,應該是“本源性教學工作”而非“學生成績考核”。
目前我校公共計算機系列課程的課堂考勤采用的是教師或者班級學習委員人工點名,由教師人工進行記載。學生們在學習過程中的課堂上操作性實驗作業均由教師在課堂上人工評閱,耗時耗力。而對于布置的課后的操作性實驗作業,很多學生是復制其他同學的作業以敷衍老師。
2)教學的本源與形式之間的關系
本科教學的“工作留痕”是“第三方”進行“事后監督”的基礎,這就意味著高校教師需要在“本源性教學工作”和“留痕工作”之間尋求平衡。
由于開課班級較多,每學期期末公共計算機系列課程的教師們都要花費大量時間去計算班級學生的各項平時成績,制作紙質的教學檔案材料,花費了大量的人力物力去實現教學的留痕工作,對教師的精力造成了很大的浪費。
本智能題庫系統是面向計算機公共課的日常教學工作的,將日常教學工作中學生考勤、平時作業納入系統管理中,全面記載平時各種考核分數以便于期末教學總結時進行統計計算。智能題庫系統主要包含5 個部分的功能模塊,分別是考勤管理模塊、題庫及自動評閱管理模塊、試卷管理模塊、成績分析管理模塊和教學檔案管理模塊。其各模塊具體功能如下:
1)考勤管理模塊包含班級管理,主要是用于設置教師在課堂上指定時間內簽到、簽到次數統計及考勤分數轉換。
2)題庫管理模塊包括各種類型題目的錄入(含手動和批量上傳)和自動評閱,課程科目的修改以及知識點的增刪操作。
3)試卷管理模塊分為人工組卷和計算機自動抽題組卷兩部分,其中日常作業被視為小測試的試卷對待,題目分數可以自由組合,由教師自由設定。
4)成績分析管理模塊包含考勤、作業、考試分數統計以及試卷難度系數、班級成績分析等。
5)教學檔案模塊主要用于生成從班級課程表到最終成績分析等等所有留痕工作文檔。
本智能題庫是基于Flask 和MySQL 數據庫開發實現的。Flask 是一個用 Python 語言編寫的 Web 微框架,其設計簡潔,能夠使用第三方庫來實現自己想要的功能,而且很多第三方庫還可以定制與裁減,方便于快速開發各種Web 應用。系統功能結構如圖1所示。

圖1 系統功能結構
考勤記載模塊包含了班級管理以及考勤設置操作。教師將自己任課的班級學生名單導入系統,設置上課考勤的時間,并為每次考勤設置分數,讓學生在規定時間內登錄賬號進行考勤記載。為了方便管理,將考勤設置成為一道特殊的判斷題要求學生選擇是否來標記得分。
題庫管理模塊中的重點在于批量導入各種題目,教師下載由系統提供的Excel 類型的題目模板,將相關題目按照模板要求錄入Excel表格中,再由Flask 使用Python pandas 數據分析包將題目數據寫入MySQL,批量錄入界面如圖2所示。同樣也可以使用pandas 對題目進行批量修改。

圖2 題目批量錄入
組卷管理模塊主要包括人工組卷、自動組卷和試卷評閱三種操作。系統在Flask 的Models.py 文件中創建PaperForm 類用來實現自動組卷,類中包含課程名稱、題型、題型數量及分值,教師選擇好相關數據后,系統自動在題庫中抽取該課程的題目進行組合生成試卷,并同時生成相關的閱卷參數文件,以便在完成試題后進行判分,自動組卷界面如圖3所示。

圖3 自動組卷
在該成績分析模塊中將日常作業及考試的分數文件,用pyecharts繪制,并渲染到前端。首先,構建學號姓名列表和章節作業考試分數列表,如果在搜索的范圍內,則顯示,如果不在,則返回“無此人”這類信息。將各個參數,用pandas 都設置好,再用pyecharts 繪制表格即可。這里可以將業務,分為數據處理,和生成前端html 列表兩大類,分別專注于數據生成和繪制。
在教學文檔管理模塊中,系統使用 Python 的 xlwt 庫來輸出Excel 文件,xlwt 中封裝了很多常用操作,其中設置單元格樣式主要是通過 XFStyle 這個類來完成的。系統將 MySQL 中的相關數據通過xlwt 按照事先約定好的格式寫入到Excel 文件中,最終輸出打印,成為需要留痕的教學文檔。
本智能題庫系統目前應用于計算機公共課的日常教學工作中,絕大多數功能均已實現。但是對于Office 操作題的自動評閱還需要進一步的完善,在評閱中遇到比較復雜的評閱要求會出現差錯,需要進行優化。