苍井优一级毛片免费观看,成年网站在线观看,日本一二三不卡视频,日日天天人人夜夜九九

24小時(shí)論文定制熱線(xiàn)

熱門(mén)畢設:土木工程工程造價(jià)橋梁工程計算機javaasp機械機械手夾具單片機工廠(chǎng)供電采礦工程
您當前的位置:論文定制 > 畢業(yè)設計論文 >
快速導航
畢業(yè)論文定制
關(guān)于我們
我們是一家專(zhuān)業(yè)提供高質(zhì)量代做畢業(yè)設計的網(wǎng)站。2002年成立至今為眾多客戶(hù)提供大量畢業(yè)設計、論文定制等服務(wù),贏(yíng)得眾多客戶(hù)好評,因為專(zhuān)注,所以專(zhuān)業(yè)。寫(xiě)作老師大部分由全國211/958等高校的博士及碩士生設計,執筆,目前已為5000余位客戶(hù)解決了論文寫(xiě)作的難題。 秉承以用戶(hù)為中心,為用戶(hù)創(chuàng )造價(jià)值的理念,我站擁有無(wú)縫對接的售后服務(wù)體系,代做畢業(yè)設計完成后有專(zhuān)業(yè)的老師進(jìn)行一對一修改與完善,對有答辯需求的同學(xué)進(jìn)行一對一的輔導,為你順利畢業(yè)保駕護航
代做畢業(yè)設計
常見(jiàn)問(wèn)題

針對VB上機考試的自動(dòng)評分系統

添加時(shí)間:2020/01/17 來(lái)源:大連海事大學(xué) 作者:張昌運
本文提出了一種基于Windows API的VB編程題自動(dòng)評分的解決方案,針對VB語(yǔ)言的事件驅動(dòng)和可視化界面設計的編程機制,采用“動(dòng)態(tài)評分與靜態(tài)評分相結合”的思路分別對學(xué)生程序進(jìn)行功能檢查和源程序中得分點(diǎn)和關(guān)鍵詞的匹配。
以下為本篇論文正文:

摘要

  目前,無(wú)紙化考試已經(jīng)成為一種趨勢,與此同時(shí),產(chǎn)生了一系列新課題,包括程序設計語(yǔ)言類(lèi)中編程題自動(dòng)評閱技術(shù)的研究。程序設計語(yǔ)言類(lèi)考試中編程題自動(dòng)評閱技術(shù)的實(shí)現,是無(wú)紙化考試必須解決的關(guān)鍵性問(wèn)題之一。目前編程題的自動(dòng)評閱技術(shù),成為一個(gè)研究熱點(diǎn)和難點(diǎn)。國內已經(jīng)有一些關(guān)于程序設計語(yǔ)言類(lèi)的考試系統,這些考試系統大多數是針對選擇題、填空題和完善程序題,可以說(shuō)對于這些客觀(guān)題或操作受限的主觀(guān)題的評分技術(shù)己經(jīng)很成熟。但是對于具有主觀(guān)性很強的編程題來(lái)說(shuō),還沒(méi)有特別好的辦法和成熟的技術(shù)。本課題就是為解決編程題評分這一難題而提出的,具有重要的理論和現實(shí)意義。

  本文首先對VB編程題自動(dòng)評分系統的課題背景和現狀進(jìn)行了研究和分析,然后對API函數、Windows的消息機制、進(jìn)程間通信以及字符串匹配算法進(jìn)行了深入地研究,模擬人工閱卷的思維過(guò)程,采用了動(dòng)態(tài)評閱和靜態(tài)評閱相結合的方法分別對學(xué)生程序進(jìn)行事件代碼的功能測評和界面設計的靜態(tài)測評。給出了VB編程題的自動(dòng)評分系統的解決方案和設計思路:使用APIHook記錄標準答案程序在運行時(shí)由人工操作所觸發(fā)的消息,在動(dòng)態(tài)評分時(shí),借助VB6.O對學(xué)生程序進(jìn)行編譯和運行,將記錄的消息發(fā)送給正在運行的學(xué)生程序以驅動(dòng)學(xué)生程序的自動(dòng)運行,利用輸出代碼將學(xué)生程序的運行結果輸出到指定的文件中,并和標準答案運行結果進(jìn)行匹配;在靜態(tài)評分時(shí),對學(xué)生程序文件進(jìn)行窗體信息匹配、窗體中控件信息匹配、關(guān)鍵詞匹配和得分點(diǎn)匹配,按照各個(gè)部分不同的權值計算學(xué)生的得分。最后,開(kāi)發(fā)了一個(gè)針對VB上機考試的自動(dòng)評分系統。

  初步實(shí)驗結果表明:基于WindowSAPI的VB編程題自動(dòng)評分系統能準確的給出編程題的分數,系統運行穩定,評分誤差較小。

  關(guān)鍵詞:W1ndowsAPI;Windows消息機制;字符串匹配;自動(dòng)評分

ABSTRACT

  Presently, the paperless examination has become a trend, at the same time, a series of new issues have emerged, including the study of automation marking technology for programming problem in programming language. The implementation of automation marking technology for programming problem in the examination of programming language is one of the key issues which must be resolved in the paperless examination.The automation marking technology has become a hotspot and difficulty. There already were some programming languages on the examination systems at home, most of them are for multiple-choice, blank-filling and procedure-improving. It can be said that the technology which is for objective questions or operation-limited subjective questions is already mature. But for the programming problem which is very subjective, there is no particularly good approach and mature technology. This topic is put forward to solve the  difficult  problem  of scoring  programming  problem  scoring,  with  important theoretical and practical significance.

  This article first researches and analyzes the status and the background of the automatic scoring system of VB programming problem, and then studies the API functions,  Windows message mechanism,  inter-process  communication and string matching algorithms in depth; this paper simulates the thinking process of manual marking, uses the method, which combines dynamic marking and static marking, to assess the event code of the function and statically evaluate the form design of student programs. This paper has given the solutions and design ideas of the automatic scoring system of VB programming problem, it uses API Hook to record the message,which is triggered by a man operator, when the standard answer program is in the run-time, and during dynamic scoring, it compiles and runs the program for students with the VB 6.0 ,and sends the message recorded to student program that is running to drive student program to run automatically, it uses the output code to output the results of actual runs of student program to the designated file, and matches the results with the results of actual runs of the standard answer; in static scoring, it is for the form message matching ,the control message matching in form, key words matching and scoring matching, and it calculates the score, according to the different weight of each part.Finally, it develops an automatic test scoring system for a VB testing on the machine.

  Preliminary results show that: the automatic scoring system of VB programming problem based on Windows API can give an accurate score, and it is stable, and has smaller scoring errors.

  Key Words:Windows API;  Windows Message Mechanism;  String Matching; Automatic Scoring

  隨著(zhù)計算機技術(shù)、互聯(lián)網(wǎng)技術(shù)的發(fā)展和廣泛應用,網(wǎng)絡(luò )已經(jīng)深入人們的生活,網(wǎng)絡(luò )教學(xué)也隨之發(fā)展起來(lái)。其中,以網(wǎng)絡(luò )為載體的無(wú)紙化考試作為教學(xué)評估中的重要形式,已經(jīng)變得越來(lái)越不容忽視。無(wú)紙化考試不僅節省出大量的人力和物力,把教師從繁重的出卷和批卷工作中解脫出來(lái),而且在一定程度上解決了考試這一群體活動(dòng)在時(shí)間上和空間上的不協(xié)調。網(wǎng)絡(luò )考試系統基本上能完成學(xué)生在線(xiàn)答題和客觀(guān)題自動(dòng)評分,對于主觀(guān)題的自動(dòng)評分的處理還處于積極探索階段。網(wǎng)絡(luò )考試中編程題的考核不僅應能充分反映出學(xué)生的編程技巧和編程思想,而且節省大量的資源,但是目前網(wǎng)絡(luò )考試中的編程題的評閱工作大多數還只能以運行結果作為唯一的評分標準。

  編程題自動(dòng)評分的實(shí)現,不僅能像客觀(guān)題評分一樣節省教師的時(shí)間,減少教師的勞動(dòng)強度,而且更加公平公正的給出學(xué)生對這門(mén)編程語(yǔ)言的把握;而這一課題涉及到人工智能、模式識別和自然語(yǔ)言的理解等諸多領(lǐng)域,因此它的實(shí)現對上述領(lǐng)域的發(fā)展具有很強的推動(dòng)作用。對編程題自動(dòng)評分的實(shí)現要涉及詞法分析、語(yǔ)法分析、交互式特性、多線(xiàn)程并行處理特性、消息處理、數據處理、系統健壯性等諸多技術(shù)上的難題,因此這一課題具有很高的研究和實(shí)用價(jià)值。

  無(wú)紙化考試是一種發(fā)展趨勢,編程題自動(dòng)評分技術(shù)的研究與實(shí)現,是實(shí)現程序設計語(yǔ)言類(lèi)無(wú)紙化考試亞待解決的關(guān)鍵。程序設計語(yǔ)言類(lèi)的無(wú)紙化考試和自動(dòng)評測一直以來(lái)都是國內外計算機教育領(lǐng)域的一個(gè)熱點(diǎn)話(huà)題。目前,自動(dòng)評測系統己經(jīng)很好的完成了對常見(jiàn)客觀(guān)題的自動(dòng)評測工作,對主觀(guān)題(比如問(wèn)答題、簡(jiǎn)答題等形式的試題)的評測也有一定的進(jìn)展,在對Word、Excel、AccesS、PowerPoint等應用軟件的上機考核中利用VBA(Visual Basiefor Application,vBA)技術(shù)基本上實(shí)現了自動(dòng)評分的功能。但是對于一些主觀(guān)性較強的考核題,尤其是編程題的評測,還沒(méi)有很好的解決方案。

  Visual Basic是一種集成開(kāi)發(fā)環(huán)境,它簡(jiǎn)單易學(xué),而且引入了可視化、事件驅動(dòng)和面向對象等編程設計方法,使的開(kāi)發(fā)應用程序的效率大大提高。為了考核學(xué)生應用VisualBasic編程能力,傳統的筆試考試己經(jīng)不能滿(mǎn)足需要。目前國內己經(jīng)有一些針對VB的考試系統,這些考試系統多數是針對選擇題和填空題。雖然對于客觀(guān)題的評分技術(shù)已經(jīng)很成熟,但是對于主觀(guān)性很強的編程題來(lái)說(shuō),還沒(méi)有特別好的方法和成熟的技術(shù)。

  本文基于校教改項目“計算機程序設計基礎(VB)考試方式的改革”,針對傳統考試中人力和財力支出大、試卷重復、考前押題等現象,設計開(kāi)發(fā)了一套基于Web的Visual Basic考試系統。系統中完善解決了選擇、判斷、程序完善和讀程題型的自動(dòng)評分,本文是為了解決“計算機程序設計基礎(VB)考試系統”中編程題自動(dòng)評分這一課題而提出的,所以具有重要的理論和現實(shí)意義。

  從上個(gè)世紀60年代開(kāi)始,國內外一些專(zhuān)家和學(xué)者針對學(xué)生的作業(yè)和語(yǔ)言文字進(jìn)行自動(dòng)評分的研究。經(jīng)過(guò)幾十年的努力研究,在不同的領(lǐng)域都有各自的應用系統產(chǎn)生,它們當中有很多己經(jīng)可以進(jìn)行實(shí)際應用,效果也比較好。

  Ellis Page應美國大學(xué)委員會(huì )的請求研發(fā)了pEG(project Essay GradepEG)系統,系統開(kāi)發(fā)的目的是為了使大規模數量的作文評分更加實(shí)際和高效。Page相信每個(gè)人的寫(xiě)作手法都蘊含著(zhù)內在特征,只要實(shí)現對這些內在特征的量化,就可以實(shí)現測評。PEG使用代理量度標準來(lái)衡量作文的內在質(zhì)量從而模擬人工對作文的評分。但內在質(zhì)量,如寫(xiě)作的流暢性,句子結構的復雜度,文章措辭等難以用計算機直接測量。于是PEG采取了間接測量寫(xiě)作概念分項指標的方法,即所謂的代理量度標準。比如:作文長(cháng)度代表了寫(xiě)作的流暢性、介詞、關(guān)系代詞等代表了句子結構的復雜度;詞長(cháng)的變化代表了文章措辭的情況。PEG完全依靠淺層語(yǔ)言學(xué)特征的分析而忽略語(yǔ)義方面的評分遭到指責,因為一些聰明的作者可以寫(xiě)出文理不通的長(cháng)文以獲取流暢性方面的高分。此外類(lèi)似的系統還有LsA(Latentsemantic alysis)、Erater、ATM、AutoM叭等系統。

  英國諾丁漢大學(xué)開(kāi)發(fā)的course Master系統,是較為成功的程序設計語(yǔ)言智能閱卷系統之一。該系統包括靜態(tài)測評和動(dòng)態(tài)測評兩個(gè)部分,但是比較成熟的是靜態(tài)測評部分。CourseMaster系統由于測試用例的選取方法不盡科學(xué),其測試效果并不理想。

  onlin Judge系統是一個(gè)在線(xiàn)的編程題自動(dòng)評分系統,最初被用于A(yíng)CM一ICPC國際大學(xué)生程序設計競賽和”1信息學(xué)奧林匹克競賽中的自動(dòng)評分和排名。用戶(hù)只要遵守規定就可以在線(xiàn)提交程序源代碼(程序類(lèi)型如C、C++、Pascal)。

  Onhne Judge系統對程序源碼進(jìn)行編譯和執行,根據預先給定的測試數據進(jìn)行測試。

  系統捕獲并保存運行結果,并把運行結果傳遞給一個(gè)結果判斷程序。結果判斷程序將運行結果和給定的結果進(jìn)行比較,或者檢測運行結果是否符合一定的邏輯條件,然后返回給用戶(hù)一個(gè)狀態(tài):通過(guò)、答案錯誤、超出時(shí)間限制、超過(guò)輸出限制、超出內存限制、運行時(shí)錯誤、格式錯誤、或是無(wú)法編譯,并返回程序使用的內存、運行時(shí)間等信息。此外類(lèi)似的系統還有TRY系統,BAGs系統,PAsS[川系統等。

  verifog Logiscone嚎統經(jīng)過(guò)對學(xué)生程序提取指標數據、篩選數據、匯總所需要的數據,按照制定的反映程序質(zhì)量(quality)、復雜度(eomplexity)、風(fēng)格(style)等量化標準,給出一個(gè)反映學(xué)生編程能力和編程質(zhì)量的指標。雖然這種量化的參數能表示程序的結構、數據流等特征,但它在分析源碼結構時(shí)表現較差,不能分析程序的語(yǔ)義,類(lèi)似系統有AssysT系統等。

  目前,國內在線(xiàn)考試、在線(xiàn)問(wèn)答和網(wǎng)絡(luò )教學(xué)系統層出不窮,比如:微軟認證(MCSE、MCDBA、MCSD等考試),思科認證(Ciseo Career Certifieation),惠普認證(HP.UX)以及TOFEL、GRE等等。這類(lèi)系統對客觀(guān)題和操作受限的主觀(guān)題的處理已經(jīng)取得重大進(jìn)展。

  在對主觀(guān)題自動(dòng)閱卷技術(shù)研究的同時(shí),編程題的自動(dòng)評分技術(shù)也有所進(jìn)步。

  由于編程語(yǔ)言文法的限制,使得編程題的分析較自然語(yǔ)言容易些。編程題自動(dòng)評分的方法可分為3類(lèi):動(dòng)態(tài)測試方法、源程序分析方法和軟件度量參數分析方法。

  動(dòng)態(tài)測試方法的基本思想是:運行學(xué)生的源程序,并將運行結果與標準答案運行后產(chǎn)生的結果進(jìn)行對比,給出學(xué)生程序的分數。源程序分析方法一般是指采用程序理解、語(yǔ)義分析等方法來(lái)分析學(xué)生的源代碼,首先將源代碼轉換成一種評分系統能夠理解的中間表示形式,對程序代碼中間表示形式進(jìn)行標準化轉換和消除代碼多樣性,然后對處理后的學(xué)生程序與標準答案的模板程序進(jìn)行匹配。軟件度量參數分析方法的基本思想是:根據學(xué)生程序的復雜性度量和程序特征,如模塊長(cháng)度,標識符長(cháng)度,代碼行數以及變量個(gè)數等來(lái)評價(jià)學(xué)生程序的質(zhì)量,從而給出評分的結果。

  針對VB編程題,自動(dòng)評分系統有上海大學(xué)段漢周提出的VB程序設計考核自動(dòng)評閱系統、北航計算機學(xué)院開(kāi)發(fā)的自動(dòng)評分系統、南京理工大學(xué)盛英潔提出的VB程序員考核自動(dòng)閱卷系統,教育部考試中心針對全國計算機等級考試(NCRE)所研制的上機考試系統等,還有一些ACM競賽用的程序自動(dòng)評分系統。

  上海大學(xué)段漢周提出的VB程序設計考核自動(dòng)評閱系統,在閱卷過(guò)程中,首先,分析用戶(hù)源程序是否擁有規定的控件、是否有多余的控件、以及控件的位置是否正確;其次,針對相應的控件事件,判斷源程序中是否編寫(xiě)了功能代碼;然后,在不影響用戶(hù)程序的前提下,插入測試代碼及臨時(shí)輔助代碼,使VB程序在運行過(guò)程中能夠輸出反映功能的運行參數;激活VB6.0集成開(kāi)發(fā)環(huán)境,運行用戶(hù)程序,向已運行的用戶(hù)程序發(fā)送模擬消息,使程序按照預定策略自動(dòng)運行,將反映程序功能的參數輸出到指定的臨時(shí)文件;最后,關(guān)閉用戶(hù)程序,關(guān)閉VB6.0集成開(kāi)發(fā)環(huán)境,分析臨時(shí)文件中記錄的內容,得出評閱結果。整個(gè)評分過(guò)程所依據的思路是判斷用戶(hù)程序功能是否正確,而程序內部的邏輯性、程序復雜度等并不是考核的目的。在評分過(guò)程中出現的沒(méi)有通過(guò)編譯或者不能運行的程序屬于完全錯誤的程序。

  南京理工大學(xué)盛英潔提出的VB程序員考核自動(dòng)閱卷系統采用靜態(tài)測評和動(dòng)態(tài)測評相結合的方法實(shí)現對學(xué)生程序的評閱。靜態(tài)測評是判斷源程序是否擁有規定的控件,是否擁有規定的控件事件,以及控件的屬性是否設置正確。動(dòng)態(tài)測評是對學(xué)生程序的功能進(jìn)行測試。該系統的評分思路是借助VB6.O對學(xué)生提交的程序進(jìn)行編譯和運行,用系統給出的策略文件來(lái)驅動(dòng)學(xué)生程序自動(dòng)運行,模擬人工閱卷的過(guò)程,向學(xué)生程序輸入測試數據,依據學(xué)生程序運行結果或情況,來(lái)給出相應的分數。系統評分過(guò)程中,解決了學(xué)生程序可能出現的被零除或死循環(huán)等程序錯誤。但是受到考核題型的限制,VB程序員考核自動(dòng)閱卷系統僅適用于培訓考核的自動(dòng)評閱工作。

針對VB上機考試的自動(dòng)評分系統:

系統用例圖
系統用例圖

用戶(hù)登錄界面
用戶(hù)登錄界面

編程題界面
編程題界面

消息列表初始化界面
消息列表初始化界面

解壓編譯界面
解壓編譯界面

目錄

  第1章 緒論
    1.1 課題背景
    1.2 研究意義
    1.3 國內外研究的現狀
    1.4 本文的主要研究工作
      1.4.1 研究目標
      1.4.2 研究的主要內容
    1.5 本文的組織結構
  第2章 相關(guān)技術(shù)介紹
    2.1 Windows API
      2.1.1 API函數
      2.1.2 APIHook
    2.2 Windows消息機制
      2.2.1 Windows消,息
      2.2.2 Windows消息系統
      2.2.3 Windows句柄
      2.2.4 消息的發(fā)送
    2.3 WindowS進(jìn)程間通信
      2.3.1 文件映射
      2.3.2 動(dòng)態(tài)鏈接庫
      2.3.3 WMCOPYDATA消息
    2.4 字符串匹配算法
      2.4.1 Brute一Force算法
      2.4.2 KMP算法
      2.4.3 Levenshtein算法
  第3章 基于WindowsAPI的vB編程題自動(dòng)評分系統的解決方案
    3.1 現有的自動(dòng)評分模型研究
      3.1.1 基于程序理解的編程題自動(dòng)評分模型
      3.1.2 基于語(yǔ)義相似度的編程題自動(dòng)評分模型
      3.1.3 基于語(yǔ)義理解的編程題自動(dòng)評分模型
      3.1.4 VB程序員考核自動(dòng)閱卷系統
      3.1.5 現有自動(dòng)評分模型和系統的分析
    3.2 基于Windows API的VB編程題自動(dòng)評分系統的解決方案
      3.2.1 基于Windows API的VB編程題自動(dòng)評分思路
      3.2.2 動(dòng)態(tài)評分的方法
      3.2.3 靜態(tài)評分的方法
      3.2.4 錯誤檢測
  第4章 系統的分析、設計與實(shí)現
    4.1 功能需求分析
    4.2 系統的設計
      4.2.1 系統的功能模塊劃分
      4.2.2 數據庫設計
      4.2.3 評分模塊流程圖
    4.3 系統的實(shí)現
      4.3.1 用戶(hù)管理模塊的實(shí)現
      4.3.2 編程題網(wǎng)絡(luò )考試模塊的實(shí)現
      4.3.3 編程題自動(dòng)評分的實(shí)現
  第5章 實(shí)驗及結果分析
    5.1 自動(dòng)評分方案的實(shí)驗
    5.2 實(shí)驗結果分析
  第6章 總結與展望
  參考文獻
  致謝

(如您需要查看本篇畢業(yè)設計全文,請您聯(lián)系客服索取)

相關(guān)內容
相關(guān)標簽:VB畢業(yè)設計
好優(yōu)論文定制中心主要為您提供代做畢業(yè)設計及各專(zhuān)業(yè)畢業(yè)論文寫(xiě)作輔導服務(wù)。 網(wǎng)站地圖
所有論文、資料均源于網(wǎng)上的共享資源以及一些期刊雜志,所有論文僅免費供網(wǎng)友間相互學(xué)習交流之用,請特別注意勿做其他非法用途。
如有侵犯您的版權或其他有損您利益的行為,請聯(lián)系指出,論文定制中心會(huì )立即進(jìn)行改正或刪除有關(guān)內容!