填空题、程序题的自动阅卷功能。应用C#语言中的反射知识可以实现简单的程序体的修改。选择该开发系统,具有创新性、可行性、需要性,其科学性也不言而喻。
1.3. 设计目标
本设计的目的是设计一套完整的考试系统,实现考卷的自动生成、试卷管理、查看考生考试结果、学生考试、自动阅卷等功能,增加主观题中填空题和编程题的自动阅卷功能。实现考试的无纸化、标准化和学生成绩管理的网络化和自动化。
1.4. 小结
由上所知,网络考试系统是科学技术发展的必然要求,具有很大的社会需求。而现有的用于计算机学科的网络需考试系统不完善,缺少主观题自动阅卷功能,这些证明基于.NET的自动阅卷考试系统是正确的选择。
2. 基于.NET的自动阅卷考试系统概述
2.1. 用户需求简介
基于.NET的自动阅卷考试系统是一个面向计算机类学科的考试系统,它与其他其他考试系统的区别在于它增加了主观填空题、编成题的自动阅卷功能。它应用C#语言开发,以.NET为平台,采用B/S(浏览器/服务器) 模式, 用户分为两种:普通用户和管理员用户(admin)。学生属普通用户,教师属管理员用户。他们拥有的权限有所不同,学生只能进行考试和修改密码;教师可以根据自己所教授的课程新建科目、管理题库,还可以设置试卷、查看学生的考试结果。通过对页面的操作对数据库进行读写操作。
2.1.1. 功能需求
该系统要求实现题库管理、班级管理、学生答题、试卷组织、自动阅卷等功能,教师能够查看学生的考试成绩及答题情况,在试卷投入使用前能想进行测试、查看考卷的整体情况,学生能自行修改自己的密码。
2.1.2. 性能需求
学生在做完程序题后,需上传exe文件,然后连同试卷其它部分的答案一起提交,此过程必须在2分钟内完成。
安全性有所保障,学生密码由学生本人设置,以防他人冒用其帐号进行考试。
2.1.3. 可靠性和可用性需求
系统能正常运行,在100人以内同时登录时不发生错误,其所有功能在运行时不发生故障。
2.2. 工作过程
基于.NET的自动阅卷考试系统采用B/S(浏览器/服务器) 模式,客户无需安装客户端,只要有浏览器就可以使用。在登陆页面,如果已注册的用户,更具自己的帐号、密码就可以进去系统,根据用户权限进入不同的页面;如果是还未注册的用户则比需先按注册按钮进行注册后才可以进入系统。
一般用户(学生)登陆系统后,根据User.js跳转到一般用户主页面,其中具有修改密码、考试、退出三个功能,用户可以自行对其进行操作;管理员用户(教师)登陆系统后,根据Admin.js跳转到用户主页面,里面有科目管理、试卷管理、各种题目管理、答题测试、查看考试结果功能模块,教师根据需要进行操作。学生用户的考试功能模块只有在教师设置了考卷后才能进行,学生打完考卷后须自行提交,并上传程序题的代码和exe文件。系统将根据学生上传的考卷答题进行批阅,得出每一题的成绩和总成绩。
2.3. 系统特点
基于.NET的自动阅卷考试系统支持按权限对系统进行操作,即不同类型的用户拥有相异的权限:考试和管理。主要是在首页通过两种不同的方式进入相异的操作界面,其主要特点体现在以下两个个方面:①自主调用数据库;②自主管理数据库。自主调用数据库即允许用户能自由地从数据库中选题、生成试卷。自主管理数据库指一般用户具有添加、修改数据的权力,实现数据库的可扩充性和开放性。而admin 用户则另具有删除数据的权力如对题目的删除、试卷的删除、科目的删除等,从而达到了系统数据统一性和一致性的目的。
2.4. 小结
基于.NET的自动阅卷考试系统它采用B/S(浏览器/服务器) 模式,是面向计算机学科的考试系统。用户进入界面就可进行操作,内部与数据库相关的步骤对用户透明,他是一个简单的、易操作的、实用的系统。
3. 设计中要解决的问题
3.1. 用户权限
不同类型的用户拥有不同的权限,这要求在设计时考虑不同权限用户的操作页面。比如学生可以答题、查看某些信息,但是不具有删除等权限;教师、管理员在具有对题库、试卷等的增、删、改操作权限。
3.2. 考卷的设置
考卷的设置是考试系统的一个重要部分,它包括试卷的基本信息和题型设置。如何进行组卷及题型数目的控制成了试卷设置的一大难点。此外,对于设置那份考卷用于考试也是一个值得考虑的问题。
3.3. 自动阅卷的实现
自动阅卷十本系统的重中之重。客观题的自动阅卷比较容易实现,运用匹配的方法就可以完成。主观题中,对于填空题,则运用匹配的方式来进行判断正确与否;程序题则运用C#中反射的技术来实现。
3.4. 考试时间控制问题
时间控制是学生考试系统一个很重要的组成部分。一直以来的考试都有规定在一定的时间内完成,否则考试就失去了它本身的意义。所以,在设计系统时需好好考虑时间控制的问题。
4. 总体设计
4.1. 系统设计
4.1.1. 设计目标
设计一套完整的考试系统,实现考卷的自动生成、试卷管理、查看考生考试结果、学生考试、自动阅卷等功能,增加主观题中填空题和编程题的自动阅卷功能。
4.1.2. 开发环境
硬件环境:PC机
软件环境:Windows XP、Microsoft Visual Studio 2005、SQL Server 2000、IIS
4.1.3. 开发语言
开发语言使用Visual C#
4.1.4. 开发工具
Microsoft Visual Studio 2005、SQL Server 2000
4.1.5. 后台数据库
后台数据库使用SQL Server 2000 ,其可管理和处理大批量的考试数据,并具有较高的可靠性。
4.1.6. 运行环境
硬件环境:PC机
软件环境:Windows XP、www、Internet Explorer
4.2. 数据库需求设计
数据库是系统的重要组成部分,是系统的核心和基础。它把系统中大量的数据按一定的模型组织起来、提供存储、维护、检索数据的功能,使系统可以方便、及时、准确地从数据库中获取所需的信息。
SQL Server 2000是一个常用的数据库开发软件,SQL语言本身是一个综合的、功能极强同时又简捷易学的语言,用它开发的软件数据结构化、独立性高、共享性高、冗余度低、易扩充。在本设计中,应用了数据库中的基本表和视图,应用程序对这些基本表和视图进行操作。
4.2.1. 系统流程图
4.2.1.1. 0层图
4.2.1.2. 1层图
教师模块流程图:
学生答题模块流程图:
4.2.2. 系统E-R图
4.2.3. 数据库中的表
基本表是本身独立存在的表,在SQL中一个关系就对应一个基本表。一个或多个基本表对应一个存储文件。用户建立一个基本表后,可以对它进行增加、修改、查询、删除等操作。本设计中涉及到以下基本表,建立于数据库WebExam中。具体如下所示:
1、用户信息表(User)
列名 数据类型 长度 是否主键 允许空 说明 StudentID bigInt 8 是 不允许 学生编号 Name varchar 50 否 不允许 用户名 Passwd varchar 50 否 不允许 用户密码 Type varchar 50 否 不允许 用户类型 StudentName varchar 50 否 允许 学生 2、班级信息表(class)
列名 数据类型 长度 是否主键 允许空 说明 ClassID Int 4 是 不允许 班级编号 ClassName varchar 50 否 不允许 班级名称 StudentCount Int 4 否 允许 班级学生数 IsDeleted Bit 1 否 不允许 是否删除 3、科目信息表(CourseInfo)
列名 数据类型 长度 是否主键 允许空 说明 CourseID Int 4 是 不允许 科目编号 CourseName Nvarchar 50 否 不允许 科目名称 IsDeleted Bit 1 否 允许 是否删除 4、 试卷信息表(Paper)
列名 数据类型 长度 是否主键 允许空 说明 PaperID
上一篇:
基于net的物流管理系统设计--毕业论文
下一篇:
超市管理系统设计(论文正文)