基于頻譜分析的C程序反饋方法研究及應(yīng)用
發(fā)布時間:2023-04-16 17:45
隨著代碼的自動評測技術(shù)在教學(xué)領(lǐng)域的應(yīng)用越來越廣泛,國內(nèi)許多高等院校都在著手開發(fā)適合于本校教學(xué)需要的支撐系統(tǒng)。C語言程序設(shè)計課程作為學(xué)習(xí)編程的入門課程,大多受眾不具備編程基礎(chǔ),缺乏熟練調(diào)試的能力,修正代碼錯誤是學(xué)生中存在的普遍難題。而ACM賽制專用的黑盒評測技術(shù)反饋有限,用戶只能獲取評測結(jié)果與語法錯誤,無法有效指導(dǎo)學(xué)生定位代碼中的邏輯錯誤。長此以往,反饋不足的弊端會逐漸消磨學(xué)生深入解決問題的興致,削弱測試驅(qū)動型學(xué)習(xí)帶來的益處。為了讓競賽性質(zhì)的自動評測技術(shù)更好的契合程序設(shè)計類課程的教學(xué)需求,改善評測反饋不足的現(xiàn)狀,本文針對C程序的邏輯錯誤反饋方法展開研究工作,主要研究及開發(fā)工作包括三個方面。首先,研究了自動化錯誤定位技術(shù)在代碼評測方向的應(yīng)用,將基于頻譜的輕量級定位技術(shù)與C語言教學(xué)需要相結(jié)合,提出了基于頻譜分析的C程序反饋模型。通過分析反饋模型在本校Online Judge(OJ)系統(tǒng)的實際數(shù)據(jù)集上的定位效果,說明了該模型可以大幅縮減錯誤代碼的審查范圍,能夠為學(xué)生查找程序邏輯錯誤提供有效指導(dǎo)。其次,應(yīng)用基于頻譜分析的C程序反饋模型,設(shè)計并實現(xiàn)了一個基于web的C語言實驗支持系統(tǒng)。該系統(tǒng)能夠指...
【文章頁數(shù)】:78 頁
【學(xué)位級別】:碩士
【文章目錄】:
摘要
Abstract
1 緒論
1.1 研究背景與意義
1.2 國內(nèi)外研究現(xiàn)狀
1.2.1 國外研究現(xiàn)狀
1.2.2 國內(nèi)研究現(xiàn)狀
1.3 本文主要研究內(nèi)容
1.4 本文結(jié)構(gòu)安排
2 基于頻譜分析的錯誤定位技術(shù)
2.1 相關(guān)定義
2.2 錯誤定位思想
2.3 基本操作流程
2.4 度量公式
2.5 實例詳解
2.6 本章小結(jié)
3 基于頻譜分析的C程序反饋方法
3.1 基于頻譜分析的C程序反饋模型
3.2 基于頻譜分析的C程序反饋實現(xiàn)
3.2.1 程序插樁
3.2.2 信息收集
3.2.3 可疑度計算
3.3 模擬實驗與結(jié)果分析
3.3.1 評估標(biāo)準(zhǔn)
3.3.2 實驗環(huán)境
3.3.3 實驗數(shù)據(jù)
3.3.4 實驗結(jié)果與分析
3.4 本章小結(jié)
4 基于程序評測及反饋的C語言實驗支持系統(tǒng)
4.1 系統(tǒng)需求分析
4.1.1 功能性需求
4.1.2 非功能性需求
4.2 系統(tǒng)概要設(shè)計
4.2.1 功能模塊設(shè)計
4.2.2 數(shù)據(jù)庫邏輯設(shè)計
4.2.3 軟件架構(gòu)設(shè)計
4.3 主要功能模塊實現(xiàn)
4.3.1 登錄模塊實現(xiàn)
4.3.2 用戶模塊實現(xiàn)
4.3.3 題目模塊實現(xiàn)
4.3.4 評測模塊實現(xiàn)
4.3.5 實驗?zāi)K實現(xiàn)
4.3.6 反饋模塊實現(xiàn)
4.4 本章小結(jié)
5 程序在線評測的安全性研究
5.1 學(xué)生程序評判過程中存在的安全問題
5.2 在線判題的安全體系結(jié)構(gòu)設(shè)計
5.2.1 源代碼層面限制
5.2.2 應(yīng)用進(jìn)程級別限制
5.2.3 防止用戶重復(fù)提交
5.2.4 用戶數(shù)據(jù)加密
5.3 關(guān)鍵技術(shù)實現(xiàn)
5.3.1 代碼合法性檢查
5.3.2 函數(shù)去抖
5.3.3 令牌攔截
5.3.4 用戶數(shù)據(jù)加密與源碼文件哈希
5.4 測試與評價
5.5 本章小結(jié)
6 總結(jié)與展望
6.1 研究工作總結(jié)
6.2 工作展望
致謝
參考文獻(xiàn)
攻讀碩士學(xué)位期間主要研究成果
本文編號:3791569
【文章頁數(shù)】:78 頁
【學(xué)位級別】:碩士
【文章目錄】:
摘要
Abstract
1 緒論
1.1 研究背景與意義
1.2 國內(nèi)外研究現(xiàn)狀
1.2.1 國外研究現(xiàn)狀
1.2.2 國內(nèi)研究現(xiàn)狀
1.3 本文主要研究內(nèi)容
1.4 本文結(jié)構(gòu)安排
2 基于頻譜分析的錯誤定位技術(shù)
2.1 相關(guān)定義
2.2 錯誤定位思想
2.3 基本操作流程
2.4 度量公式
2.5 實例詳解
2.6 本章小結(jié)
3 基于頻譜分析的C程序反饋方法
3.1 基于頻譜分析的C程序反饋模型
3.2 基于頻譜分析的C程序反饋實現(xiàn)
3.2.1 程序插樁
3.2.2 信息收集
3.2.3 可疑度計算
3.3 模擬實驗與結(jié)果分析
3.3.1 評估標(biāo)準(zhǔn)
3.3.2 實驗環(huán)境
3.3.3 實驗數(shù)據(jù)
3.3.4 實驗結(jié)果與分析
3.4 本章小結(jié)
4 基于程序評測及反饋的C語言實驗支持系統(tǒng)
4.1 系統(tǒng)需求分析
4.1.1 功能性需求
4.1.2 非功能性需求
4.2 系統(tǒng)概要設(shè)計
4.2.1 功能模塊設(shè)計
4.2.2 數(shù)據(jù)庫邏輯設(shè)計
4.2.3 軟件架構(gòu)設(shè)計
4.3 主要功能模塊實現(xiàn)
4.3.1 登錄模塊實現(xiàn)
4.3.2 用戶模塊實現(xiàn)
4.3.3 題目模塊實現(xiàn)
4.3.4 評測模塊實現(xiàn)
4.3.5 實驗?zāi)K實現(xiàn)
4.3.6 反饋模塊實現(xiàn)
4.4 本章小結(jié)
5 程序在線評測的安全性研究
5.1 學(xué)生程序評判過程中存在的安全問題
5.2 在線判題的安全體系結(jié)構(gòu)設(shè)計
5.2.1 源代碼層面限制
5.2.2 應(yīng)用進(jìn)程級別限制
5.2.3 防止用戶重復(fù)提交
5.2.4 用戶數(shù)據(jù)加密
5.3 關(guān)鍵技術(shù)實現(xiàn)
5.3.1 代碼合法性檢查
5.3.2 函數(shù)去抖
5.3.3 令牌攔截
5.3.4 用戶數(shù)據(jù)加密與源碼文件哈希
5.4 測試與評價
5.5 本章小結(jié)
6 總結(jié)與展望
6.1 研究工作總結(jié)
6.2 工作展望
致謝
參考文獻(xiàn)
攻讀碩士學(xué)位期間主要研究成果
本文編號:3791569
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3791569.html
最近更新
教材專著