在线考试系统的设计与实现[含源码]

现在考试越来越精细,门类越来越多,对考试的要求越来越高。传统纸质试卷方法直截了当,但有很多弊端,浪费资源、人力成本增加、考试范围局限、有地域限制。为了减轻教师工作和提高效率,以及能更好发现学生学习的不足之处,针对学生考试这一环节,设计了一个网上考试系统,实现了学生考试、查成绩、后台管理题目、学生信息管理、试卷信息管理等功能。
系统VS2010开发,后台数据库服务用SQL Server 2008,web页面采用ASP.NET和三层架构技术,用ADO.NET技术进行数据库访问连接和操作。
系统界面友好、容错能力强、可改造性良好,以及能够方便的维护系统等性能。对校园考试的在线化提供了一些参考的价值。 F00008
关键词:在线考试系统  SQLServer  ASP.NET  三层架构  ADO.NET
Online Examination System
Abstract:Now the exam more sophisticated, more and more categories, the increasingly high demand for the exam is. Traditional paper-based methods straightforward papers, but there are many drawbacks, waste of resources, increasing labor costs, the examination scope limitations, there are geographical restrictions. In order to reduce teachers' work and improve efficiency, and better able to find the inadequacy of student learning, this part of the exam for the students to design an online examination system, student exams, check grades, backstage management topics, student information management , papers and other information management functions.
System VS2010 development, back-end database services with SQL Server 2008, web pages using ASP.NET and three-tier technology for database access with ADO.NET technology to connect and operate.
The system is user-friendly, fault-tolerant, can transform good, and can be easily maintained system performance. On the campus of the exam online provide some reference value.
Key Words: OnlineExaminationSystem; Three-Tierarchitecture; SQLServer; ASP.NET; ADO.NET
目   录
1. 绪论    1
1.1课题背景    1
1.2课题研究的目的和意义    1
1.3课题研究的现状分析    1
1.4系统要实现的目标    2
2.系统技术背景    4
2.1系统技术概述    4
2.1.1三层架构概述    4
2.1.2三层架构的好处    4
2.2ASP.NET概述    5
2.3ADO.NET技术在ASP.NET中的功能    6
2.3.1ADO.NET连接数据库    6
3.系统数据库分析与设计    7
3.1数据库设计规则和需求分析    7
3.1.1本系统的数据库设计规则    7
3.1.2数据库的需求分析    7
3.2数据库逻辑结构设计    7
3.2.1数据库表的设计    7
3.2.2数据库视图    11
3.2.3数据库关系图    12
4.系统概要设计    13
4.1系统结构设计    13
4.1.1系统功能划分    13
4.1.2各模块功能    13
5.系统详细设计    15
5.1配置数据库连接    15
5.2前台功能    15
5.2.1考生登录页面    15
5.2.2考生成功登录后进入考试页面    17
5.2.3学生考完后查看成绩功能    19
5.3后台功能    20
5.3.1管理员登录页面    20
5.3.2学生管理功能    21
5.3.3管理员信息    23
5.3.4专业管理    25
5.3.5科目管理    26
5.3.6试题管理    28
5.3.7成绩管理    33
6.论文工作总结及展望    36
6.1论文总结    36
6.2展望    36
参考文献    38
致谢    39
3.系统数据库分析与设计查看完整请+Q:351916072获取
3.1数据库需求分析和设计规则
3.1.1数据库需求分析
经过我自己的考试经历,以及查阅资料,本系统数据库的设计包含以下内容:
1)学生基本信息,包含数据项:学号、姓名、专业,导入时需要注意学生信息的格式。
2)考试相关信息,包含数据项:考试时长、考试题目的分值、以及考试结束后学生的成绩等。
3)试卷信息,包含数据项:试题编号、科目编号、试题类型、试题内容、答案a、答案b、答案c、答案d。
4)学生成绩表,学生考完后需要有一张表可以保存学生的成绩。那么这里就需要学号、试卷名、学生成绩等信息。
5)后台信息,后台系统包括学生信息表、管理员信息表、科目信息表等。
6)管理员信息表,包含数据:管理员编号、管理员姓名、管理员密码、管理员对试题的管理权限、管理员对学生信息的管理权限、管理员对系统管理的权限。
7)科目表,包含数据:科目编号、科目名称
8)专业信息表,包含数据:专业编号、专业名称
3.1.2数据库的设计规则
(1)数据库中实体就是一个个对象,表也是对象,表与表之间关系是一对一、一对多。
(2)数据库中实体有主键也有外键,主键是其他表的外键,外键是实体表的主键。
(3)数据库中基本表如学生信息表、管理员信息表、专业信息表、科目信息表是原子表,不能再分解了。它们能组成其他表的部分信息。
(4)题目表、试卷设置表、考试信息表中,存在题目、答案、试题id等重复,而主键外键在多表中出现,即便他的重复性高,这种情况也是不属于冗余。
(5)采用模糊查询算法,提高数据库运行速度。
3.2数据库逻辑结构设计
3.2.1数据库表的设计
根据系统功能设计的要求以及功能模块的划分,对于系统用户信息数据库,可以列出以下数据项和数据库:
1.名称:学生信息表
标识:exam_stu
学生信息表包括学号、学生姓名、专业、是否登录、是否提交、密码。其中stu_id是主键。学号是由专业代码、入学年份、班级、班级学号四部分组成。其中,学号中带字母“Y”的用阿拉伯数字1代替。
具体如表3-1:
表3-1 学生信息表(exam_stu )
名称    字段名称    类别    主键    非空
学号    stu_id    varchar(10)    Yes    Yes
学生姓名    stu_name    varchar(10)    No    Yes
专业    vocational    varchar(50)    No    Yes
是否登录    isLogin    bit    No    Yes
是否提交    isSubmit    bit    No    Yes
密码    Stu_pwd    varchar(20)    No    Yes
2.名称:学生专业表
标识:exam_stuClass
学生专业表包括专业编号、专业名称。其中class_id是主键。专业编号是学生信息表中学号的组成部分之一,也就是学号的前四位。
具体如表3-2:
表3-2 学生专业表(exam_stuClass)
名称    字段名称    类别    主键    非空
专业编号    class_id    int    Yes    Yes
专业名称    class_name    varchar(50)    No    Yes
3.名称:学生成绩表
标识:exam_stuScore
学生成绩表包括成绩编号、学号、试卷名称、考试日期、成绩、科目编号、成绩单名。其中score_id是主键,stu_id是外键,成绩表与学生信息表相关联,学生信息表的主键是学生信息表的外键。
具体如表3-3:
表3-3 学生成绩表(exam_stuScore)
名称    字段名称    类别    主键    非空
成绩编号    score_id    int    Yes    Yes
学号    stu_id    varchar(10)    No    No
试卷名称    paperdb_name    varchar(50)    No    No
考试日期    try_date    varchar(50)    No    Yes
成绩    stu_score    intr    No    No
科目编号    subject_id    int    No    No
成绩单名    score_name    nvarchar(50)    No    Yes
4.名称:管理员信息表
标识:exam_admin
管理员信息表包括管理员编号、管理员姓名、密码、管理问题权限、管理学生信息权限、管理系统权限。其中admin_id是主键。
具体如表3-4:
5.3.6试题管理
1.试题列表:
科目列表的页面设计和代码设计与它类似。这里的试题描述、详细、删除都是超链接。分别链接到ListAllQuestions、QuestionDetails、DeleteQuestion页面。不过,在这页面的后台,设计了一个判断该管理员有没有操作考试试题权限的判断,通过从Session中取出mgquestion的数据来判断。
实例截图如5-13:
5.3.7成绩管理
1.查看学生成绩
科目列表页面的页面设计和代码设计与它类似。页面用.NET技术放置了一个DataList控件来绑定已考学生的信息,从exam_score表中抽取学号、姓名、试卷名称、分数信息,并显示到网页上。绑定的技术用的是单向绑定Eval技术。设计了分页功能,每页显示5个。
实例截图如5-16:查看完整请+Q:351916072获取

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/rjgc/2074.html

好棒文