公务员期刊网 论文中心 正文

题库管理系统设计实现

题库管理系统设计实现

摘要:本文针对网络教育快速发展的现状,完成了基于web的C语言题库管理系统。本系统主要包含了用户管理模块、题库管理模块、组卷模块以及试卷分析四大模块。系统用户主要分为学生、教师和管理员。系统采用了Springboot+Mybatis框架技术,以java为编程语言进行开发,数据库选择使用MySql关系型数据库,建立了12张数据表,实现了一个操作简单快捷、界面简洁、可根据题目难易程度进行组卷的C语言试题库管理系统。

关键词:题库;管理;关系型数据库;组卷

1引言

随着计算机技术、网络技术的快速发展,人们的学习和工作也发生了很大变化。许多教育机构和部门都开设了网上教学、远程教学,学生也越来越容易从网络上获取知识。在这样的背景下,网络考试开始在各大高校使用。目前的试题库系统在通用性、易用性、高效性等诸多方面还存在着严重的不足,不能有效提高办公效率,减轻教师组卷压力的效果不理想[1]。

2系统的总体设计

2.1系统的整体功能

本系统设计为用户管理模块、题库管理模块、组卷模块以及试卷分析四大模块。系统可以实现题库资源的类别管理、试题录入、试题组卷、试卷统计等管理功能。题库管理模块遵循使用方便、可回顾、准确性和可维护性的设计原则[2]。系统的整体功能结构如图1所示。

2.2系统的其它功能

(1)登录功能登录功能是众多系统都拥有的基本功能,在用户想要进入系统之前需要先进入登录页面进行身份验证,当验证通过方可被允许进入系统。(2)管理员和学生功能除了教师用户外,系统还存在管理员和学生这两个主要用户角色。管理员主要完成对系统用户的维护,并能够完成对科目的管理。在系统使用前管理员首先为系统设立几个科目,以便教师和学生用户的使用。为防止用户管理混乱,本系统只设置了一个管理员。学生拥有查看未考试试卷、在线考试以及查看自己试卷得分的权限[3-4]。(3)辅助功能修改个人信息:所有用户在创建时只有一些基本信息。在用户登录系统后,用户可以在修改个人信息页面对自己的个人信息进行修改。修改密码:为了方便用户登录,教师和学生用户在被创建时都会给予一个初始密码,进入系统后用户可根据需要修改个人密码等信息的功能,以保证个人密码等信息的安全性。(4)退出登录:与登录功能相对应,系统还具有退出系统的功能。当用户点击退出按钮,系统将清除与该用户相关的登录信息并返回登录页面。

3系统的设计与实现

系统的详细设计主要包括:系统框架设计、登录界面设计、用户管理设计、题库管理设计、组卷功能设计、试卷分析设计、数据库详细设计等模块。

3.1系统框架设计

本系统主要采用SpringBoot+mybatis框架[5-8],系统整体框架设计如图2所示。其中,config包用于存放一些配置类,controller包用于存放控制跳转的controller类,entity包用于存放实体类,mapper用于存放对数据库操作的接口,service用于存放服务层的接口,service包下的impl包用于存放具体的服务层接口的实现类,util包则用于存放系统会用到的一些工具类。Resources主要用于存放一些资源文件,如mybatis包用于存放对数据库操作的mybatis配置文件,static包用于存放一些静态资源,如前端的css、js文件,最后的templates包则用于存放前端html页面。

3.2登录界面设计

登录设计主要实现用户身份的验证,验证成功则允许用户进入系统,验证失败则返回登录页面。系统会根据用户登录时的身份提供相应的功能。

3.3用户管理设计

该模块主要设计有实体类Student类和Teacher类、控制层的UserController类、服务层的UserService接口及其实现类UserServiceImpl、数据库操作层的UserMapper接口以及配置文件UserMapper.xml。用户管理功能主要分为学生管理和教师管理。管理员在进入系统后,可选择教师用户管理或学生用户管理进行系统维护,也可以查看所有用户,维护修改用户的基本信息,如学生的学号、所属专业以及班级。此外管理员也可以选择、添加、删除、查询和更改用户。

3.4题库管理设计

该模块主要设计有实体类QuestionType类和Question类,控制层的QuestionsController类,服务层的QuestionService接口及其实现类QuestionServiceImpl,数据库操作层的QuestionTypeMapper接口和QuestionsMapper接口以及配置文件QuestionTypeMapper.xml和QuestionsMapper.xml。题库管理主要包含两个部分,题目类型的管理和试题的管理。教师在进入系统选择题库管理功能后,教师可先选择对题型进行管理,包括对题型进行增加、删除、修改、查询等操作,在保证题型信息正确后,再选择试题管理,对具体某一种试题类型的题目进行增加、删除、修改、查询等操作。

3.5组卷功能设计

该模块主要设计有实体类PaperInfo类、PaperQuestions类和PaperStudents类,控制层的PaperController类,服务层的PaperService接口及其实现类PaperServiceImpl,数据库操作层的PaperMapper接口、PaperQuestionsMapper接口和PaperStudentsMapper接口以及配置文件PaperMapper.xml、PaperQuestionsMapper.xml和PaperStudentsMapper.xml。教师在进入系统并选择试卷管理功能后,可以进行查询试卷、添加试卷、删除试卷或修改试卷等操作。若是选择添加试卷,教师需要先填写试卷基本信息,然后选择试题。选择试题时教师可以选择手动添加或随机抽取试题。试题选择完毕后还需选择使用试卷的考生或班级,随后即可完成试卷的添加,最后再已经编辑好的试卷。若是修改试卷,教师只需选择需要修改的地方进行修改即可。

3.6试卷分析设计

试卷分析主要是在学生提交试卷后,进行的相关学生答卷的分析。该模块主要设计有实体类MyTestAnswers类,控制层的MyTestController类,服务层的MyTestService接口及其实现类MyTestServiceImpl,数据库操作层的MyTestAnswersMapper接口以及配置文件MyTestAnswersMapper.xml。当学生提交答卷后,系统后台将答卷分为两部分进行操作,即主观题和客观题。对于客观题,系统将抽取试题库中对应试题的标准答案与学生答案进行比对,若正确则将学生该题得分设为该题分值,若错误则设为0分,最后将学生客观题得分以及答案录入数据库中。对于主观题,系统将不自动为学生该题设置分值,只是记录学生答案,然后交由教师批阅,教师在查看学生答卷时可对未批阅的主观题进行批阅,根据标准答案和学生答案,给予合适分值。在教师提交批阅后,系统将更新学生主观题得分,并为学生得分加上主观题得分,同时将学生答卷状态置为已批阅。

3.7数据库详细设计

数据库是系统实现的基础,可帮助存储数据信息。本系统所有的用户信息、试题、试卷及答卷信息都需存储在数据库中,以便永久保存相关数据。本系统数据库采用MySql,主要设计了12张表,主要包括学生信息表、教师信息表、用于记录专业相关的信息表、用于记录课程的信息表、用于记录试题类型的信息表、用于记录具体试题的信息表、试卷信息表、答卷信息表等。表1和表2分别为学生信息表和教师信息表,分别用于记录学生用户和教师用户的相关信息。

4结束语

本文较详细地介绍了一个基于Web的C语言题库管理信息系统[9-10]。该系统整体框架以Springboot为主,使用Mybatis框架来完成对MySql数据库的操作,前端采用bootstrap来完成页面的展现。系统功能主要包含用户管理、题库管理、组卷、试卷分析等。系统各个模块的功能经使用黑盒测试方法进行测试,确保程序的正确运行。

参考文献

[1]孙克雷,王子岚,虞佳明,周华平.计算机专业试题库建设的研究与实践.教育信息技术,2019,6(48):122-124

[2]陈瑜.考试系统架构设计.科技传播,2019,9(下):114-115

[3]铁治欣,林永兴,冉宇瑶.基于B/S架构的C语言在线考试系统设计与实现.软件导刊,2019,18(10):103-106,110

[4]崔兰超.B/S结构下的网络考试系统的实现与应用.电脑编程技巧与维护,2019(07):35-36,52

[5]李孟津,杨丹.基于SpringBoot的在线招聘网站的设计与实现.科学技术创新,2020(26):98-99

[6]陈海郎.基于SSM框架的试题库与考试系统设计与实现.电子技术与软件工程,2019(16):50-51

[7]薛云兰,郑海峰,黄嘉浩.基于SpringBoot框架的网络教学管理系统.软件导刊,2020,19(9):146-151

[8]孔瑞平,潘瑞民.基于SpringBoot的研究生入学考试题管理系统设计.电脑编程与技巧,2020(01):112-114

[9]张宗杰.C语言程序设计教程.北京:电子工业出版社,2013

[10]赵美虹,周蓓蓓,吴勇.程序设计语言的教与学.福建电脑,2015,31(12):68-69

作者:任建平 赵春辉 赵美虹 周蓓蓓 单位:苏州科技大学电子与信息工程学院

精选范文推荐