当前位置:文档之家› ASP的在线考试系统

ASP的在线考试系统

ASP的在线考试系统
ASP的在线考试系统

广西大学行健文理学院

毕业论文

题目:基于https://www.doczj.com/doc/f27952643.html,的在线考试系统

学部:

专业:

班级:

学号:

学生姓名:

指导教师:

二〇一五年六月

网上考试系统

摘要

本系统实现了网上考试的目的,以减轻教师的工作负担及提高工作效率,并能激发学生的学习兴趣。此网上考试系统采用三层结构的B/S模式开发。

本系统主要面向三类人员使用:普通学生、教师、管理员,他们拥有不同的权限。此网上考试系统主要有用户登录、新用户注册、用户管理、在线考试、管理员登录及相关信息管理等功能。本文主要介绍系统的总体设计以及着重研究了管理员对信息的管理、自动阅卷的实现,并在此基础上建立了后台数据库。信息管理方面主要包括角色管理、教师信息管理、考生信息管理、试题分类管理、题库管理和成绩管理。自动阅卷功能用来实现当考生答完试题提交后,对其进行打分并显示给考生。本系统能够节约考试成本,提高考试工作的效率,使用的过程是通过试题的制定与发布、试卷的生成、考试结果的公布与查询来实现无纸标准化考试,从而使考试可以方便地通过Internet和局域网进行。

系统采用https://www.doczj.com/doc/f27952643.html,技术,以C#为开发语言,并通过SQL Server2008和Visual Studio2010实现所需的功能。

关键词:网上考试,B/S模式,https://www.doczj.com/doc/f27952643.html,,自动阅卷,SQL Server2008

THE ONLINE EXAM SYSTEM

(BACKGROUND MANAGEMENT)

ABSTRACT

This system has realized the goal of online test .This system could reduce the burden on teachers and increase efficiency, and stimulate the students’ interest in learning. The online exam system mainly uses the B/S mode which is a three-tire structure.

This system primarily faces to three personnel usages: common student, teacher, administrator, and they own the different legal power.The functions of the system are user’s log in, the new user’s registration, user’s management, online examinations, a dministrators’ login and the management of interrelated information, and so on. This paper describes the design and focuses on the realization of administrator’s information management, correcting papers and the treatment of paper’s interruption, and based on this basis, builds a background database. Information management includes role management, teachers’information management, students’information management, test classify management, test question management, and result management. The function of examining test paper automatically is used to make the score and demonstrate to the examinee, after the examinee answers the test questions completely. When the computer is broken down and the examinee has to login again, the system has the function which can be used to complete the rest of the examination.

This system can economize the cost and increase the efficiency of the examination.The usage's process of standardize examine without papers is the establishment and the publication of test paper, creating test paper, announcing and searching the result, thus make examination can expediently be used by the

Internet and intranet.

The system adopts https://www.doczj.com/doc/f27952643.html, technology and C# programming language, by using the tools of SQL Server2008 and Visual Studio2010.

KEY WORDS:Online Examination,Browser/Server,https://www.doczj.com/doc/f27952643.html,,SQL Server2008

目录

前言 ............................................................................................. V II 第1章系统概述. (8)

1.1 系统提出的背景和意义 (8)

1.2 网上考试的工作原理 (8)

1.3 C#编程简介 (9)

1.4 https://www.doczj.com/doc/f27952643.html, 开发环境简介 (10)

1.5 SQL语言 (11)

1.6 小结 (11)

第2章需求分析 (12)

2.1 系统需求分析 (12)

2.2 系统的可行性分析 (13)

第3章数据库设计 (14)

3.1 概念结构设计 (14)

3.2 逻辑结构设计 (15)

3.3 存储过程的设计 (19)

第4章总体设计 (20)

4.1功能模块 (20)

4.2系统流程 (21)

第5章系统实现 (23)

5.1学生信息管理 (23)

5.1.1添加学生信息 (25)

5.1.2修改学生信息 (25)

5.1.3删除学生信息 (25)

5.2教师信息管理 (25)

5.3角色信息管理 (26)

5.4试题分类管理 (26)

5.5题库管理 (26)

5.5.1选择题管理 (27)

5.5.2阅读题管理 (29)

5.5.3完型填空题管理 (31)

5.6成绩管理 (31)

5.7自动阅卷 (31)

第6章软件测试 (32)

6.1测试环境 (32)

6.2测试计划 (32)

6.3测试记录 (33)

结论 (33)

参考文献 (34)

致谢 (35)

前言

随着计算机技术的发展和互联网时代的到来,人们已经进入了信息时代,即数字化时代,在数字化的网络环境下,学生希望得到个性化的满足,根据自己的情况进行学习,老师希望有效改进现有的考试模式,提高考试的效率,教育机构也希望给网上的学生提供更全面灵活的服务。此次设计的网上考试系统采用开放、动态的系统架构将传统的考试模式与先进的网络应用相结合,可以让学生随时随地进行相关的考试,其操作简单方便,界面简洁美观。

远程教育和网上考试如今已经成为网络研究与应用的热点之一,它可以解决当前知识更新周期急剧缩短、人才急需再培训、师资力量短缺等难题,有着广阔的研究与应用前景和巨大的社会经济效益,在国外一些发达国家已经得到了蓬勃的发展,并成为现代教育的有力补充。在国内,传统的考试方式已经不再适应远程教育的发展,网上考试尚处于试点阶段。现阶段国内的网上考试系统有驾照考试系统、计算机等级考试系统等,然而这些网上考试系统都是C/S模式,由于各种客户端环境的不同,升级、发布、使用都十分困难,而且需要考生到规定的场所进行考试,使用极其不方便。同时,这些系统中的考题基本上都是固定不变的,很容易使考题外泄而无法公平地衡量考生的真正水平。因此网上考试系统除了能够实现自动生成考试套题、自动提交考生的试卷、自动阅卷等功能之外,必须要保证其试题的不断更新,也就是说,教师要将自己设计好的试题根据不同的类型输入系统,并对原有的试题进行修改和维护,经过不断的完善后,网上考试系统将会越来越适应社会发展的需要。

第1章系统概述

1.1 系统提出的背景和意义

现阶段,学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出卷、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,因此传统的考试方式已经不能适应现代考试的需要。多年来,伴随着社会的发展,各个学校无论是从硬件上还是从软件上都拥有了一定的基础条件,大学教育中网上考试系统的建设势在必行。我们所设计的“网上考试系统”主要是为广大考生及其教师提供一个方便的场所,让大家可以通过互联网进行在线考试,相信它会给广大考生提供方便快捷的学习途径。

本系统将提供一个针对大学生的英语在线考试的网站,学生可以通过校园网或互联网访问该网站,可以按照教师的建议或各自的计划对所学知识进行测验;教师可以通过网站提供的环境对学生的学习情况进行动态管理,并依据网站记录的考试成绩给出对每一位学生客观的综合评价。网上考试系统减轻了教师的工作负担并提高了工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。

此次开发的网上考试系统,旨在探索一种以互联网为基础的考试模式。通过这种新的模式,为大学中英语的考试创造一种新的考试环境,提高考试工作效率和标准化水平,使学校管理者、教师和学生可以在任何时候、任何地点通过网络进行考试。基于这些优点,我开始着手开发“网上考试系统”。

1.2 网上考试的工作原理

网上考试系统为考生提供的功能有:登录、注册、在线考试、查看自己的成绩等;为教师提供的功能有:登录、对自己负责的试题类型的题库进行管理、查看选择此考试类型的考生的成绩等;管理员拥有最高的权限,能够管理所有的信息。此网上考试系统中题库里的题目一经发布,则可在考生进

行考试时动态生成一套试卷,即实现随机出题的功能。试卷的提交和成绩的批阅均由网络自动完成,并将答题情况透明地显示给考生。

此系统使用起来极为方便,操作也很简单,实现了考试信息管理以及考试流程的系统化、规范化和自动化,能够在英语考试中发挥高效、便捷的作用。

1.3 C#编程简介

C#是微软公司在2000年6月发布的一种新的编程语言,并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究院Anders Hejlsberg

的最新成果。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、界面、与Java几乎同样的语法,和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角。

C# 是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于MICROSOFT .NET平台的应用程序,MICROSOFT .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。

正是由于C#面积对象的卓越设计,使它成为构建各类组件的理想之选——无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过INTERNET进行调用。

最重要的是,C#使得C++程序员可以高效的开发程序,而绝不损失C/C++原有的强大的功能。因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。

C#是微软公司在2000年7月发布的一种全新且简单、安全、面向对象的程序设计语言,是专门为.NET的应用而开发的语言。它吸收了C++、Visual Basic、Delphi、Java等语言的优点,体现了当今最新的程序设计技术的功

能和精华。C#继承了C语言的语法风格,同时又继承了C++的面向对象特性。不同的是,C#的对象模型已经面向Internet进行了重新设计,使用的是.NET 框架的类库;C#不再提供对指针类型的支持,使得程序不能随便访问内存地址空间,从而更加健壮;C#不再支持多重继承,避免了以往类层次结构中由于多重继承带来的可怕后果。.NET框架为C#提供了一个强大的、易用的、逻辑结构一致的程序设计环境。同时,公共语言运行时(Common Language Runtime)为C#程序语言提供了一个托管的运行时环境,使程序比以往更加稳定、安全。

1.4 https://www.doczj.com/doc/f27952643.html, 开发环境简介

https://www.doczj.com/doc/f27952643.html,是目前最为流行的开放式的Web服务器应用程序开发技术,使用它可以将HTML语言、脚本语言和ActiveX控件组合在一起,编写出动态、交互且高效率的基于Web的应用程序。

https://www.doczj.com/doc/f27952643.html,是统一的Web开发平台,是一个已编译的、基于.NET环境,可以用任何与.NET兼容的语言(包括C#.NET、Visual https://www.doczj.com/doc/f27952643.html,和https://www.doczj.com/doc/f27952643.html,)创作应用程序。由于https://www.doczj.com/doc/f27952643.html,基于公共语言运行库,因此Web 应用程序开发人员可以利用整个平台的威力和灵活性。

https://www.doczj.com/doc/f27952643.html,具有以下优点:

灵活性:https://www.doczj.com/doc/f27952643.html,使用的是.NET框架提供的“通用语言运行时”,它负责管理代码的执行,并允许以不同语言创建的对象互相进行交互行为,从而排除了语言的障碍,使得Web应用程序的开发效率更高。

简易性:在集成的.NET框架中,https://www.doczj.com/doc/f27952643.html,可以非常方便地开发Web应用程序和XML Web服务,同时站点的配置和发布也非常方便。

可管理性:https://www.doczj.com/doc/f27952643.html,中取消了组件注册以及DLL锁定,全面使用了XML 配置文件,只需要执行复制文件的工作就能配置一个Web应用程序。

安全性:随着Web应用程序的日益强大和完善,安全性也变得越来越重要。开发人员不仅需要保护应用程序和站点免受攻击,而且还必须设法确保数据的安全性和完整性。https://www.doczj.com/doc/f27952643.html,提供了很多高级安全功能,包括实现身份验证和授权解决方案的机制、对角色和身份标识的支持,可以实现自定义身份验证和授权的架构,确保代码访问安全。https://www.doczj.com/doc/f27952643.html,和IIS一起为用户提供

验证服务,此外,https://www.doczj.com/doc/f27952643.html,还提供了Cookies,帮助建立一种基于用户Form 的验证方式,通过Cookies用户的应用程序可以用自己的代码和逻辑实现用户定义的可信性验证。

https://www.doczj.com/doc/f27952643.html,包含数据访问工具,利用这些工具,我们可以方便地设计站点,允许用户通过Web页与数据库进行交互。在此网上考试系统中使用的是SQL Server .NET Framework 数据提供程序来访问SQL Server2008数据库。

1.5 SQL语言

SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。

SQL 面向数据库执行查询;SQL 可从数据库取回数据;SQL 可在数据库中插入新的记录;SQL 可更新数据库中的数据;SQL 可从数据库删除记录;SQL 可创建新数据库;SQL 可在数据库中创建新表;SQL 可在数据库中创建存储过程;SQL 可在数据库中创建视图;SQL 可以设置表、存储过程和视图的权限。

SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。SQL 可与数据库程序协同工作,比如MS Access、Oracle、DB2、MS SQL Server、Sybase 、Informix以及其他数据库系统。SQL语句结构不幸地是,存在着很多不同版本的 SQL 语言,但是为了与 ANSI 标准相兼容,它们必须以相似的方式共同地来支持一些主要的关键词(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等)。

1.6 小结

本章介绍了该系统完成过程中所用到的语言、平台和技术。https://www.doczj.com/doc/f27952643.html,是基

于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上(笔者到现在为止只知道它只能用在Windows 2000 Server上)。C#是一种简单、现代、面向对象和类型安全的编程语言,由C和C++发展而来。Visual Studio2008是微软开发的visual studio系列开发工具的最新版本,微软公司在2008年12月初发布新一代企业级应用开发平台.NET Framework 2.0和开发工具Visual Studio 2008。SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。

第2章需求分析

2.1 系统需求分析

对现行考试业务进行详细调查是了解系统需求和进行系统分析和设计的重要基础工作,因此要对关于英语考试工作进行全面、细致而充分的调查研究。系统调研采取的主要方法是到一些网上考试的现场去,通过座谈、询问、观察甚至直接参与考试活动,自上而下、逐步细化的进行了解。

通过调查得知,原有的人工操作在考试活动中占绝大部分,具体的考试经过是:教务处下发或转发考试通知,联系有关的老师出卷,安排、检查考场及所需设备,组织监考人员培训和做好考前宣传、公布考场地点及考试时间、发放准考证等前期准备工作,然后是印刷试卷、考试、阅卷、填分、公布学生成绩、总结、备案、打印通知书等。在考试的部分环节已用到了计算机,如打印试卷、打印有关材料、学生成绩处理与公布等。为适应当前网络技术新形势的发展,把考试与网络技术和数据库技术结合起来,实现自动生成试卷,自动阅卷及成绩的查询等功能,保证考试的正规性及标准化,所以要求建立一个基于网络的无纸化考试系统。

2.2 系统的可行性分析

可行性分析是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、操作的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。

从经济上来讲,主要是对项目的经济效益进行评价,本系统开发所需的硬件和软件设施目前大多数的PC机系统都能够承担,并且开发费用不高。该软件系统的安装、部署、运行和维护都相当的方便且价格低廉,因此本系统在经济上是可行的。

技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。从技术上来讲,本系统使用https://www.doczj.com/doc/f27952643.html,和SQL Server 技术开发,并使用C#编程语言,所有的界面均采用目前较为流行的B/S模式构建,同时,通过在SQL Server中建立存储过程来实现系统中数据的相关处理。微软公司的SQL Server数据库能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。

从管理和操作上来讲,此系统的管理制度和方法科学,规章制度齐全,原始数据正确,为系统的建设提供了制度保障。同时,此系统操作起来极为

简单,大多数的PC机和局域网都能够使用此系统,其安装、调试和运行不会对原有的计算机的系统和网络产生任何影响。

从社会需要方面上来讲,目前的大学校园网络覆盖了教学区和学生区的主要建筑物及部分家属宿舍,从而满足校内各学院、各智能部门、各直属单位上网需求。学校良好的网络设施为开发使用网上考试系统提供了坚实的基础。

第3章数据库设计

数据库设计是对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求。数据库是整个系统的核心和基础,把系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使系统可以方便、及时、准确地从数据库中获得所需的信息。

系统数据库平台的选择需要从数据容量、数据库管理功能、安全性等方面综合考虑。SQL Server数据库管理系统一方面能完全满足数据存储量和功能的需要,用户可以使用Web浏览器查询存储在SQL Server2008数据库中的数据,符合系统远程访问数据库的要求,每个数据库可以创建大量的数据表,数据表中记录的行数只受服务器硬盘空间的限制,符合系统的考题数目较多的要求。另一方面有较完备的数据库安全机制,所以本系统采用微软公司的SQL Server2008作为服务器数据库平台。

3.1 概念结构设计

数据库主要用来更方便地管理系统中存在的所有数据,对于一个网上考试系统而言,需要大量的考试题目作为系统的资源,这就要求系统一定要有一个大型的数据库来管理这些数据。在此网上考试系统中,数据库用来存储用户信息、角色信息、试题分类的信息、题库中包含的选择题、完型填空题和阅读题的信息、学生的成绩以及当学生答题过程中出现断线时对当前试题状态的信息的保存。

系统E-R图为:

图3-1网上考试系统E-R图

3.2 逻辑结构设计

逻辑结构设计即将E-R图转变为关系模型,要解决的问题就是如何将实体和实体之间的联系转换为关系模式。考虑到整个系统的需要,我们一共设计了以下几个数据库表:角色表、试题分类表、用户表、选择题表、完型填空题干表、完型填空题目表、阅读题干表、阅读题目表、成绩表、试卷暂存表。

用户表主要用来存放管理员、教师和学生的详细信息,由于系统中需要对数据进行提取和传值,因此建立一个总体的用户信息表。

表3-1用户信息表

选择题表主要用来存放此题型的各题的信息,为了防止相同的题目存在,将其编号设定为唯一标识号。使分类编号作为外键,用来区分此题目属于哪类试题。

表3-2选择题信息表

完型填空题的存放比选择题较为复杂,每道题包括一个题干和若干个小题,每个小题有四个选项,因此需要建立两个表分别来存放题干和所有的小题。阅读题和完型填空题类似。

表3-3完型填空题干信息表

表3-4完型填空题目信息表

本系统将成绩分为三部分,即选择题成绩、完型填空题成绩和阅读题成绩,因此在建立成绩表时,要分为不同的字段进行记录。

表3-5成绩信息表

暂存表的作用主要是:当学生在考试过程中电脑出现问题被迫中断考试,学生抽到的此套考试试题和已经做过的试题的答案将被保存在暂存表中,当学生再次进入系统时,系统会将此套试题和学生的答案显示出来,学生可以继续答题。

表3-6暂存试题信息表

3.3 存储过程的设计

存储过程(Stored Procedure)是一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。在SQL Server 的系列版本中存储过程分为两类:系统提供的存储过程和用户自定义存储过程。在系统的设计过程中,采用的均为用户自定义的存储过程,通过它们来实现对数据的查询、添加、修改、删除等处理。

在系统中之所以采用存储过程是因为存储过程在被创建以后可以在程序中被多次调用,而不必重新编写该存储过程的SQL 语句。而且数据库专业人员可随时对存储过程进行修改,但对应用程序源代码毫无影响(因为应用程序源代码只包含存储过程的调用语句),从而极大地提高了程序的可移植性。

在SQL Server2008中建立相关的存储过程,自己定义存储过程的名字,根据哪些字段从那个表中查询数据,然后进行分析和执行,若无提示错误则存储过程被成功建立。

在本系统中,用C#调用存储过程时,要先在系统中建立一个类,在类中可以定义多个方法,在每个方法中可以调用存储过程。在调用时,先建立一个新的数据库连接并将其打开,即SqlConnection myConnection = new SqlConnection(SQLHelper.DBCONNECTIONSTRING);然后生成一个SqlCommand对象对数据库执行一个存储过程,向命令对象填充参数后执行存储过程,执行完毕后关闭连接。

第4章总体设计

4.1功能模块

系统的总体设计的主要任务是将整个系统合理地划分成各个功能模块,正确处理模块之间与模块内部的联系以及它们之间的调用关系和数据关系,定义各模块的内部结构等。通过对系统的进行需求分析后,可以基本上总结出系统所需的所有功能,针对这些功能对系统做出总体的设计。

系统应该具备的基本功能

1.用户注册和登录:用户可以进行注册,然后登录。

2.用户信息的修改:用户可以根据需要修改密码。

3.管理员对信息的管理:角色管理、学生信息管理、教师信息管理、试题分类管理、题库管理、成绩管理。

4.教师对信息的管理:试题有多种分类(大学英语、四级、六级),因此不同的教师对应不同的分类,教师只能管理其对应的考试类型的相关信息,即题库管理和成绩管理。

5.试卷的生成:从题库中随机抽取试题生成一份原始试卷。

6.在线考试:系统严格控制整个考试过程,采用倒计时的方法进行时间的控制,学生必须在限定的时间内交卷,否则系统会在考试结束时强制自动交卷。

7.自动阅卷:本系统将题型分为选择题、完型填空题和阅读题,考生交卷后,系统将自动阅卷,将每个题型的分数和总分数显示出来。

8.试卷断线处理:当考生在答题的过程中电脑出现故障时而被迫重新登录时,可以继续完成剩余的试题而无需重新答题。

系统的功能结构图如图4-1所示:

相关主题
文本预览
相关文档 最新文档