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

基于代碼倉庫的語言類計算機課程教學輔助平臺

2021-01-07 05:43:44陸柳敏楊李婷張衛豐
軟件導刊 2020年12期
關鍵詞:作業課程教師

陸柳敏,王 庭,楊李婷,張衛豐,4

(1.南京市供電公司,江蘇南京 210008;2.南京郵電大學計算機學院;3.南京郵電大學工程實踐中心,江蘇南京 210003;4.廣西可信軟件重點實驗室,廣西桂林 541004)

0 引言

目前,版本管理已經成功應用于大多數企業項目代碼管理中,版本管理所帶來的歷史回溯、分支保護、持續集成等功能逐漸成為項目生產必備要素。高校計算機課程強調使用項目代碼完成實踐課程,但是項目化代碼作業導致學生作業管理難、無法追蹤進度、代碼評定困難等問題。

本文設計并實現了一個基于版本管理的教學平臺系統,在課程作業管理中引入版本管理的優秀特性與功能。系統使用分布式版本管理工具Git,與課程作業管理邏輯相結合,使用Git 操作代替學生提交作業、教師創建作業、教師同步作業等行為。

筆者根據使用代碼倉庫管理課程作業遇到的問題,提出“作業批量分發”“作業自動批改”“作業在線批注”“作業相似性檢測”4 點需求,據此4 點需求使用代碼倉庫、持續集成等技術進行縝密設計,在南京郵電大學的計算機課程中進行試用,反饋良好。

1 相關工作

版本控制軟件提供完備的版本管理功能,用于存儲、追蹤目錄(文件夾)和文件的修改歷史,是軟件開發者必備工具,Git 已經成為軟件行業開發人員的首選。

代碼克隆表示在文本、詞匯、結構或含義方面類似或等同的源代碼片段。Kamiya 等[1]將代碼克隆定義為程序干擾和較差的軟件可維護性。代碼克隆具有兩面性:一方面代碼克隆可以提高軟件開發效率[2-3];另外一方面,軟件克隆可能導致長期的軟件維護風險,例如代碼中可能存在重復缺陷以及克隆代碼片段之間的可行性缺失現象[4];Chatterji 等[5]給出了克隆代碼的開放式查詢,而Stephan等[7]回顧了該領域相關成果。Mondal 等[6]研究表明,盡管代碼克隆對軟件可維護性會產生負面影響,但克隆代碼可能比非克隆代碼擁有更高的準確性;但是在學生作業中直接克隆其它人的作業或代碼并不是一種好行為,學生缺失了鍛煉的機會,教師無法正確評估學生學習的掌握情況。

此外,文獻[8]主要利用微信進行編程教育,增強互動性;文獻[9]利用黑盒測試技術對學生作業進行自動測試,解決教師批改作業工作量大、學生實踐能力差等問題,通過程序設計輔助教學平臺可以提高教師教學質量和學生的學習效率;雷大正等[10]提出以能力為本位,以編程實踐為主線的思想,培養學生實際開發能力。

這些工作在一定程度上解決了編程教育信息化問題,但是沒有解決學生編程過程的管理和作弊問題。本文提出利用Git 代碼倉庫的版本管理機制實現學生作業過程管理和防作弊,有效提高了編程實訓效果。

2 教學平臺設計

系統需求有3 個方面:①在代碼管理方面,提供類似于GitHub 的代碼管理功能,管理員可以管理教師及學生賬號;②教師可以創建學生賬號并分組,創建代碼倉庫,并且可以把代碼倉庫分發給某個小組。此外,教師可對學生提交的代碼進行批改注解,對學生的作業進行相似性檢測;在作業批改與自動檢測方面,需要為教師提供課程項目代碼評判結果展示界面,以便管理者審查學生未合格的代碼;③教師在批改代碼文件時,系統需要為其提供非侵入式批注功能,并通過郵件等方式將批注消息與內容發送給相應的代碼倉庫作者。

系統根據需求分為管理員、教師與學生3 種角色:①管理員負責整個平臺的管理,負責教師與學生賬號的管理;②教師主要職責有:管理學生賬戶,包括導入導出與分組功能;創建模板倉庫;創建學生倉庫;批改學生倉庫;相似性檢測等;③學生權限包括登錄系統,下載及同步代碼倉庫。

系統總體架構如圖1 所示。系統架構基礎服務組件包含Git 服務組件與數據服務組件。Git 組件主要負責Git的相關數據查詢與操作自動化,數據服務組件提供數據庫相關的操作接口。核心功能組件包括注解機制服務組件、持續集成服務組件、對比算法組件以及權限配置組件。這4 種組件與基礎服務組件相結合使用,組成系統各部分主要功能模塊。

圖1 系統總體架構

(1)注解機制服務組件。該部分主要關注教師與學生的非侵入式批注功能與郵件通知服務,該組件與基礎服務組件結合使用作為作業在線批注模塊的核心功能。

(2)持續集成服務組件。此組件負責系統與持續集成工具進行數據交互的功能,它是作業自動批改功能模塊的核心部件,可與數據服務組件結合使用將數據存儲到系統數據庫。

(3)對比算法組件。這是一個包含代碼相似度核心對比算法的組件,主要功能是對比出兩個代碼倉庫的相似度。

(4)權限配置組件。這一部分體現系統中各賬戶的權限控制與權限分配規則功能,它與基礎組件中的數據服務、Git 服務相結合作為賬戶管理、作業項目存儲管理兩個模塊的核心功能。

綜上所述,本系統在設計結構上具有較強的可擴展性,主要體現在以下3 點:①各功能模塊之間相互隔離,僅通過數據庫中的數據進行驅動,各模塊之間耦合性低;②基礎服務組件提供數據庫數據、Git 代碼倉庫數據的管理接口,新加入模塊可直接使用標準接口開發,省去了大量重復代碼;③系統頁面的控制層均由Wicket 實現,易于插入新功能頁面。

3 作業相似度檢測

代碼相似度檢測功能是項目的核心功能。在計算機課程管理中,為降低作業評判工作量,大多數課程會使用統一題目發給學生,造成學生大量抄襲作業現象。一些課程開始使用線上編程系統,但依舊無法解決抄襲問題,并且這種在線編程系統無法支持工程化作業。

鑒于此,本文提出在代碼倉庫模式下的代碼管理中進行代碼相似性檢測方案,設計并實現一種新型的代碼相似度檢測算法,其主要實現原理是:利用獲取Git 代碼倉庫中的代碼版本歷史提交信息之間的差異,判斷兩份代碼的更迭軌跡是否相似,從而獲得學生作業的相似性結果。該方法與傳統代碼相似性判斷方法不同,其將判斷目標由代碼主體轉移到代碼的更迭記錄,這種轉變使其更適合采用工程項目中代碼的相似性檢測方法,但需要基于Git 代碼倉庫實現。

項目對比算法有兩個核心思想:①需要根據倉庫兩兩版本之間的相似度確定最終的相似度;②對于兩個版本之間的相似性需要考慮文本內容的相似性以及每個版本與之前版本差異的相似性。

設倉庫R1與倉庫R2是兩個代碼倉庫,則倉庫間的相似性可通過公式(1)計算。

其中,m和n分別為倉庫R1和R2的提交次數,Max(m,n)表示取m和n的最大值,C(R1,R2)表示R1和R2中檢測出的相似版本個數。

4 教學平臺反饋

基于代碼倉庫的教學平臺目前已經成功應用到南京郵電大學計算機學院兩門課程中,項目申請者是編程教育一線教師,對編程教育中的痛點認識深刻。在2018 年的實踐中,利用該平臺的過程管理功能判定13 位學生不及格(在以前沒法判定不及格),在2019 年4 月份的“軟件設計實踐”中,成功實現多人協作模式下的軟件開發,通過問卷調查取得較好的應用效果。學生反饋情況如圖2 所示。

圖2 學生學習收獲反饋

5 結語

本平臺在編程語言類教學課程中可作為學生的統一作業提交平臺,教師可方便查看學生作業進度并進行批改、相似度檢測等操作,學生在這種強有力的監管之下會積極進行編程作業的原創工作。本平臺在南京郵電大學C語言教學課程中試用,評價良好。

后續工作是基于此平臺對學生的單人或協作作業進行分類規劃,對于協作的作業進行個人作業量統計與相似度檢測,逐步杜絕抄襲,為學生創造良好的學習氛圍。

猜你喜歡
作業課程教師
最美教師
快樂語文(2021年27期)2021-11-24 01:29:04
數字圖像處理課程混合式教學改革與探索
軟件設計與開發實踐課程探索與實踐
計算機教育(2020年5期)2020-07-24 08:53:38
快來寫作業
教師如何說課
甘肅教育(2020年22期)2020-04-13 08:11:16
為什么要學習HAA課程?
未來教師的當下使命
作業
故事大王(2016年7期)2016-09-22 17:30:08
圓我教師夢
吐魯番(2014年2期)2014-02-28 16:54:42
我想要自由
主站蜘蛛池模板: 丁香婷婷久久| 制服丝袜在线视频香蕉| A级毛片高清免费视频就| 在线日韩日本国产亚洲| 亚洲国产中文欧美在线人成大黄瓜 | 最新日本中文字幕| 久热这里只有精品6| 五月丁香在线视频| 91精品视频播放| www.91在线播放| 亚洲天堂在线免费| 激情综合网激情综合| 狠狠躁天天躁夜夜躁婷婷| 国产网友愉拍精品视频| 日韩欧美高清视频| 国产a网站| 国产一级二级三级毛片| jizz国产在线| 国产欧美性爱网| 国产精品内射视频| 精品国产网站| 国产在线精品人成导航| 久久久四虎成人永久免费网站| 国产在线97| 国产无码性爱一区二区三区| www亚洲天堂| 亚洲国产无码有码| 国产精品永久在线| 亚洲不卡av中文在线| 免费人成视网站在线不卡 | 久久性视频| 国产综合日韩另类一区二区| 亚洲综合九九| 天堂va亚洲va欧美va国产| 国产xxxxx免费视频| 国产成人精品视频一区视频二区| 亚洲天堂福利视频| 亚洲午夜福利精品无码| 亚洲乱码精品久久久久..| 国产日韩久久久久无码精品| 中文字幕免费播放| 97久久精品人人做人人爽| AV在线天堂进入| 国产乱子伦一区二区=| 国产一区二区免费播放| 看你懂的巨臀中文字幕一区二区| 国产丝袜91| 亚洲精品动漫| 国产在线八区| 亚洲伊人电影| 国产无码性爱一区二区三区| 国产高清无码第一十页在线观看| 国产一级在线播放| 国产精品女主播| 国产尹人香蕉综合在线电影| 亚洲一区无码在线| 免费午夜无码18禁无码影院| 99re在线免费视频| 美女内射视频WWW网站午夜| 无码又爽又刺激的高潮视频| 欧美爱爱网| 亚洲第一中文字幕| 91国内在线观看| 九色视频在线免费观看| 亚洲国产精品久久久久秋霞影院| 欧美精品1区2区| 国产91丝袜在线观看| 国产福利一区视频| 欧美色综合网站| 中文字幕久久亚洲一区| 91在线视频福利| 国产福利免费视频| 精品国产中文一级毛片在线看 | 免费一看一级毛片| 丰满人妻久久中文字幕| 91在线日韩在线播放| 久久国产高清视频| 好吊日免费视频| 欧美午夜视频| 欧美精品在线免费| 国产成人AV综合久久| 99精品热视频这里只有精品7|