




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第第页第1章绪论互联网的出现给很多的行业带来了翻天覆地的变化,线上购物的模式出现,人们可以足不出户就买到喜欢的商品,同样的,将刷题系统与互联网结合起来可以使得印刷卷纸的资源得到节约,一道题目可以被多个试卷使用,学生刷题的错题可以自动保存记录等等,所以开发一套线上刷题系统很有意义。1.1课题背景随着时代的快速发展,互联网已经普及到我们生活的方方面面,对于学生来说,互联网也带给学生崭新的刷题方式REF_Ref135907585\r\h[1]。网络使学生刷题变得灵活而有趣,学生们不只可以通过传统课堂刷题提高掌握知识的程度,还可以网上刷题,并且网上刷题跟传统课堂刷题相比有很多的优势。从两年前疫情爆发到现在,全国很多省份的很多城市都先后受到疫情的影响而无法正常开学,这也使学校被迫改为网上授课,可见网络课程的发展前景之好,需求之大,甚至可以说线上学习已经成为学生学习的刚需。网络教学不同于以往的传统学习方式,传统教学有时间、地域、内容等多方面的限制,这些限制网络教学都没有。每个人都是独一无二的,每个学生都有自己的特点,所以线下模式很难做到根据不同的学生制定不同的学习方式。而在网上而不同,网上的教学方式多种多样,每个学生都选择自己喜欢的方式学习,这样对学生来说学习方式是最适合自己的,选择自己状态最好的时间段学习,这样学生的学习效率也是最高的,成绩自然也会好。这样学生们就会体验到学习中的快乐,从而爱上学习。并且网络课程的涵盖面更广,学生的收获就会更丰富。社会的发展离不开创新,网上学习是学习教育的一大创新,为社会发展提供了新方向REF_Ref135907704\r\h[2]。从2019年12月到现在,因为疫情影响很多课程布置作业成为一个难点,布置的作业了教师看不到真实的完成情况,正确与否跟不可知,题目的正确率更无法得知,而线上刷题系统可以有效的解决这些问题,不仅会统计学生做题的情况、分数、完成时间等还有错题本可以帮助学生记录做题过程中所出现的错题,所以线上刷题系统必然会成为一种趋势。1.1.1国内研究现状中国许多学校长期以来一直使用传统的手工登记方法来统计每天的作业或刷题情况。这种方法很复杂,容易出错,不准确,不透明,不能实时工作,而且依赖人为因素,增加了人员成本。当前,很多高校都有不同的信息系统,从原来单一的C/S体系向B/S结构体系发展REF_Ref135907731\r\h[3],到现在的B/S、C/S相结合,在不同的局域网络中,通过这种方式实现不同的业务模式,既可以方便学生的日常生活,又可以提高学校的安全管理。比如,葛方振和饶运等人开发了基于三层B/S、C/S架构的刷题管理系统,其核心内容是B/S和C/S结构对考试系统进行了分析REF_Ref135907749\r\h[4]。总之,考试管理系统的研发和应用,都要因势利导。通过统计和管理学生的考试情况,实现了学校对学生的管理,提高了教学管理的效率。1.1.2国外研究现状2018年的时候,国外学者指出管理有效的考试是对教师的一大挑战,他们需要一个快速而准确的方法REF_Ref135907762\r\h[5]。传统记录考试率的方法往往让教师和学生感到麻烦,而且耗费时间,尤其是在处理大量学生的时候。因为电子信息技术是从国外发展起来的,他们的知识和技术都很扎实,学习环境也很好,相比起考试管理,国外的相关知识技术都要成熟和稳定。例如指纹考试系统,其特点是将传统考试模式与生物识别技术相结合,利用基于细节点的指纹识别原理进行指纹采集,通过按手印进行考试管理,从而达到对高校教职工和学生考试管理的目的REF_Ref135907774\r\h[6]。为了确保数据的完整性和安全性,本系统具有针对不同使用者的不同角色及权限,可以设置多个管理员,对每个人都有同样的权限REF_Ref135907787\r\h[7],管理员可以查看其他学生的考试记录,而普通用户则只能使用自己的账号和密码登录,也就是说,只能查看自己的考试记录。1.2课题研究目的与意义在现在这个快速发展的时代,社会对人才的知识储备非常看重,也因此,学生的竞争压力逐渐增大REF_Ref135907801\r\h[8],教师的教学压力也逐渐增大。普通的刷题需要大量的纸张,这些纸张使用一次之后就无法再使用,同时还需要大量的印刷资源去印刷需要刷的题,这导致了资源的浪费,同时普通的刷题方式试卷不易保存,做过的错题需要自己手动去总结记录,这也浪费了学生大量的时间资源。而在线刷题系统可以有效的解决这些问题,通过在线刷题可以实现试卷的重复使用、试题的重复使用、错题本的自动记录等,不仅解决了纸张的浪费还为学生争取了大量的时间。1.2.1课题研究的意义在线刷题系统的最大优势不仅仅是可以快速刷题,还是内容多而深,更是学习方式更灵活。它为学生们提供了现实课堂中无法提供的选择空间,也可以找到更适合自己的刷题方式REF_Ref135907814\r\h[9]。在线刷题学习是传统课堂的延伸和拓展,是学生课下自主学习的一个很好的平台,也是学生突破学校教学束缚,创造新型学习方法,发现自己更多可能的机会,这样与传统课堂相比,就会有更好的学习气氛,学习效率也会更高,最重要的是学生们都会享受在线刷题学习过程REF_Ref135907828\r\h[10]。在线刷题系统是教育信息化的需要建立现代的远程教育,以及进行终生教学是现代教育信息化的一项非常关键的任务,而所有这个的实现,都是必须有在线刷题的,也因此在在线刷题发展的过程中,既可以合理的充分发挥各种教学资源的优点,同时也是可以适应世界教学发展的潮流的。能够进行课堂考试方式的变革。通过以上的内容,我们已经了解了在线刷题系统开发的意义了,可见,在线刷题系统开发在很多的方面都是有好处的,它不仅可以针对性的练习来提升成绩,而且还可以改变传统的教育方式,让大家随时随地的去学习,所以在线刷题系统的学习是非常有意义的,对人们有极大的帮助,能满足用户的需求。1.2.2课题研究的目的1、内容丰富,教学/学习方式多样。本系统课程涵盖广,大家都能找到自己想学的题型。学生选择刷题的形式不受限制,学生可以根据自己的特点和优势创造或寻找到属于自己的学习方法,比如有的学生不擅长多选题,可以把刷题的重点放在这类题型上。2、方便学习交流。本系统设有消息中心等功能模块,学生可以在此表达自己的观点和感受,与老师和其他同学们互动,这种交流不受时间,空间,地域的限制,还不受性格限制,现实中不好意思找老师的学生也有机会向老师表达自己的想法。3、功能更加齐全。本系统中,学生在考试前,可以先在线选择试卷,有多种类型的试卷供学生选择。1.3相关技术介绍本系统使用的是Java语言,它是现在使用最广泛的语言。主要作为开发软件的后端使用。Java的四大特性带给了它的实用性,他的JVM机制可以帮它在多平台上快速的运行REF_Ref135907983\r\h[11],做到一套代码多平台使用,同时它的垃圾自动回收机制也使得开发效率非常高,不用手动的去清除垃圾降低了代码量,在它衍生出的Spring使得它的开发效率大大增高,成为一门成熟稳定的开发语言。1.3.1Java语言Java语言是一门面相对象的编程语言,它即使编译型语言也是解释型语言,也正是它集编译型语言与解释型语言于一体,使得它具有跨平台的特性,Java底层的JVM可以实现垃圾的自动回收,在开发的过程中,开发人员可以不用花费大量的时间和经历去考虑系统运行中所产生的垃圾。Java语言的生态非常好,基于Java而产生的SpringBoot框架给Java的使用带来了极大的便利,同时Java对各种第三方组件的适配性非常好,这也使得Java开发的软件可以很容器的提高性能。1.3.2MySQL数据库MySQL使用最常用的关系型数据库REF_Ref135908107\r\h[12]。由于MySQL体积小、安装方便、速度快、维护成本较低,而且是开源免费的数据库,兼容性好,支持多个系统,所以中小型网站开发人员选择它作为他们网站的数据库并不奇怪。MySQL的底层的InnoDB索引使得Mysql的锁力度可以做的很小,在使用锁较多的场景可以极大的提高数据库的性能,同时InnoDB索引所使用的B+树可以降低存储树的高度,提高查询的速度。1.3.3SpringBoot框架SpringBoot是现在Java语言使用最多也是功能最强大的框架,SpringBoot主要有IOC和AOP两大特性,IOC通过控制反转可以将控制权限交给容器,用户需要使用拿来用就行,创建的工作都交给了SpringBoot容器,AOP面相切面编程,通过该技术可以轻松的实现一些需要有切面的操作,比如日志的记录、包路径扫描等等。1.4系统主要解决的问题及论文结构1.4.1系统主要解决的问题普通的刷题方式存在着大量的问题,如浪费纸张资源、占用大量学生整理时间、不易保存错题、教师难以总结等问题,在线刷题系统通过题目试卷的编辑可以做到一次编辑多次使用、通过对错题本的自动记录可以实现错题整理的时间节约、对学生做题正确率的统计可以减少教师统计难的问题。极大的增加了学生的学习效率和教师的教学效率。1.4.2论文结构第1章绪论,对系统进行了比较深入的探索,在课下进行了一些总结,主要展示了本系统的一些研究方法和其背后的意义。第2章需求分析,通过查阅资料对系统进行了需求分析,通过可行性分析、功能需求分析对本系统的需求进行了分析和总结第3章系统设计,系统设计主要是依据需求分析进行了总体功能设计,以及各个功能模块的描述,解决本系统涉及到的一些权限问题,以及进行了系统数据库的设计。第4章系统的详细设计与实现,主要对系统进行了详细的设计,通过流程图、时序图的方式对了各个功能进行了详细的设计。第5章系统测试,主要对系统的主要功能模块进行了系统化的测试,通过测试发现并改进系统的一些隐藏错误,提升系统的可用性和稳定性。第6章结论,总结了该项目所实现的功能,解决了哪些问题,以及未来项目的优化及展望。
第2章需求分析随着互联网的快速发展,人们的生活方式也有了很大的不同,网络逐渐进入到了每个家庭的生活中,也成为了每个家庭生活中不可缺少的一部分,在当今的互联网项目开发中,要想通过最少的成本最小的试错去获得项目的成功,那么需求分析是不可或缺的一部分。2.1可行性分析我们面对的问题,不一定都有明确的答案,所以很多时候,在无法马上得到答案的时候,就必须进行一项可行性的调查来决定这个问题的价值。需求分析的目标是设计出能全面满足广大用户需求的软件。但是,在没有满足使用者要求的情况下,产品的设计和编程有多好并不重要,因为这并不能让使用者满意。可行性研究旨在以最少的代价和最快的速度来对问题进行客观的分析。2.1.1技术可行性分析在线刷题系统在开发中使用了Vue.js框架、SpringBoot框架、Java技术和MySQL数据库等技术和工具REF_Ref135908139\r\h[13]。首先所使用的工具和技术都是当前主流且经过项目开发验证过的,其稳定性更是得到了开发者的一致好评;其次在课堂上都对这些工具和技术进行过讲授,而在课下也通过使用这些技术完成过一些小型项目的开发,因此在使用上不存在任何问题,由此技术可行。2.1.2经济可行性分析经济也是一个软件系统在开发中所必须考虑的问题REF_Ref135908152\r\h[14]。首先系统在开发中只需使用自备的计算机就可以完成全部开发工作,而开发工具和技术都是开源性质的也不需缴纳版权费用,还要考虑的就是人工,都是对于一个毕业设计课题来说可以忽略;其次在当前的大环境下,开发出一款可以为用户提供全面的信息服务系统一定会受到欢迎REF_Ref135908164\r\h[15]。由此经济可行。2.1.3操作可行性分析在线刷题系统是依托互联网进行开发的,而互联网的普及也对当前人们的生活产生了极大的影响,未来可能不具备互联网操作能力可能会寸步难行。本系统界面设计简洁并通过功能定义即可完成操作,即便没有使用过互联网的学生也可以在线进行考试、错题查看以及成绩查询等功能使用,由此操作可行。2.2功能需求分析在线刷题系统是为有学习需求的用户而设计出的提供学校服务的软件,可为学生提供线上考试、错题查看、成绩查询,管理员可对卷题、任务、成绩等信息进行管理,可审核学生的考试信息。其各用户的功能需求如下。2.2.1参与者需求模型的建立本在线刷题系统分为管理员和学生两种角色,其中学生具有刷题、查看试卷、查看错题本、查看任务、查看消息等功能,管理员具有编辑试卷、编辑试题、发布任务、查看答题情况等功能。参与者词汇表如图2-1所示。表2-1在线刷题系统参与者词汇表序号词汇同义词描述1学生用户、刷题者学生可以使用在线刷题系统提供的登录、刷题、错题本等功能实现快速刷题快速纠错2管理员教师、出题人管理员是可以管理用户信息、编辑题目、编辑试卷、发布任务等2.2.2用例词汇表用例词汇表如表2-2所示。表2-2用例词汇表序号用例名称用例描述预期的参与者与角色1注册登录该用例描述一个用户注册账号并登录的操作游客,学生,管理员2查看个人中心该用例描述一个学生查看个人信息的操作学生3查看试卷中心该用例描述一个学生查看试卷中心的操作学生、管理员4查看考试记录该用例描述一个学生查看自己的考试记录的操作学生、管理员5查看任务中心该用例描述一个学生查看自己任务中心的操作学生、管理员6查看错题本该用例描述一个学生查看自己的错题本信息学生表2-2(续)序号用例名称用例描述预期的参与者与角色7答题该用例描述一个学生进入试卷并答题的操作学生8查看消息中心该用例描述一个学生查看消息中心的操作学生、管理员9管理用户该用例描述一个管理员管理用户的操作管理员10管理题卷该用例描述一个管理员管理题目、试卷的操作管理员11管理任务该用例描述一个管理员管理任务的操作管理员12管理教育该用例描述一个管理员管理学科、年级信息的操作管理员13管理成绩该用例描述一个管理员查看学生答题成绩的操作管理员14管理消息中心该用例描述一个管理员发布消息查看消息详情的操作管理员15管理日志中心该用例描述一个管理员查看日志的操作管理员2.2.3学生用户功能需求分析学生用户的功能需求如下:1、注册登录:没有账号的用户可以通过注册获取账号,注册成功可以通过输入用户名密码登录。2、个人中心:进入个人中心页面可以看到自己的用户动态和个人资料,个人资料页面可以查询修改自己的个人信息。3、试卷中心:查询搜索已发布的试卷。4、考试记录:查看自己已经答过的试卷记录,如果试卷中有多选题、填空题、简答题没有批改的会有批改按钮进行批改。5、任务中心:管理员发布的任务,一个任务包含多个试卷,每个学生只能做一次。6、错题本:答错题目会自动记录到错题本,错题本会显示题目基本信息以自己做错的答案和正确答案。7、考试:用户选择试题进行答题测试,支持多种答题方式,提交试卷之后会自动判断分数并弹框显示。8、消息中心:可以接收到管理员发送的消息,如果有消息还未读取会有未读消息条数。如图2-1所示。图2-1学生用例图个人中心管理用例描述如表所示。表2-3学生个人中心模块描述用例条目描述用例名称管理个人信息模块主要参与者学生其他参与者无描述查看、修改个人信息触发条件学生点击右上角头像下拉框里的个人中心按钮前置条件学生已经注册成功并且账号状态没有被禁用学生已经成功登录到刷题系统后置条件无表2-3(续)用例条目描述基本流程1.学生点击右上角头像下拉框里的个人中心按钮2.系统后台去查找这个学生的个人信息并返回给前台3.默认是用户动态页面,主要显示了用户的一些操作记录4.点击个人资料修改按钮可以去修改自己个人信息替代流程无结束用户关闭浏览器或者退出登录或者点击左上角回到主页的按钮实现约束和说明1.修改年龄只能输入整数2.修改性别只能选择男或女3.出生日期只能选择时间其他事件流无考试用例描述如表所示。表2-4考试模块描述用例条目描述用例名称学生答题模块主要参与者学生其他参与者无描述学生点击试卷开始答题触发条件学生点击要答题的试卷前置条件只能对已存在的试卷答题学生已经成功登录到刷题系统后置条件无基本流程1.学生点击试卷中心2.点击要答题的试卷3.回答试卷中的问题4.提交试卷替代流程无结束学生提交试卷或者点击取消按钮实现约束和说明1.选择题只能选择已有选项2.判断题只能选择对或错其他事件流无2.2.4管理员用户功能分析管理员用户的功能需求如下:1、管理用户:维护用户的是否可用,个人信息、日志等。2、管理试卷:管理员通过管理试卷可以创建编辑试卷信息。3、管理题目:管理员通过管理题目可以编辑查看题目信息。4、管理学科:管理员通过该功能能够对学科信息进行维护。5、管理任务:管理员通过该功能能够对任务信息进行增删改查操作。6、管理答卷:管理员通过该功能能够对答卷信息进行增删改查操作。7、管理消息:管理员可以通过该功能对消息进行增删改查。8、管理消息:管理员可以通过该功能查看系统的运行日志。用例图如图2-2所示。图2-2管理员用例图试卷用例描述如下表所示。表2-5试卷管理模块描述用例条目描述用例名称试卷管理模块主要参与者管理员其他参与者无描述提供新增、修改、删除、查阅试卷功能触发条件管理员点击试卷列表按钮前置条件管理员成功登录到系统后置条件无基本流程1.点击题卷管理2.点击试卷列表3.增删改查试卷替代流程无结束管理员退出登录或选择其他页面实现约束和说明1.新添加的试卷不符合要求时会添加失败2.修改的试卷不符合要求时会修改失败其他事件流无任务用例描述如下表所示。表2-6任务管理模块描述用例条目描述用例名称任务管理模块主要参与者管理员其他参与者无描述提供新增、修改、删除、查阅任务功能触发条件管理员点击任务管理按钮前置条件管理员成功登录到系统后置条件无基本流程1.点击任务管理2.点击任务列表查看、修改、删除任务3.点击任务创建创建任务替代流程无结束管理员退出登录或选择其他页面实现约束和说明1.新添加的任务不符合要求时会添加失败2.修改的任务不符合要求时会修改失败其他事件流无教育用例描述如下表所示。表2-7教育管理模块描述用例条目描述用例名称教育管理模块表2-7(续)用例条目描述主要参与者管理员其他参与者无描述提供新增、修改、删除、查学科功能触发条件管理员点击学科列表按钮前置条件管理员成功登录到系统后置条件无基本流程2.点击学科列表增删改查学科替代流程无结束管理员退出登录或选择其他页面实现约束和说明1.新添加的学科不符合要求时会添加失败2.修改的学科不符合要求时会修改失败其他事件流无2.3本章小结本章主要从技术、操作、经济三个角度去分析在线刷题系统是否可行,并通过对不同角色的功能需求进行分析,并对核心用例进行了详细的描述。
第3章系统设计第三章主要是对在线刷题系统的总体功能进行设计,并对核心功能刷提功能、出卷功能、消息功能、任务功能等模块进行了功能的详细说明,并对系统进行了概念模型设计以及逻辑结构设计。3.1系统功能模块设计本系统前台包含注册登录、任务中心、考试、考试记录、错题本、个人信息和消息信息模块,后台包含登录、用户管理、学科管理、试卷管理、试题管理、任务列表、消息管理、个人中心和日志管理模块,具体如图3-1所示。图3-1在线刷题系统功能结构图1、前台功能:(1)注册登录:用户可以点击注册按钮进行注册,输入个人信息和账号密码后注册成功进行登录。(2)任务中心:管理员选择多个试卷编辑为任务进行发布。(3)考试:用户选择试题进行答题测试,支持多种答题方式。(4)考试记录:学生可以查看自己已经答过的试卷的信息。(5)错题本:错题本自动记录试卷中的错题信息,学生进入错题本进行查看。(6)个人信息:进入个人信息页面可以查看用户本人的个人信息。(7)消息中心:可以接收到管理员发送的消息。2、后台管理端:(1)登录:管理员通过在管理员登录界面登录。(2)用户管理:管理员可以查看、编辑、选择是否启用用户。(3)学科管理:管理员可在不同的年级建立编辑不同的学科。(4)试卷管理:管理员可选择不同的题目类型、题目组成试卷。(5)试题管理:管理员可编辑题目的类型,如单选题、多选题、判断题等,选择题目类型之后编辑题目的基本信息。(6)任务列表:管理员选择不同的试卷组成任务发送给用户。(7)消息管理:管理员可编辑消息选择发送给不同的学生。(8)个人中心:管理员可查看该管理员账号的个人信息。(9)日志管理:管理员可查看系统运行产生的日志。3.2数据库设计数据库设计是通过需求分析确定的功能,根据这些功能分析可能会产生的实体以及实体间的联系,根据所需的ER图能够使用户更加清晰的了解到数据与对象之间的关系REF_Ref135908184\r\h[16],根据这些联系设计分析出数据库中的表结构。3.2.1数据库设计原则 数据库设计时要使其表功能能够稳定、安全、可靠,以使数据库的性能达到一个相对较好的状态REF_Ref135908198\r\h[17],提升用户的体验,在数据的管理、备份、优化等方面必须满足以下要求:1、数据库的表名要规范;2、降低冗余,提高程序访问速度;3、能够使用索引的地方要创建索引,提高查询速度;4、主键有序自增,防止索引重排序;5、经常修改的字段,禁止使用索引;6、使用索引的时候,注意最左前缀原则;7、多对多的联系要创建新的联系表;8、长度确定的字段使用char类型加长度;9、建立表的时候要给每个字段加注释;3.2.2数据库E-R图设计图3-2在线刷题系统ER图在线刷题系统采用MySQL数据库完成学生、管理员、学科、任务、消息、试卷题目答案、试卷、试题等实体的设计,具体如下:学生实体描述的是与学生的属性信息,其实体属性图设计如图3-3所示。图3-3学生实体属性图管理员实体描述的是管理员属性相关的信息,其实体属性图设计如图3-4所示。图3-4管理员实体属性图试卷实体描述的是试卷的信息,其实体属性图设计如图3-5所示。图3-5试卷实体属性图任务实体描述的是任务的信息,其实体属性图设计如图3-6所示。图3-6任务实体属性图试题实体描述的是为试题的信息,其实体属性图设计如图3-7所示。图3-7试题实体属性图试卷题目答案实体描述的是学生的错题本信息,其实体属性图设计如图3-8所示。图3-8错题本实体属性图学科实体描述的是年级名称、学科名称等属性,其实体属性图设计如图3-9所示。图3-9错题本实体属性图消息实体描述的是消息的基本信息,属性图设计如图3-10所示。图3-10错题本实体属性图3.2.3数据库表设计在线刷题系统利用开源的MySQL数据库来完成提供给管理员以及学生来完成与个人相关的各类信息的管理,包括试卷、任务及试卷答案等信息,其数据库表设计如下:1、试卷信息表表3-1试卷信息表结构序号字段名称字段类型长度允许为空主键注释1idint11否是主键2namevarchar255是否试卷名称3subject_idint11是否科目编号4paper_typeint11否否类型5grade_levelint11是否难度6scoreint11是否分数7question_countint11是否问题数量8suggest_timeint11是否计时9limit_start_timedatetime是否开始时间10limit_end_timedatetime是否结束时间15frame_text_content_idint11是否主框内容16create_userint11是否创建用户17create_timedatetime是否创建日期18deletedbit1是否删除标记19task_exam_idint11是否任务编号2、试卷答案表表3-2试卷答案表结构序号字段名称字段类型长度允许为空主键注释1idint11否是主键2exam_paper_idint11否否试卷Id表3-2(续)序号字段名称字段类型长度允许为空主键注释3paper_namevarchar255否否科目编号4paper_typeint11是否试卷类型5subject_idint11否否科目编号6system_scoreint11是否系统总分7user_scoreint11否否用户分数8paper_scoreint11是否分数9question_correctint11是否正确答案10question_countint11是否问题数量11do_timeint11是否答题时长12statusint11是否状态13create_userint11是否创建用户14create_timedatetime是否创建时间15task_exam_idint11是否任务编号3、试卷题目答案表表3-3试卷题目答案表结构序号字段名称字段类型长度允许为空主键注释1idint11否是主键2question_idint11否否问题编号3exam_paper_idint11否否试卷编号4exam_paper_answer_idint11否否答案编号5question_typeint11是否类型6subject_idint11否否科目编号7customer_scoreint11是否用户得分8question_scoreint11是否题目分数9question_text_content_idint11是否编号10answervarchar255是否答案11text_content_idint11是否试题编号12do_rightbit1是否是否正确13create_userint11是否创建人14create_timedatetime是否创建时间15item_orderint11是否排序4、学生和管理员表表3-4学生表结构序号字段名称字段类型长度允许为空主键注释1idint11否是主键2user_uuidvarchar200是否uuid3user_namevarchar200否否用户名表3-4(续)序号字段名称字段类型长度允许为空主键注释4passwordvarchar200否否密码6real_namevarchar50是否真实姓名7ageint11是否年龄8sexint11是否性别9birth_daydatetime是否生日10user_levelint11否否年级11phonevarchar20是否电话12roleint11是否角色13statusint11否否状态14image_pathvarchar1000是否头像地址15create_timedatetime是否创建时间16modify_timedatetime是否更改时间17last_active_timedatetime是否最后登录时间18deletedbit1是否是否删除19wx_open_idvarchar50是否微信id5、任务表表3-5任务表结构序号字段名称字段类型长度允许为空主键注释1idint11否是主键2titlevarchar100否否主题3grade_levelint11是否年级4frame_text_content_idint11否否试题编号5create_userint11是否创建人6create_timedatetime是否时间7deletedbit1是否删除标记8create_user_namevarchar200是否学生姓名6、消息表表3-6消息表结构序号字段名称字段类型长度允许为空主键注释1idint11否是主键2titlevarchar50否否主题3contentvarchar500否否内容4create_timedatetime否否时间5send_user_idint11否否发送人6send_user_namevarchar50否否发送人姓名7send_real_namevarchar50否否真实姓名8receive_user_countint11否否接收人数9read_countint11是否已读人数7、学科表表3-7学科表结构序号字段名称字段类型长度允许为空主键注释1idint11否是主键2namevarchar50是否名称3levelint11是否级别4level_namevarchar50是否级别名称5item_orderint11是否排序10deletedbit1是否是否删除8、用户消息表表3-8用户消息表结构序号字段名称字段类型长度允许为空主键注释1idint11否是主键2message_idint11否否消息内容ID3receive_user_idint50否否接收人ID4receive_user_namevarchar50否否接收人用户名5receive_real_namevarchar50是否真实姓名6readedbit1是否是否已读7create_timedatetime是否8read_timedatetime是否读取时间9、试题表表3-9试题结构序号字段名称字段类型长度允许为空主键注释1idint11否是主键2question_typeint11是否试题类型3subject_idint11否否编号4scoreint11是否分数5grade_levelint11是否级别6difficultint11是否难度7correcttext500是否正确答案8info_text_content_idint11是否文件编号9create_userint11是否创建人名10statusint11是否状态11create_timedatetime是否创建时间12deletedbit1是否是否删除10、用户任务表表3-10用户任务表结构序号字段名称字段类型长度允许为空主键注释1idint11否是主键2task_exam_idint11否否任务ID3create_userint11否否创建人4create_timedatetime是否创建时间5text_content_idint11是否完成情况11、文本表表3-11文本表结构序号字段名称字段类型长度允许为空主键注释1idint11否是主键2contenttext500是否文本3create_timedatetime是否创建时间3.3本章小结本章对各个功能模块进行了详细说明,以及使用ER图、实体图、数据库表的方式对在线刷题系统的数据库设计进行了详细的说明。
第4章系统详细设计与实现通过对在线刷题系统进行总体设计之后,对于在线刷题系统的整个流程有了宏观上的了解,这章将对在线刷题系统进行详细的设计,通过对系统各个细节的设计使得该系统的功能健壮可行。4.1用户登录本在线刷题系统有两个角色,分别是管理员与学生。系统使用者根据不同的身份选择不同的URL进入到登录页面,输入账号密码,如果账号密码正确则回去校验是否是可用状态,最后根据状态是否可用来决定是否可以成功登录。4.1.1用户登录时序图用户登录时要输入账号密码,登录之后会根据账号密码进行加密,对加密的字段与数据库里存储的密码字段去做对比,如果对比一致那么会对该用户进行授权,并将授权token保存在浏览器,短时间内不用重复登录即可使用该系统。用户登录时序图如图4-1所示。图4-1用户登录时序图4.1.2用户登录的实现用户根据URL进入到不同的登录页面后,输入用户名密码登录。用户登录流程图如图4-2所示。图4-2用户登录流程图用户登录界面图如图4-3所示。图4-3用户登录界面图4.2编辑题目功能的设计与实现编辑题目功能可以将试卷与题目分离开,可以使得一个题目可以被多个试卷使用,降低了编辑试卷的工作量,同时有单选题、多选题、判断题、简答题等不同类型的题型。4.2.1编辑题目时序图管理员登录成功进入编辑题目的页面,先选择题目的类型,之后对题目进行编辑,如果是选择题则需要填写正确的选项,如果是判断题需要输入答案是正确还是错误,编辑成功之后提交题目。编辑题目时序图如图4-4所示。图4-4编辑题目时序图4.2.2编辑题目功能的实现管理员在编辑题目时需要选择题目的类型,在编辑完答案之后给出正确答案和题目的难度就可以提交题目。编辑题目流程图如图4-5所示。图4-5编辑题目流程图编辑题目界面图如图4-6、4-7所示。图4-6选择题目类型界面图图4-7编辑题目界面图4.3编辑试卷功能的设计与实现编辑试卷功能可以选择不同类型的试卷,可以选择固定试卷,时段试卷,任务试卷,固定试卷可以在任何时间答题,时段试卷只能在时间段内答题,任务试卷只有发布任务的时候才能使用。编辑试卷的时候可以选择之前已经编辑好的题目进行组卷,可以选择的类型有选择题、多选题、判断题、填空题、简答题,选择好题目之后会设置试卷的分数。4.3.1编辑试卷功能时序图编辑试卷时选择完试卷的类型,之后选择试卷所对应的年纪、科目,之后可以添加标题,标题对应的是题目的类型,填写完标题之后可以选择多个题目在这个标题下,时段试卷要选择答题的时间段,之后便可以提交试卷。编辑试卷时序图如图4-8所示。图4-8编辑试卷时序图4.3.2编辑试卷功能的实现编辑试卷首先需要进入到编辑试卷的页面,进入页面之后会有选项进行选择这套试卷对应的年级,选择完年级之后可以编辑标签,然后选择需要出的题目,如果有题目的话可以进行选择,如果题库里没有题目的话会跳过选择题目的流程,结束本次出卷,选择完相应的题目之后选择试卷的类型,可以选择时固定试卷、时段试卷、任务试卷,然后发布试卷。编辑试卷流程图如图4-9所示。图4-9编辑试卷流程图编辑试卷界面图如图4-10所示。图4-10编辑试卷界面图4.4学生答题功能的设计与实现学生登录成功之后可以选择想要答题的试卷进行答题,答题试卷的展示会根据学生的年级去只展示该年级的试卷,不在答题时间段内的时段试卷也不会进行展示。4.4.1学生答题功能时序图学生选择完相对应的试卷之后进行答题页面,题目可以作答也可以不作答,不作答的部分不按照错误去判分,答完题目便可提交试卷,之后会返回答题的分数。学生答题时序图如图4-11所示。图4-11学生答题时序图4.4.2学生答题功能的实现答题时单选题只能选择一个答案,判断题只能选择对与错,多选题可以选择多个答案,简答题可以选择输入答案,提交之后会判分并弹窗显示。学生答题流程图如图4-12所示。图4-12学生答题流程图学生答题界面图如图4-13所示。图4-13学生答题界面图4.5错题本功能的设计与实现错题本记录学生答题时答错的错题,记录了学生答错题的题目答错题的答案以及正确的答案,在学生学习的过程中可以有针对性的去查看自己的错题,提高了学生的学习效率。4.5.1错题本功能时序图学生登录成功之后查看错题本,会向后端服务发送一条请求,根据学生的id去查询这个学生的错题并返回。错题本时序图如图4-14所示。图4-14错题本时序图4.5.2错题本功能的实现错题本页面显示有错题的题型、学科、答题时间,查看错题详情时会显示错题的题目,错题的答案以及正确的答案。错题本流程图如图4-15所示。图4-15错题本流程图错题本界面图如图4-16所示。图4-16错题本界面图4.6本章小结本章的主要任务是对系统的用户登录模块、管理员编辑题目模块、管理员编辑试卷模块、学生答题模块、学生查看错题本模块做了进一步的详细设计和阐述。第5章系统测试系统测试是将系统放在特定的环境里,使用科学有效的测试方法对项目的正常运行进行系统性的测试,以此来发现开发过程中所出现的一些问题,并且及时的去修复这些问题,以此降低系统上线运行出错的概率,提升系统的可用性。5.1软件测试的方法在软件开发的整体流程中,对软件进行测试的环节是软件开发必不可少的一部分,比较典型的软件测试有白盒、黑盒、灰盒等测试方法,目前测试方法使用比较多的有白盒测试、黑盒测试REF_Ref135908215\r\h[18]。1、白盒测试白盒测试主要关注的是根据软件的整体内部结构去设计一些测试用例,这些用例的设计需要开发人员也参与其中,通过这些用例去发现开发中的一些编码规范、边界条件制定所出现的bug,对程序的逻辑路径进行全覆盖性的测试REF_Ref135908226\r\h[19]。2、黑盒测试黑盒测试常常被称为功能测试或者被称为数据驱动测试,在黑盒测试的过程中,程序本身的内部结构是看不到的,测试人员需要把自己比作实际用户,在不了解程序内部结构的情况下对程序进行测试,通过测试发现程序运行中可能出现的错误。5.2系统功能测试针对不同用户对系统进行测试,以学生为例,把学生模块下的登录,在线考试,每个功能逐一进行测试,以管理员为例,把管理员模块下的登录,试卷管理模块功能进行测试,检查系统的真实反应和预期结果是否一致,从而发现系统存在的问题,进而更改代码上的错误,检查整个系统使用过程中是否符合现实使用习惯,发现不符的地方从而发现代码上或者逻辑上的缺陷,改正后再进行测试,直到所有操作都满足预期输出,以此来完善系统REF_Ref135908238\r\h[20]。下面几张表例举了几个测试的具体内容。5.2.1管理员登录功能测试测试编号:K001目的:测试管理员登录功能是否稳定可用前提:进入管理员登录页面管理员登录测试用例如表5-1所示。表5-1管理员登录模块测试用例表序号输入数据操作及步骤预期结果实际结果1类型:管理员用户名:ef01密码:123456在管理员登录界面,填写账号、密码,进行登录操作。提示用户名不能少于五个字符。与预期结果一致2类型:管理员用户名:密码:123456在管理员登录界面,填写账号、密码,进行登录操作。提示用户名不能少于五个字符。与预期结果一致3类型:管理员用户名:admin密码:在管理员登录界面,填写账号,不填写密码,进行登录操作。提示密码不能少于五个字符。与预期结果一致4类型:管理员用户名:admin密码:12345在管理员登录界面,填写账号、密码,进行登录操作。提示用户名或密码错误与预期结果一致5用户名:123456密码:123456在管理员登录界面,填写被禁用的账号、密码,进行登录操作。提示该账号被禁用与预期结果一致6类型:管理员用户名:admin密码:123456在管理员登录界面,填写账号、密码,进行登录操作。提示登录成功并跳转页面与预期结果一致测试结果:经过测试,管理员登录测试结果正确,如果输入的用户名或者输入的密码不够5个字符会有提示,不填写账号密码也会有相应的提示,如果账号密码正确能够登录成功并且跳转页面。5.2.2题目列表功能测试测试编号:K002目的:测试题目列表功能是否稳定可用前提:管理员登录成功进入题目列表页面题目列表测试用例如表5-2所示。表5-2题目列表模块测试用例表序号输入数据操作及步骤预期结果实际结果1进入题目列表页面点击添加题目选择相应类型的题目,不填入所有必填信息提交。提交失败,提示需要填入必填信息与预期结果一致2进入题目列表页面点击添加题目选择相应类型的题目,填入所有必填信息提交。弹出提交成功并跳转页面与预期结果一致表5-2(续)序号输入数据操作及步骤预期结果实际结果3题目Id:5进入题目列表页面输入合法题目ID点击查询按钮。返回查询到的信息与预期结果一致4题目Id:djals进入题目列表页面输入非法题目ID点击查询按钮。提示用户名查询错误与预期结果一致测试结果:经过测试,管理员题目列表功能可以正常使用,必须输入合法的题目信息才可以提交题目,否则提示用户输入合法题目,查询也需输入合法id,否则会提示用户查询错误。5.2.3试卷列表功能测试测试编号:K003目的:测试试卷列表功能是否稳定可用前提:管理员登录成功进入试卷列表页面试卷列表测试用例如表5-3所示。表5-3试卷列表模块测试用例表序号输入数据操作及步骤预期结果实际结果1进入试卷列表页面点击添加试卷,不填入所有必填信息提交。提交失败,提示需要填入必填信息与预期结果一致2进入试卷列表页面点击添加试卷,填入所有必填信息提交。弹出提交成功并跳转页面与预期结果一致3题目Id:5进入试卷列表页面输入合法题目ID点击查询按钮。返回查询到的信息与预期结果一致4题目Id:vasd进入试卷列表页面输入非法题目ID点击查询按钮。提示用户名查询错误与预期结果一致测试结果:经过测试,管理员试卷列表功能可以正常使用,必须输入所有必填信息才可以提交试卷,否则提示用户输入必填信息,查询也需输入合法id,否则会提示查询错误。5.2.4学生答题功能测试测试编号:K004目的:测试学生答题功能是否稳定可用前提:学生登录成功进入答题页面学生答题测试用例如表5-4所示。表5-4学生答题模块测试用例表序号输入数据操作及步骤预期结果实际结果1进入答题页面,回答所有问题再提交试卷。提交成功,正常判断分数与预期结果一致2进入答题页面,回答部分问题再提交试卷。提交成功,回答的部分正常判分,没有回答的部分视为没分与预期结果一致测试结果:经过测试,用户可以正确答题,再答题过程中没有回答的部分不参与判分,回答的部分会根据答案是否正确去判定是否给分。5.2.5试卷中心功能测试测试编号:K005目的:测试试卷中心功能是否稳定可用前提:学生登录成功进入答题页面试卷中心测试用例如表5-5所示。表5-5试卷中心模块测试用例表序号输入数据操作及步骤预期结果实际结果1进入试卷中心页面,选择左侧导航栏中的语文标签。只显示语文试卷与预期结果一致2进入试卷中心页面,选择左侧导航栏中的数学标签。只显示试卷名称包含测试字段的试卷与预期结果一致3试卷名称:测试进入试卷中心页面,选择左侧导航栏中的语文标签,在搜索框搜索试卷显示包含测试的试卷与预期结果一致测试结果:经过测试,用户可以正确使用试卷中心的功能,通过左侧的导航栏可以快速定位到哪门科目的试卷,通过搜索功能可以快速搜索出试卷名称包含输入字段的试卷。5.3性能测试性能测试主要是测试系统的性能,通过性能测试可以测试出在高并发的情况下系统会出现什么问题,在当下这个互联网盛行的时代,系统能否扛得住高并发也称为成熟的系统测试必不可少的一部分,具体性能测试结果如下表5-6所示。表5-6性能测试结果表并发用户数事务平均响应时间事务最大响应时间事务成功率平均流量(字节)CPU利用率MEM利用率1001.06秒2.33秒100%517727%5%2001.33秒2.54秒100%524638%12%5001.87秒4.02秒100%518538%23%5.4本章小结本章对基于SpringBoot的在线刷题系统进行了功能的测试和性能的测试,通过功能测试去发现系统存在的隐形缺陷,通过性能测试确定QPS在500的情况下系统可以正常处理每个请求。
第6章结论本系统的设计灵感来源于疫情时期学生在家刷题的实际情况,并对刷题进行了扩展和思考。分析学生网上刷题以及学习的需求来设计学生模块的功能,以学生需求对应功能设计,再以学生功能的综合来设计管理员模块。系统功能分析好后选择合适的系统架构,数据库,编写语言等使系统有可靠的技术支持。在本系统设计中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度黑龙江省高校教师资格证之高等教育心理学模考预测题库(夺冠系列)
- 2024年图书管理员考试重要课程试题及答案
- 班组长安全培训考试试题
- 图书管理员跨学科知识整合试题及答案
- 宁夏2019年高职分类考试文化基础考试数学试卷
- 2025年新型铝镁合金材料合作协议书
- 2025年淄博购房定金合同
- 二零二五年度企业解雇员工权益保障与再就业协议
- 2025年度绿色金融产品设计与推广委托合同
- 2025年度货物损失赔偿协议书:货物在海上运输过程中受损赔偿合同
- 《术前讨论制度》课件
- 商业综合体商业项目立项报告
- 油库消防安全知识培训
- 车辆调度及驾驶员管理办法全套
- 淋巴静脉吻合术后护理课件
- 山东省烟台市牟平区(五四制)2023-2024学年七年级上学期期中考试历史试题
- 钣金车间生产流程图
- 地铁保洁服务投标方案
- 先进模具设计与制造技术
- 老旧小区雨污分流改造工程施工组织设计方案
- 人教版《道德与法治》二年级下册全册优秀课件
评论
0/150
提交评论