在线考试系统的设计与实现

 

基于 java 的在线考试系统的设计与实现

互联网技术将我们的生活带领进信息化时代,改变了我们的学习和工作环境。例如

我们经常面对的考试也随着互联网技术的发展产生了改变,伴随着信息技术的发展,在

线无纸化的考试系统应运而生,不仅彻底改变了传统纸质考试的习惯和环境,更是提高

了考试效率,保证了考试效果,达到了考试目的。在线考试系统的应用范围十分广泛,

很多的企业设计与开发出的在线考试系统已经投入到市场进行使用,主要的客户包括了

学校、型企业、医疗机构、军队等,这些客户都需要进行考试对相关的人员进行量化考

核,在线考试系统不仅能够提供基本的考试功能,还能够分析相应的考试结果,能够及

时的了解相关的情况,达到考试的要求和考试目的。

传统纸质考试需要较多的人力资源和时间资源进行题目的设定,阅卷采用人工的方

式,难免会出现阅卷差错或者分数合算差错。也会浪费大量的时间,不能保证工作效率

和工作质量。对考试的总结能力较差,不能够全面具体的分析考试结果,教师也很难得

到基本的考试结果分析的数据信息。对考试时间以及考试纪律的要求不能达到统一,这

也会影响到考试的公平性。

针对传统的考试形式与现在的在线考试形式的优缺点的对比,本文详细介绍了基于

Java 技术的在线考试系统的设计与实现过程,严格按照软件工程所规范的软件系统设计

与开发流程进行系统的设计与开发工作,保证了软件系统的开发质量和开发时间要求,

达到软件系统的开发目的。其中软件系统的各个功能模块以及程序单元功能明确,实现

的过程简洁明了,功能满足用户的需求,也是未来开发相关软件系统的项目案例之一,

积累了更多的软件系统开发经验。

本文采取 Java 技术,使用相关配套的开发工具,后台数据库系统采用 SQL Server

数据库管理系统,设计与开发出满足客户需要的在线考试系统,达到用户的功能性需求

和非功能性需求,运行安全和稳定,提高了考试过程的工作效率。本文的主要研究内容

包括以下几个方面:

1.介绍在线考试系统的研究背景,研究现状以及研究意义;

2.对本文所描述的在线考试系统的系统分析,系统设计以及相关的开发技术进行简

I

 

单的介绍;

3.对本文所描述的在线考试系统进行具体的设计与实现,同时对系统的功能进行测

试,及时的发现问题并解决;

4.在整个在线考试系统的分析与设计开发过程中,不断的进行学习和总结,对软件

工程相关的知识深入了解和掌握。

关键词:

互联网技术,在线考试系统,J AVA,软件工程

II

Abstract

Abstract

The Design and Implementation of Enterprise Personnel Management

System Based on J AVA

Internet technology will lead our lives into the information age, changing the way we

 learn and work environment, for example, we are often faced with the development ofInternet technology test generation has changed, along with the development of informationtechnology, online paperless the examination system came into being, not only completelychanged the traditional paper-based exams habits and environment, but also improve theefficiency of the examination to ensure that the exam results, achieve the purpose of the exam.Applications online exam system is very widespread, many companies design and developonline examination system has been put into the market to use, the main customers includeschools, large enterprises, medical institutions, the military, etc., these customers need to testfor quantitative assessment of the relevant personnel, online examination system can not onlyprovide basic examination function, but also to analyze the corresponding exam results, theability to understand the relevant circumstances, to test requirements and test purposes. Traditional paper-based exam requires more manpower and resources to the subject ofthe set time, scoring artificial way, there will inevitably be worthwhile scoring mistake orerror scores will waste a lot of time, can not guarantee the efficiency and quality of work,poor ability to test summary, not a comprehensive analysis of the specific test results, teachersare difficult to get basic data analysis of exam results, exam time and exam requirements cannot achieve unity and discipline, which also affects the exam fairness.

 For comparison of the traditional forms of examination and present the pros and cons of online exam form, the paper details the design and implementation of Java technology-basedprocesses online examination system, in strict accordance with the norms of softwareengineering software system design and development of a systematic process Design anddevelopment work to ensure the development of quality software systems and developmenttime required to achieve the purpose of the development of software systems. Wherein eachof the functional modules of the software system and a program unit features a clear, conciseprocess of implementation, functionality to meet the needs of users, but also the futuredevelopment of Projects related software systems, has accumulated more experience insoftware systems development.

This article take Java technology, the use of related development tools, back-end

III

Abstract

database system using SQL Server database management system, design and development of

online examination system to meet customer needs and achieve the functional needs of users

and non-functional requirements, operational safety and stability improve the efficiency of the

examination process. The main contents of this paper include the following aspects:

1. Introduction Background online examination system, the research status and

significance;

2. The online examination system described herein system analysis, system design and

development of technologies related to the simple introduction;

3. Online examination system described herein specific design and implementation,

while the function of the system for testing and timely detection of problems and resolve;

4. In the analysis and design of the development process throughout the online

examination system, constantly learning and summarize the software engineering knowledge

related to in-depth understanding and knowledge.

Keywords:

Internet technology, online examination system, JAVA, software engineering

IV

 

 

 1   .......................................................... 1

1.1 研究背景 ...........................................................1

1.2 研究现状 ...........................................................2

1.3 研究内容及意义 .....................................................2

1.4 本文主要结构 .......................................................3

 2 系统分析和关键技术 .............................................. 5

2.1 可行性分析 .........................................................5

2.2 需求分析 ...........................................................6

2.3 系统关键技术要点 ...................................................7

2.3.1 B/S体系结构的简介..............................................7

2.3.2 SQL Server 数据库简介 ..........................................7

2.3.3 MVC设计模式....................................................8

2.4 本章小结 ...........................................................9

 3 在线考试系统的数据库以及系统设计................................ 10

3.1 数据库分析 ........................................................10

3.2 数据库设计 ........................................................10

3.2.1 管理员信息表 ..................................................14

3.2.2 考试试卷信息表 ................................................14

3.2.3 考试试题信息表 ................................................14

3.2.4 学生信息表 ....................................................15

3.2.5 学生试卷答案信息表 ............................................15

3.2.6 学生成绩信息表 ................................................16

3.3 系统设计 ..........................................................16

3.3.1 系统模块 ......................................................17

3.3.2 系统业务流程和分析 ............................................18

I

 

3.4 系统的安全管理 ....................................................20

3.5 本章小结 ..........................................................21

 4 在线考试系统的实现 ............................................. 22

4.1 系统实现阶段 ......................................................22

4.2 系统开发及运行环境 ................................................22

4.3 主要功能模块实现 ..................................................22

4.4 本章小结 ..........................................................27

 5 系统测试 ....................................................... 28

5.1 测试目的 ..........................................................28

5.2 测试方法 ..........................................................28

5.3 测试坏境 ..........................................................29

5.4 测试用例 ..........................................................29

5.5 本章小结 ..........................................................31

 6 总结与展望 ..................................................... 32

6.1 总结 ..............................................................32

6.2 展望 ..............................................................33

参考文献 ............................................................... 34

  ................................................................. 36

II

 1  

 1  

1.1 研究背景

随着计算机技术的不断发展,我们的日常生活和工作都与计算机技术的关系越来越

密切。计算机技术的发展改变了我们日常的生活和工作习惯,也改变了社会的发展速度,

使得我们的生活更加便利和高效。伴随着计算机技术发展起来的互联网技术将我们的生

活带领进信息化时代,改变了我们的学习和工作环境,例如我们经常面对的考试也随着

互联网技术的发展产生了改变,伴随着信息技术的发展,在线无纸化的考试系统应运而

生,不仅彻底改变了传统纸质考试的习惯和环境,更是提高了考试效率,保证了考试效

果,达到了考试目的[1]。传统的纸质考试具有很多局限性和不足,主要包括以下几点:

1.传统纸质考试需要较多的人力资源和时间资源进行题目的设定,同时题目的难易

程度和考核价值水平很难达到基本的要求;

2.传统纸质考试的阅卷采用人工的方式,人工阅卷难免会出现阅卷差错或者分数合

算差错,这也会对考试的效果造成影响;

3.传统纸质考试的人工阅卷模式也会浪费大量的人力资源和时间资源,不能保证工

作效率和工作质量;

4.传统纸质考试对考试的总结能力较差,不能够全面具体的分析考试结果,教师也

很难得到基本的考试结果分析的数据信息,而这些数据信息是提高教学质量和教学效果

的关键因素;

5.传统纸质考试对考试时间以及考试纪律的要求不能达到统一,这也会影响到考试

的公平性。

根据以上分析的传统纸质考试的不足之处,新型的结合计算机技术以及互联网技术

的在线考试系统应运而生,不仅通过一种新的技术解决了传统纸质考试的基本问题,还

提供了一种新的考试思路和考试理念,纠正了传统纸质考试的弊端,提供更加合理有效

的考试过程。

1

 1  

1.2 研究现状

在线考试系统的应用范围十分广泛,很多的企业设计与开发出的在线考试系统已经

投入到市场进行使用,主要的客户包括了学校、大型企业、医疗机构、军队等,这些客

户都需要进行考试对相关的人员进行量化考核,在线考试系统不仅能够提供基本的考试

功能,还能够分析相应的考试结果,能够及时的了解相关的情况,达到考试的要求和考

试目的[2]

在线考试系统已经在国际以及国内得到了实际的开发和应用,例如在欧美等发达国

家已经通过采用.NET 技术以及 JSP 技术设计开发的在线考试系统。这些在线考试系统

采用了基本的软件系统开发技术以及互联网开发技术,例如采用了 ASP.NET 技术等。

而后台数据库系统一般采用的是 Access 数据库管理系统或者 MySQL 数据库管理系统,

通过这些技术设计出的在线考试系统能够提供简洁明了的考试基本功能,同时能够按照

软件系统开发流程进行设计与开发,保证了软件系统的质量,并且开发的时间周期较短,

能够满足客户的基本需要,以较少的资金达到自身的功能设计目的[3]。如今大部分的在

线考试系统采用的技术虽然较多,但是基本的开发框架都采用的是 MVC 开发框架,采

取的开发模式是 B/S 开发模式,这样的设计时由于相关的技术已经非常成熟,相关的功

能已经较为完善,能够提供合理稳定的功能设计和工作效率,同时还能够根据客户的具

体需求进行不断的完善。

1.3 研究内容及意义

在线考试系统的应用范围十分广泛,这也使得越来越多研究人员和研究机构对此进

行研究和设计,在线考试系统已经不再是简单的一种进行考试和对考试内容进行批改的

软件系统,更多的研究机构或者学校已经将在线考试系统作为一种对学生的技能水平或

者员工的工作质量进行考核一种方法[4],在线考试系统具有很多的研究意义,主要包括

以下几个方面:

1.在线考试系统借助了计算机技术以及互联网技术,为考试出题以及批改提供了快

速有效的方法和途径,在短时间内就可以按照考试标准在考试题库中提供合理的考试试

题,并且能够根据考生的答题情况对客观题进行快速的评分,保证了批改质量和效率,

同时分数的统计也能够迅速执行,并且能够在系统中进行保存,随时提供查询,为考试

2

 1  

的分析提供基本的数据信息;

2.在线考试系统完全能够实现考试全过程的自动化,从考试题目的设计,考试时间

的制定,考试过程的监控,考试结果的批改,考试成绩的统计与分析等,这样不仅节省

了大量的人力资源,同时也节省了大量的物力资源;

3.在线考试系统还具有良好的可扩展性和通用性,在线考试系统的题库提供了扩展

功能,能够根据科目的类别以及题型的类型进行分类题库内容的添加以及修改操作,同

时在线考试系统通用性保证了考试系统能够提供多种学科以及多种考试类型的考试,同

时提供了大量考试数据信息的存储空间,保证考试结果以及考试信息的安全有效存储;

4.在线考试系统不仅能够提供专业的考试功能,还能够提供基本的练习和训练功能,

为考生的复习提供帮助,为考生分析自身的复习效果以及练习效果,可以针对特点的考

点和知识点进行专门的练习,使得练习操作更具有针对性,重点更加突出,效果更加明

显。

根据以上的分析,在线考试系统解决了传统纸质考试系统很多存在的问题和不足之

处,提供了合理有效的现代化考试的解决方案,并且更加环保,节省了大量的人力资源

和物力资源,值得进行不断的研究和推广。

本文的主要研究内容包括以下几个方面:

1.介绍在线考试系统的研究背景,研究现状以及研究意义;

2.对本文所描述的在线考试系统的系统分析,系统设计以及相关的开发技术进行简

单的介绍;

3.对本文所描述的在线考试系统进行具体的设计与实现,同时对系统的功能进行测

试,及时的发现问题并解决;

4.在整个在线考试系统的分析与设计开发过程中,不断的进行学习和总结,对软件

工程相关的知识深入了解和掌握。

1.4 本文主要结构

本文主要内容共分为六个章节进行介绍,以下对每个章节的主要内容进行简单的介

绍:

第一章为绪论,主要介绍了本文的研究背景,研究现状以及研究内容和意义;

第二章为系统分析和关键技术,主要介绍了在线考试系统的可行性分析和需求分

3

 1  

析,并且对开发所需的关键技术进行简单的介绍;

第三章为在线考试系统的数据库设计以及系统设计,介绍了数据库分析与设计的过

程以及系统功能模块的设计和主要业务流程的分析;

第四章为在线考试系统的设计实现,主要介绍了系统在实现过程中所需的开发环境

和开发技术,对主要功能模块的实现界面进行介绍;

第五章为在线考试系统系统测试,介绍了系统测试的方式,测试的过程,测试环境

以及测试用例;

第六章为总结与展望,总结在线考试系统的设计开发过程,对这一过程中出现的问

题以及未来需要解决的问题进行展望。

4

 2 系统分析和关键技术

 2 系统分析和关键技术

2.1 可行性分析

软件系统的可行性分析过程是系统分析的首要工作,软件系统的可行性分析不仅能

够保证软件系统的可行性,还能够将软件系统的开发风险降低到可以接受的范围,是软

件系统的开发保证[5]。针对不同的软件系统,可行性分析工作都有自身的特点,主要包

括了软件系统的操作可行性,软件系统的技术可行性,软件系统的功能可行性以及软件

系统的经济可行性等几个方面进行分析,以下分别从软件系统的操作可行性,软件系统

的功能可行性,软件系统的技术可行性以及软件系统的经济可行性这四个方面进行分

析:

软件系统的操作可行性:本文所描述的在线考试系统在操作界面和功能界面设计方

面简洁明了,同时为用户的使用提供了详细的说明,并且在功能界面上提供简洁的功能

介绍,人机交互设计较好,所以用户可以通过简单的学习和操作就能够对相应的功能进

行操作和使用,满足用户的操作可行性需要,因此在系统的操作方面是完全可行的;

软件系统的功能可行性:本文所描述的在线考试系统在设计与开发之前就对客户的

主要考试过程和考试业务进行充分的了解,对用户所需的功能进行详细的讨论和设计,

因此功能的设计与实现基本包括了在线考试系统的需要,也达到了客户的主观要求,在

功能的实现方面也是可行的[6]

软件系统的技术可行性:本文所描述的在线考试系统的开发过程采用的是当今成熟

有效的软件系统开发技术和手段,包括了 B/S 模式开发,SQL Server 数据库管理系统以

 Java 高级程序设计与开发语言等,这些技术方案已经有了很多成功的项目开发经验,

所以在软件系统的技术方面也是可行的;

软件系统的经济可行性:本文所描述的在线考试系统开发成本控制良好,后期的维

护和升级费用也在能够承受的范围之内,对客户的经济压力不大,同时智能化的软件系

统能够极大的提高办公或者考试的效率和质量,节省大量的人力资源和物力资源,因此

在软件系统的经济方面也是可行的。

5

 2 系统分析和关键技术

2.2 需求分析

软件系统的需求分析工作需要系统的设计与开发人员与系统的使用客户进行充分

的交流和沟通,针对软件系统的功能需求和非功能性需求进行确定,这样的目的能够确

定软件系统的开发目标和开发计划,为软件系统的后期设计和开发工作提供清晰的思

路,不仅能够更好的完成系统开发任务,也能够在开发效率上有所帮助[7]。需求分析工

作的重点在于沟通和交流,需要将系统设计与开发人员的技术能力和开发能力与客户的

实际需要进行联系,既要保证用户的需求尽量得到满足,也需要考虑到技术的实现能力,

需求分析工作一般从功能性需求和非功能性需求两个方面进行:

功能性需求主要针对的是软件系统的功能模块设计,功能需求需要根据用户的实际

操作需要进行设计,根据本文所描述的在线考试系统的实际调查,主要的功能性需求包

括了系统用户信息管理,系统题库管理,试卷管理以及考试管理等。其中这些功能的分

类是依照登录系统的用户类型进行的,所以需要根据登录系统的具体用户进行功能的划

分。主要分为系统管理员,学生以及教师三种类型的用户,其中系统管理人员能够使用

的功能有个人信息的管理,学生用户信息的管理以及教师用户信息的管理,学生用户主

要使用的功能有个人信息的管理,考试信息的查询,在线考试以及成绩查询,教师用户

主要使用的功能包括教师个人信息的管理,题目的管理类,试卷管理,考试管理,试卷

评阅以及学生成绩查询等。根据具体用户的实际需求,这些功能模块下的功能单元还可

以进行具体的设计与实现,以满足不同用户的具体要求,达到软件系统灵活性和可扩展

性的要求[8]。功能性需求是软件系统的基本需求,必须与客户达成一致才可以进行进步

的设计与开发工作。

非功能性需求主要针对的是软件系统除了系统功能方面还需要满足的设计和开发

目标,主要包括系统的可扩展性,系统的工作性能,系统的运行环境要求等,本文所描

述的在线考试系统在设计与开发过程中严格遵守面向对象的思想,提供了可扩展的接口

和服务,能够保证未来软件系统在功能以及数据信息方面的可扩展的需要,能够提供多

种类别的考试以及相同类别考试多种考试内容,提供考试题目数据信息的添加以及修改

的功能。同时本文所描述的在线考试系统的结构设计和业务接口设计方面保证了合理

性,在最大限度上保证了系统运行的稳定,同时从开发基础提供了高效的数据处理技术

以及功能操作模式,满足用户对系统工作性能的需要。本文所描述的在线考试系统采用

6

 2 系统分析和关键技术

的开发技术是主流的软件系统的开发技术,应用范围较广,对系统的运行环境要求也不

是非常严格,所以在系统的运行环境方面也能达到用户的需求。

2.3 系统关键技术要点

2.3.1 B/S体系结构的简介

B/S 结构就是我们通常所说的浏览器和服务器结构,这种结构是在互联网技术不断

的发展和普及后出现的,B/S 结构与 C/S 结构最大的不同之处就在于用户的操作界面的

实现不同,B/S 结构主要通过浏览器实现相关的业务操作,而主要的业务逻辑的操作和

实现是通过服务器结构进行,这样设计的优点在于用户只需要考虑相关的功能操作,并

不需要考虑功能的具体实现过程,简化了用户操作流程,同时也对客户的操作环境要求

不高,提高了系统的可维护性,减少了系统的开发成本[9]。服务器端主要负责系统的业

务逻辑处理,也不需要关心前端的界面实现过程,这样能够保证业务功能的完善和性能

的稳定,同时数据信息也保存在服务器端,这样能够在一定程度上保证数据信息的安全

和稳定。

B/S 模式能够提供更加安全的数据信息存储和管理,同时也能够保证数据的一致性

眼球,对数据信息的实时性处理也很完善,能够对当前的业务数据信息进行及时有效的

处理,系统的服务响应速度较快[10]B/S 模式对互联网的要求也比较广泛,只要能接入

互联网就能够对系统功能进行操作和管理,极大的提高了系统的办公效率,采用的后台

数据库也能够保证大量数据信息的存储和管理需要,由于 B/S 模式的这些特点和优势,

使得它已经成为当今软件设计与开发的首选结构。

2.3.2 SQL Server 数据库简介

SQL Server 数据库管理系统能够对 B/S 模式开发的软件系统提供数据服务,提供数

据信息的安全存储和有效管理,以下对 SQL Server 数据库管理系统的主要特点进行简单

的介绍:

1. SQL Server 数据库管理系统支持可扩展标记语言技术,即我们平常所说的 XML

技术,这样能够对后台数据信息的存储提供了可靠性和安全性,同时 SQL Server 数据库

管理系统的架构满足 Web 应用程序的开发,提供相关的服务,对大量的数据库信息的

7

 2 系统分析和关键技术

查询提供友好的操作体验[11]

2. SQL Server 数据库管理系统提供企业级的数据服务,提供满足企业数量级的数据

存储空间,能够保证大量数据信息的更新的完整性和同步性,用户对大量数据信息进行

处理时可以提供高效的处理方式,不仅能够满足用户处理数据量的要求,还能够满足数

据处理的效率要求[12]

3. SQL Server 数据库管理系统支持大型服务器对数据库索引以及视图的处理要求,

对内存的管理要求也不是非常高,适用性较强,满足了一般企业对后台数据库的可用性

和可扩展性的需求,同时 SQL Server 数据库管理系统满足一定的跨平台操作的可行性;

4. SQL Server 数据库管理系统安装过程简单,操作过程易于学习和掌握,同时对计

算机硬件要求不是特别苛刻,满足大部分企业软件系统的开发需要,在实际的开发过程

中提供很多简单有效的方法和服务,这在一定程度上提高了软件系统的开发速度,缩短

了开发时间,提高了开发效率。

2.3.3 MVC设计模式

MVC 设计模式指的是模型-视图-控制器设计模式,MVC 设计模式遵循软件工程领

域的面向对象设计规范,主要包括了模型层,视图层,控制器三个部分,以下对这三个

部分的主要内容进行简单介绍:

1.模型层,模型层的主要作用在于接收请求的数据信息,然后将处理后的结果进行

返回,这一过程也就是整个软件系统的业务逻辑模型,也是整个 MVC 模式中最为关键

的一个环节,处理的数据信息的过程对于其他层次来说是透明的,负责业务逻辑以及业

务规则的制定,模型对于数据信息的显示或者传递过程不加以关心,只关心自身的业务

逻辑以及业务规则是否合理有效[13]

2.视图层,视图层顾名思义就是用户操作系统的界面,也是用户与系统进行交互的

界面,视图展现在用户面前提供相关功能的操作界面,接收用户的操作和输入的数据信

息,然后将这些数据信息进行传递,在此视图层不会对数据信息进行任何逻辑的操作,

也不会修改数据信息的类型和内容,然后视图层接收处理完毕的数据信息,在相关的功

能界面中进行显示;

3.控制器,控制器的主要作用是将模型层与视图层连接起来,负责它们之间数据信

8

 2 系统分析和关键技术

息的传递,也就是视图层与模型层之间的中间层,控制钱也可以控制模型以及视图的选

择,达到用户请求的需要,将相关的数据信息和处理结果进行传递和相应,但是控制器

也不会对数据信息以及业务逻辑进行处理[14]

2.4 本章小结

本章主要介绍了本文所描述的在线考试系统的可行性分析,需求分析以及开发所需

的关键技术的要点等内容,保证了软件系统设计与开发的合理性。

9

 3 在线考试系统的数据库以及系统设计

 3 在线考试系统的数据库以及系统设计

3.1 数据库分析

在对软件系统的后台数据库进行设计与开发之前,需要根据软件系统数据信息的特

点以及数据库基本规范和原则进行分析工作[15]。数据库分析工作的主要内容是针对需要

设计与开发的软件系统特点,结合数据库管理系统的功能特点和优势,对相关的数据信

息进行合理的设计,保证数据信息存储的稳定以及处理过程的合理性,同时还需要考虑

到数据库的稳定性和安全性等要求。

在本文所描述的在线考试系统中,存储的数据信息的类型较多,所以针对数据信息

的特点进行数据表的设计,保证数据信息的类型满足数据库的开发需要,同时数据信息

的处理流程要满足整个软件系统的业务处理规范[16]。同时还需要针对用户的需要对数据

库的可扩展性进行设计,保证数据信息存储能够扩展,数据表以及数据表之间的关系逻

辑能够合理添加和修改,保证数据库未来的扩展,同时还需要预留足够的接口和服务满

足未来数据信息处理的需要[17]。数据库的设计与开发过程中要充分考虑数据库的安全和

稳定,数据信息的泄露或者破坏会对企业造成难以估计的影响,需要提供用户分级登录

和管理制度,提供数据信息的备份和还原的功能,保证数据信息的处理在一定的规范内

进行,在最大程度上保证数据信息的安全和稳定[18]。还需要考虑到数据库对大数据的处

理效率和质量,在数据库的结构设计中尽量保证合理性,满足数据库设计的范式要求,

这样能够明确数据库的设计目的和要求。在对数据库进行分析的过程中,要将达成一致

的内容以及要求以文档的形式进行存储,对出现的问题进行记录。

总之,数据库分析工作是数据库设计与开发工作的关键过程,需要软件系统的设计

与开发人员进行重视,并且对工作过程进行记录。

3.2 数据库设计

根据之前所做的软件系统可行性分析,软件系统需求分析以及数据库分析工作的内

容,结合数据库设计的基本规范和要求,对软件系统中数据库的主要数据表所对应的实

体关系模型进行设计,本文所描述的在线考试系统主要包括了试卷信息实体,试题信息

实体,学生信息实体,学生成绩信息实体,学生试卷答案信息实体以及系统管理员信息

10

 3 在线考试系统的数据库以及系统设计

实体,以下对这些系统主要的实体关系进行简单的介绍:

1.试卷信息实体关系模型存储着在线考试系统中与试卷相关的数据信息,这些数据

信息主要包括了试卷编号,试卷号,科目号,题目号以及考试时间等,考试试卷信息实

体属性图如图 3.1 所示:

考试试卷

ID

考试时间

试卷号

 题目号科目号

 3.1 试卷信息实体属性图

2.试题信息实体关系模型主要作用是存储在线考试系统中与考试试题相关的数据信

息,这些数据信息主要包括了试题 ID,科目号,试卷号,题目,题型,试题难度以及

实体答案等,试题信息实体属性图如图 3.2 所示:

试题

ID

答案

难度 科目号

题型 试卷号

题目

 3.2 试题信息实体属性图

3.学生信息实体关系模型的主要作用是保存在线考试系统中进行考试的学生的数据

11

 3 在线考试系统的数据库以及系统设计

信息,这些数据信息主要包括了学生 ID,登录密码,学生学号,学生姓名,学生性别,

学生年级以及学生班级等,学生信息实体属性图如图 3.3 所示:

学生

ID

班级

密码 年级

学号 性别 姓名

 3.3 学生信息实体属性图

4.学生成绩实体关系模型的主要作用是存储学生在在线考试系统中的考试成绩,与

考试成绩相关的数据信息包括了学生成绩 ID,学生 ID,科目号,试卷号,考试名称,

考试成绩以及补考成绩,学生成绩实体属性图如图 3.4 所示:

学生成绩

ID

补考成绩

学生ID

成绩

科目号 考试名称 试卷号

 3.4 学生成绩信息实体属性图

5.学生试卷答案实体关系模型主要存储的与在线考试系统中学生试卷答案相关的数

12

 3 在线考试系统的数据库以及系统设计

据信息,这些数据信息主要包括了学生试卷答案 ID,学生 ID,科目号,试卷号,题目

号以及答案,学生试卷答案实体属性图如图 3.5 所示:

学生试卷答案

ID

答案

学生ID

题目号

科目号 试卷号

 3.5 学生试卷答案信息实体属性图

6.系统管理员实体关系模型存储了在线考试系统中管理员相关的数据信息,这些数

据信息主要包括了系统管理员 ID,管理员登录密码,管理员姓名,管理员性别,管理

员所在部门以及管理员的管理权限等,系统管理员实体属性图如图 3.6 所示:

管理员

ID 权限

密码 部门

姓名 性别

 3.6 系统管理员信息实体属性图

以下对数据库系统中主要的数据表的内容进行介绍:

13

 3 在线考试系统的数据库以及系统设计

3.2.1 管理员信息表

系统管理员的相关数据信息都保存在管理员信息表中,主要包括五个数据字段,分

别是编号,密码,姓名,性别,部门以及管理权限,其中管理员编号是管理员信息表的

主键,管理员信息表的主要内容如表 3.1 所示:

 3.1 管理员信息表

字段名 数据类型 长度 主键否 描述

id int 4 yes 编号

password varchar 20 no 密码

name varchar 50 no 姓名

sex varchar 4 no 性别

department varchar 20 no 部门

privilege int 2 no 权限

3.2.2 考试试卷信息表

考试试卷信息表中保存的主要数据信息斗鱼在线考试系统中试卷相关,主要包含四

个字段,分别是试卷编号,试卷号,科目号,题目号以及考试时间长度,其中试卷编号

是考试试卷信息表的主键,考试试卷信息表的主要内容如表 3.2 所示:

 3.2 考试试卷信息表

字段名 数据类型 长度 主键否 描述

id int 4 yes 编号

paper_id int 20 no 试卷号

subject_id int 20 no 科目号

problem_id int 50 no 题目号

time varchar 20 no 考试时间长度

3.2.3 考试试题信息表

考试试题信息表的主要作用是保存与在线考试试卷相关的试题的数据信息,该表主

要包括了试题编号,科目号,试卷号,题目名称,题目类型,题目难度以及题目答案八

个字段,其中试题编号是考试试题信息表的主键,考试试题信息表的主要内容如表 3.3

所示:

14

 3 在线考试系统的数据库以及系统设计

 3.3 考试试题信息表

字段名 数据类型 长度 主键否 描述

id int 4 yes 编号

subject_id int 20 no 科目号

paper_id int 20 no 试卷号

problem varchar 400 no 题目

type int 4 no 题型

difficulty int 2 no 难度

answer varchar 400 no 答案

3.2.4 学生信息表

学生信息表的主要作用是保存在线考试系统中与学生相关的数据信息,学生信息表

主要包括了学生编号,登录密码,学号,姓名,性别,年级以及班级这八个字段,其中

学生编号是学生信息表的主键,学生信息表的主要内容如表 3.4 所示:

 3.4 学生信息表

字段名 数据类型 长度 主键否 描述

id int 4 yes 编号

password varchar 20 no 密码

number int 10 no 学号

name varchar 50 no 姓名

sex varchar 2 no 性别

grade int 4 no 年级

class int 4 no 班级

3.2.5 学生试卷答案信息表

学生试卷答案信息表主要保存了学生试卷档案编号,学生编号,科目号,试卷号,

题目号以及学生答案这六个字段的数据信息,其中学生试卷答案编号是学生试卷答案信

息表的主键,学生试卷答案信息表的主要内容如表 3.5 所示:

15

 3 在线考试系统的数据库以及系统设计

 3.5 学生试卷答案信息表

字段名 数据类型 长度 主键否 描述

id int 4 yes 试卷答案编号

student_id int 4 no 学生 id

subject_id int 20 no 科目号

paper_id int 20 no 试卷号

problem_id int 50 no 题目号

answer varchar 400 no 答案

3.2.6 学生成绩信息表

学生成绩信息表保存了七个字段,分别是学生成绩编号,学生编号,科目号,试卷

号,试卷名称,分数以及补考分数,其中学生成绩编号是学生成绩信息表的主键,学生

成绩信息表的主要内容如表 3.6 所示:

 3.6 学生成绩信息表

字段名 数据类型 长度 主键否 描述

id int 4 yes 成绩编号

student_id int 4 no 学生 id

subject_id int 20 no 科目号

paper_id int 20 no 试卷号

paper_name varchar 50 no 试卷名称

score int 3 no 分数

makeup_test int 3 no 补考分数

3.3 系统设计

系统设计工作是针对软件系统的功能性需求分析的结果,结合软件系统后台数据库

的设计要求,对系统主要的功能模块以及功能模块所包含的功能单元进行设计,明确功

能模块的组成以及结构关系,确定功能模块中所包含的功能单元的内容。同时还需要确

定各个功能模块和功能单元之间的关系,保证功能的合理和有效,提供系统主要功能的

业务流程,该业务流程需要满足客户的需要,是整个软件系统功能实现的核心内容[19]

软件系统的设计工作提供了设计与开发阶段的具体工作内容和工作目标,针对一些可能

出现的问题提供解决方案,保证软件系统的开发过程严格按照设计方案和开发时间进度

16

 3 在线考试系统的数据库以及系统设计

结点进行,确保了软件系统的开发效率和开发质量,是软件系统设计与开发工作不可或

缺的一个环节。

3.3.1 系统模块

软件系统的功能模块的设计需要严格按照软件系统的需求分析的结果和系统功能

架构进行工作,系统功能模块设计的合理性不仅能够保证软件系统功能的完善,同时也

能够提高软件系统的工作效率和工作质量。根据本文所描述的软件系统的需求分析的结

果以及后台数据库的设计结果,设计出本文所描述的在线考试系统的功能模块如下:

主要包括的功能模块根据用户类型分为三大类,分别是系统管理员,学生以及教师。

其中系统管理员主要包含的功能模块由个人信息管理功能模块,学生用户管理功能模块

以及教师用户管理功能模块。其中,学生用户管理功能模块还包括了学生用户注册功能

单元,学生用户删除功能单元,学生用户修改功能单元。学生主要包含的功能模块有学

生个人信息管理功能模块,考试信息查询功能模块,在线考试功能模块以及成绩查询功

能模块。教师主要包含的功能模块有教师个人信息管理功能模块,题目管理功能模块,

试卷管理功能模块,考试管理功能模块,试卷评阅功能模块以及学生成绩查询功能模块,

其中题目管理功能模块还包括了题目添加功能单元,题目删除功能单元,题目修改功能

单元,试卷管理功能模块包括了试卷添加功能单元,试卷修改功能单元以及试卷删除功

能单元,考试管理功能模块包括了考试添加功能单元,考试删除功能单元以及考试修改

功能单元。本文所描述的在线考试系统的主要功能模块架构如图 3.7 所示:

17

 3 在线考试系统的数据库以及系统设计

用户登录

管理员 学生 教师

 

   

 

 

 

 

 

 

线

        

 3.7 系统主要功能架构图

3.3.2 系统业务流程和分析

本文所描述的在线考试系统的主要业务流程是按照实际的客户需要和实际的考试

流程为根据进行设计的,首先需要用户登录系统,在用户登录系统后会根据用户的类型

分配相应的功能权限,如果登录的用户是系统管理员,则可以对系统的用户信息进行修

改和管理工作,如果登录系统的用户是教师,则提供考试系统题库管理以及试卷评阅等

功能,并且可以根据评卷结果录入成绩,同时如果登录系统的用户是学生,则可操作的

功能主要为考试功能,根据试题库选出的题目进行答卷操作,同时也可以对考试成绩进

行查询操作。由于本文所描述的在线考试系统的业务流程主要是用户的类型进行分类

的,所以需要将系统用户进行详细的划分,在系统登录过程中能够分清楚用户的类型,

这样才能够保证系统会根据用户分配合理的功能。本文所描述的在线考试系统的主要业

务流程如图 3.8 所示:

18

 3 在线考试系统的数据库以及系统设计

登录

管理员  用户信息

教师  考试

成绩查询

试卷评阅 成绩

题库制作 试题库

 3.8 系统主要业务流程图

其中在线考试系统最主要的功能就是学生进行相应科目的考试,本文所描述的在线考试

系统的在线考试功能的主要业务流程如图 3.9 所示:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

等天晴i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值