999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Moodle平臺數據驅動的機試系統研發

2019-04-01 01:33:26唐宇鵬唐亞哲朱海萍吳茜媛
計算機教育 2019年3期
關鍵詞:數據庫課程系統

唐宇鵬,唐亞哲,朱海萍,吳茜媛

(西安交通大學 電子與信息工程學院, 陜西 西安710049)

1 研究背景

計算機編程目前已經成為高校理工科專業的必修課,而許多高校編程課程的考核還停留在傳統的筆試方式。編程類課程的教學目的是讓學生具備程序設計、編碼和調試的全流程能力。在紙上書寫編程題不但與編程學習的初衷相悖,也給考生和閱卷教師帶來了很多不便[1]。因此,只有進行機試,才能科學衡量一個學生的編程水平,引導學生提升自己的編程能力[2-3]。

目前機試在高校中并不普遍,主要原因如下。

(1)現有的機試系統,要么僅采用了機試形式,學生提交源代碼,但要教師手工評測;要么采用比較先進的程序源代碼結構分析、相似性分析等技術,在源代碼層面上評估學生的編程水平。這種方式的問題在于:技術不夠成熟,評估的客觀性和正確性存在爭議。總之,沒有簡單好用的機試系統是機試沒有被普遍應用的重要原因。

(2)雖然很多學校有針對編程競賽的在線評測(Online Judge,OJ) 和題庫,但這類OJ都是對外開放的,其封閉性無法滿足考試要求,也無法導入考生信息。更重要的,OJ的評測方式是競賽的評測機制,通過就是滿分,未通過就是0分。這樣的評測方式有些極端,不適合計算機編程課程的考核。

(3)現有的機試系統題目和順序都是固定的,沒有給予學生自主選擇題目的權限,考核方式缺乏科學性。

基于上述分析,筆者提出了機試系統的基本要求:機試系統必須能夠自動評分、簡單可靠,又能正確客觀地評估學生的水平,還能提供各種輔助功能協助教師組織和實施機試。

目前Moodle在高校計算機教學工作中得到了較好的普及[4],學生和教師已熟悉了Moodle的基本使用方法。Moodle中可以安裝OJ(Online Judge)插件[5],可以完成在線評測和自動評分[6],為基于Moodle開發機試系統提供了可行性。本文提出的基于Moodle的機試系統原則是盡量使用Moodle本身提供的各種功能特性,減少對Moodle系統源代碼的修改,使機試系統像Moodle一樣簡單可靠[7-8]。具體來說,機試系統使用Moodle提供的OJ插件完成學生提交程序的自動在線評分[9],通過建立大容量分難度的題庫,給學生在同一難度上提供多個題目選擇,減少偶然性帶來的評估誤差。

2 Moodle系統分析及機試方案的提出

Moodle(Modular Object- Oriented Dynamic Learning Environment)是一個開源的課程管理系統(CMS)[7],優點是開源、免費,平臺界面簡潔、美觀、實用。由于其強大的功能和先進的教育理念,Moodle得到了國際廣泛認可和使用[8]。我國各大高校也在教學工作中廣泛使用Moodle。通過引入OJ功能,Moodle系統為程序設計類課程提供了非常方便的作業在線評測。

本文機試系統的研發來自學校的教學改革項目,根據計算機系機試需求,機試系統需要支持用戶上載源程序、自動在線評測、分數統計等功能,能支持200人同時機試,機試系統的生成時間不大于60秒,系統響應時間小于2秒。基于Moodle系統開發時,應盡量減少對原Moodle系統的修改,以保持系統的可靠性和簡單性。換句話說,應盡量以增量的方式而不是以修改的方式研發機試系統。

分析Moodle的源代碼可以發現,Moodle系統中在線評測部分的主要流程見圖1[9]。通過跟蹤發現,該流程的運行過程其實就是對課程分類(course category)、課程(course)、節(section)、模 塊(modules)、 題 目(assignment)和 用 戶(user)等多個數據庫表單進行操作的過程[10]。具體來說,每一個課程分類中含有若干課程,每個課程的題目分為若干的節,每個節中有若干模塊,而模塊和題目一一對應。上述所有數據,最終通過上下文(mdl_context)表單中的路徑聯系在一起,Moodle課程核心部分E-R圖見圖1。

圖1 Moodle系統OJ部分數據庫E-R圖

基于Moodle開發機試系統的原則,本著盡量少修改源代碼以保持可靠性的目標,本文提出了通過數據庫層面的操作來完成機試系統研發的思路。具體來說,就是僅僅對之前提到的課程分類(course category)、課程(course)、節(section)、模塊(modules)、題目(assignment)和用戶(user)等數據庫表單,根據機試需求進行記錄的插入和修改,而保持Moodle的基本架構和基本運行流程不變,可稱之為數據驅動的機試系統開發。基于這個機試方案,本文進行了簡單的可行性實驗,實驗結果驗證了該方案的有效性。

3 系統設計

系統設計的重要一環就是分析Moodle的OJ系統的流程以及流程中每個步驟完成的相關數據庫操作,包括其操作的數據庫名稱和操作的具體內容,見表1。

機試系統的核心思想就是為每位參加機試的考生創建一門課程,課程名稱就是考生的學號。同時,為每位任課教師創建一個課程分類,該課程分類包含所有參加此次機試的考生對應的課程。為了更科學地評估學生的編程能力,機試系統從題庫選取4種難度的題目,每種難度的題目隨機選取4道,分別放在4節中,考生可根據自身情況從每個難度中選擇一道題目完成,這樣可以有效避免機試題目的偶然性。教師還可以根據實際情況劃分4道題的分數占比。基于表1,新建構的機試系統流程及每個流程所操作數據庫見表2。

基于上述研發思路,機試系統在Moodle的基礎上增加了考試課程生成模塊。教師上傳學生信息之后,只需點擊添加課程按鈕,機試系統便自動從題庫中按照1—4的難度順序隨機挑選題目,并在mdl_assignment和mdl_assignment_oj_tests中添加相應的記錄。系統會為代課教師在mdl_course_categories中添加課程分類,并根據上傳的學生信息在mdl_course中為每個學生在該課程分類下建立課程。之后,系統按照之前生成的題目在表mdl_course_modules中生成相應的題目模塊。最終,系統在表單mdl_context中將生成的題目模塊與各個學生課程進行連接,整個過程見圖2 。

表1 Moodle的OJ系統流程及其與相關數據庫的對應關系

表2 新的機試系統流程及其與相關數據庫的對應關系

圖2 考試課程生成模塊

4 具體實現

機試系統研發的實現工作包括搭建Moodle系統平臺、建立數據庫、編寫操作數據庫元素的應用程序、程序測試與系統調試、考試現場的環境搭建。對數據庫進行的操作都存放在系統外的PHP文件中,且在Moodle教學網頁中可以通過自定義按鈕直接跳轉到這些PHP文件中,所有修改均沒有大范圍改變Moodle源代碼,而是將自己獨立的代碼通過這樣的“接口”和Moodle系統連接。對數據庫元素進行的核心操作均直接作用在Moodle數據庫的原有表單中,這樣不但可以方便快捷地布置機試系統,還可以最大程度地保證系統的可靠性和穩定性。

5 系統測試

系統以1 000人的課程為例進行功能測試,教師首先生成機試系統,為1 000個學生分別建立課程,也為教師創建了課程分類,該課程分類包含所有的1 000門課程。任意打開一個學生的課程,系統會顯示該學生本次機試的題目,見圖3。題目難度分為4個等級,且每個等級有4道題目,考生從同一難度中的4道題中選一題作答。

為檢驗機試系統的性能,需要進行兩方面的測試。首先,需要測試教師生成機試系統的時間,分別測試100~1 000人時機試系統的生成時間,以100人為間隔,測試結果見圖4。

圖3 學生考試題目總界面

由圖4可以看出,機試系統的生成時間隨著課程人數的增長呈現線性增長趨勢。考慮到機試系統是對Moodle平臺進行數據層面上的修改,人數越多,需要增加的課程數量就越多,需要配置的題目數量就越多,因此,生成時間的線性增長是合理的。200個學生時,機試系統生成時間基本在10秒以下,滿足系統性能需求。學生人數達到1 000人時,生成時間也在一分鐘以內。

圖 4 生成課程平均用時圖

其次,為了測試機試系統的并發能力,本文借助Apache Bench[11-12]工具對1 000個考生同時在線進行了模擬測試。經過多次測試,計算出的平均響應時間為72.816 3毫秒,完全滿足性能要求。

6 結語

針對目前存在的程序設計筆試、機試考核方式的缺陷,本文基于Moodle系統,在數據層面上對系統進行改造,實現了機試系統的全部功能。系統易于搭建,功能齊全,運行穩定,相比傳統的筆試形式更為科學、客觀。目前,該系統滿足機試系統的功能和性能要求,并已進行了小規模試用,效果良好,可為促進計算機編程類課程的實驗教學改革起到積極作用,計劃在200~300人規模下進行更多的測試后,開始正式部署應用。

猜你喜歡
數據庫課程系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
數字圖像處理課程混合式教學改革與探索
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
軟件設計與開發實踐課程探索與實踐
計算機教育(2020年5期)2020-07-24 08:53:38
為什么要學習HAA課程?
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
主站蜘蛛池模板: 天堂在线视频精品| 免费女人18毛片a级毛片视频| 国产极品美女在线观看| 婷婷色婷婷| 九九热在线视频| 好吊日免费视频| 四虎永久在线精品国产免费 | 亚洲欧美天堂网| 欧美成人区| 亚洲精品无码久久毛片波多野吉| 久久夜色精品国产嚕嚕亚洲av| 亚洲视频四区| 中文字幕亚洲精品2页| 亚洲人成网站在线播放2019| 国产成人一二三| 欧美一级高清视频在线播放| 国产亚洲精品yxsp| 国产成人在线小视频| 91在线丝袜| 97在线免费视频| 91成人免费观看在线观看| 中文字幕啪啪| 日韩欧美视频第一区在线观看| 欧美日在线观看| 欧美一级专区免费大片| 色综合久久综合网| 婷婷色中文| 色综合综合网| 国产白浆在线观看| 日韩123欧美字幕| 日本精品视频| 亚洲综合18p| 欧美色丁香| 亚洲第一区欧美国产综合| 欧美区一区二区三| 亚洲欧美天堂网| 福利国产微拍广场一区视频在线| 亚洲欧美天堂网| 全部免费特黄特色大片视频| 色综合手机在线| 国产成人午夜福利免费无码r| 天堂网国产| 伊人激情综合网| 一级全免费视频播放| 欧美伊人色综合久久天天| 久久视精品| 国产视频只有无码精品| 青青草原偷拍视频| 日本三级欧美三级| 中文字幕在线看视频一区二区三区| 欧美成人在线免费| 国产人成乱码视频免费观看| 免费在线a视频| 国产一区二区色淫影院| 国产成人精品男人的天堂下载 | 亚洲综合婷婷激情| 欧美一级爱操视频| 久久成人18免费| 国产精品美女网站| 亚洲成人动漫在线| 国产黑丝一区| 亚洲美女操| 国产高清精品在线91| 亚洲无码在线午夜电影| 国产欧美日韩精品综合在线| 在线国产毛片| 亚洲第一区欧美国产综合| 成人国产精品视频频| 99999久久久久久亚洲| AV无码国产在线看岛国岛| 九色最新网址| 一本一道波多野结衣一区二区| 欧美日韩一区二区三区四区在线观看 | 精品国产美女福到在线不卡f| 91成人精品视频| 91视频99| 一级毛片免费观看久| AV无码一区二区三区四区| 在线观看网站国产| 成人福利在线视频| 亚洲第一页在线观看| 国模沟沟一区二区三区|