节点文献
程序作业自动测评的研究与实现
Research and Realization for Program Assessment Automatically
【作者】 樊敏;
【导师】 吴伟民;
【作者基本信息】 广东工业大学 , 计算机应用技术, 2005, 硕士
【摘要】 近年来计算机辅助测评(CAA)领域受到了更多的关注,但所解决的多为客观题测评问题,而主观题由于灵活性和创造性强等因素,一直没有出现很好的测评方案。程序作业属于主观题,与自然语言相比,由于程序设计语言的规范性强,多义性少,加之学生程序主要是中小程序,可作为主观题测评领域的一个研究出发点和突破点。 本文研究学生程序作业的计算机辅助评价。在本工作室研发的编程学习可视化环境基础上,通过扩充基于程序作业标准答案模板的测评技术,实现对学生程序作业的计算机辅助评价,既有利于程序设计语言初学者更快更好地理解掌握程序设计的基本概念和方法,也有利于减轻教师批改程序作业的负担,增强学生程序测评工作的客观性、准确性和实时性。 本课题的主要研究目标是程序测评系统的设计和实现。在该系统中,采用源码特征比较的方案,将学生程序与存储在题库中的模板程序集依次比较,然后根据基于相似度概念的评分规则得出对学生程序完成程度和质量的测评结果。在学生程序与模板程序比较前需要对二者进行一系列信息提取和结构转换工作。输入源程序后通过语法分析主要建立起对程序控制结构的信息树,称作扩展语法树(EST);在EST的基础上通过对数据流向的分析,建立起扩展流图(EFG)作为过渡;在EFG基础上通过对程序基本块的划分,对各子块的控制和数据依赖关系分析,以及使用一些规范化规则等技术,得到了程序特征属性图(PFSG)。之后的程序评价过程是基于程序对等结构和程序等价结构的概念,对学生程序和模板程序的PFSG进行的。 本文的内容组织如下:第一章介绍自动测评相关技术背景、现状和意义,并介绍本课题的研究点;第二章介绍整个测评系统的总体架构和处理过程;第三章提出程序对等结构和等价结构的概念,并分析了需要从程序中提取的信息;第四章讨论测评系统中数据结构的选用;第五章介绍表达式、条件语句和循环语句等程序结构规范化技术;第六章介绍变量跟踪技术和比较评分技术;第七章以一个实际的例子说明如何使用模板程序测评学生程序的整体过程。
【Abstract】 Computer Auxiliary Assessment(CAA) has got more attention in the recent years. Objective problems being resolved, there are not any good methods appeared for subjective problems because of their variety and creativity. Student program exercises belong to subject problems. Since program language has some features different from human language, such as strongly rigid criterion, fewer multivocal situations, and here mainly moderate size programs processed.CAA for student program is studied in this paper. On the basis of program studying visualization environment, which was developed by our studio, student program is assessed logically using automated program assessment technique based on model programs. That would benefit not only beginner from comprehension and mastery of basic program concepts and design methods, but also tutors from original tasks alleviation, and in the mean time, program assessment work would be more impersonal, exact, and real-time.The goal is to design and to implement the program assessment system. In the system, the idea of comparing source codes’ features is adopted. Student program and model programs stored in the problem library are compared in turn, and then assessment result about accomplished degree and quality of student program is acquired through assessment rules based on the concept of Equivalent Degree. Before comparing student program with model program, a series of work is needed to be done, such as information abstraction, structure transformation. After source program inputted, information tree of program control structure, which is called extended syntax tree (EST) , is produced by syntax analyzing process; Extended flow graph (EFG) is produced by data flow analyzing on the basis of EST; Program Features and Attributes graph (PFSG) is produced on the basis of EFG by a series of techniques, such as program basic block partition, control dependence and data
- 【网络出版投稿人】 广东工业大学 【网络出版年期】2005年 06期
- 【分类号】TP311.11
- 【被引频次】11
- 【下载频次】259