# tgs-vue **Repository Path**: zhaohaopeng/tgs-vue ## Basic Information - **Project Name**: tgs-vue - **Description**: tgs前端,AI赋能的离散数学个性化组卷系统 由用户管理、题库管理、试卷管理、成绩分析、任务中心五大模块构成,贯穿用户管理、题库管理、组卷、考试、批阅、分析与错题巩固全流程。 - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 2 - **Created**: 2025-03-13 - **Last Updated**: 2025-08-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: 组卷系统, 离散数学, AI赋能, SpringBoot, Vue ## README # 基于RuoYi(SpringBoot+Vue前后端分离)的离散数学组卷系统 **赵昊鹏 联系方式:2652090476** ## 登录页面 使用了particles.js库实现动态粒子背景,粒子效果包含悬停互动和点击效果 ![image-20250429154030250](README.assets/image-20250429154030250.png) ## 首页 实现了数字增长动画效果,使用帧动画实现平滑过渡。 ![image-20250421140301831](README.assets/image-20250421140301831.png) 展示月度答卷数量趋势图,带渐变填充区域。 ![image-20250421140311613](README.assets/image-20250421140311613.png) ## 用户管理 ### 班级管理 对于任课教师为停用状态,显示为红色提醒用户更改任课教师 ![image-20250410105214682](README.assets/image-20250410105214682.png) 在新增时获取状态为启用的教师列表,并根据用户名(对于教师用户用户名是教师的工号)和用户昵称(对于教师用户用户昵称是教师的姓名) image-20250410113005667image-20250410113027726 在修改班级信息时,获取状态为启用的教师列表,并自动读入页面列表中的任课教师一栏,如果是禁用状态的教师则把他临时添加到教师列表中 ![image-20250410113321931](README.assets/image-20250410113321931.png) ### 学生信息管理 在学生信息列表**管理学生可以同步若依自带的用户管理**(同步新增、修改、删除),当新增学生时自动同步新增学生,用户名为学生的学号,用户昵称为学生姓名,密码默认为“123456”,在新增或修改状态时同步系统分配“学生身份”。 对于管理员用户显示全部班级的学生列表;对于教师用户则获取其任课班级列表,只显示其任课班级的学生信息。 ![image-20250410113724894](README.assets/image-20250410113724894.png) 在新增,修改和搜索时,对于管理员用户显示全部班级列表;对于教师用户则获取其任课班级列表 对于新增和修改表单做了校验如:学号不能超过10位数字,姓名不能超过30个字符,邮箱需包含@符号且格式为 '用户名@域名.后缀等 ![image-20250410113525840](README.assets/image-20250410113525840.png) 下载模版和导入学生信息功能,根据下载的模板在Excel中填入学生信息可以一键导入到系统中 ![image-20250410114405515](README.assets/image-20250410114405515.png) ![image-20250410114214326](README.assets/image-20250410114214326.png) ### 教师信息管理 跟学生信息管理同理同步了若依自带的用户管理 ![image-20250410114455455](README.assets/image-20250410114455455.png) ### AI设置 支持用户在个人中心中填写个人API Token,使用自己的Token去请求AI大模型。 ![image-20250528113107399](README.assets/image-20250528113107399.png) ## 题库管理 ### 题目列表 在题目列表界面可以查看题库的全部题目并且可以预览全部题目,主要的功能有根据多种参数搜索题目,预览题目,修改题目,删除题目,对于数学公式部分使用MathJax进行渲染,使其展示为数学公式 ![image-20250410114713039](README.assets/image-20250410114713039.png) ![image-20250410114917185](README.assets/image-20250410114917185.png) 对于章节搜索的处理,在搜索父章节时,其下所有子章节的题目也加载出来,如:搜索所属章节为集合的题目,其下如离散数学 / 集合 / 集合间的关系、离散数学 / 集合 / 集合的运算等题目也被搜索出来 ![image-20250410115008343](README.assets/image-20250410115008343.png) 对于答案部分进行了模糊处理,当点击所选题目的答案时显示题目答案 ![image-20250410115232545](README.assets/image-20250410115232545.png) ### 章节管理 采用树形结构,便于章节管理 ![image-20250411135027748](README.assets/image-20250411135027748.png) ### 单选题创编 可以创建,修改,预览单选题,可以灵活设置选项数量,最多支持六个选项 其中编辑文本部分使用了集成了 QuillEditor作为富文本编辑器,可以插入图片和数学公式(使用LaTeX语法插入数学公式),用图片作为题干、选项、答案、解析等 ![image-20250410115537799](README.assets/image-20250410115537799.png) ![image-20250410115612642](README.assets/image-20250410115612642.png) 出题后可以进行题目预览 ![image-20250410115654107](README.assets/image-20250410115654107.png) ### 多选题创编 这里展示使用图片作为题干选项的情况,多选题最多支持9个选项 ![image-20250410120049586](README.assets/image-20250410120049586.png) ![image-20250410120128516](README.assets/image-20250410120128516.png) ![image-20250410120211496](README.assets/image-20250410120211496.png) ### 判断题创编 ![image-20250410120242735](README.assets/image-20250410120242735.png) ![image-20250410120310399](README.assets/image-20250410120310399.png) ### 填空题创编 填空题创编支持最多8个空的填空题,使用\_\_\_\__\___表示填空处。可以根据题目中空的数量**灵活生成**需要设置填空题答案的数量。 对于每个空的答案还支持同义答案,只需要满足任意一个答案就算该空答对。 为了支持**填空题能够实现存储多个空的答案**,填空题的答案没有存放在题目基础信息表tgs_question的answer字段,而是存放在了选项中,在数据库中的题目选项表tgs_question_option,A选项存放第一个空的答案,B选项存放第二个空的答案... ![image-20250410122129590](README.assets/image-20250410122129590.png) ![image-20250410122203030](README.assets/image-20250410122203030.png) ### 简答题创编 ![image-20250410122635465](README.assets/image-20250410122635465.png) ![image-20250410122754607](README.assets/image-20250410122754607.png) ### AI辅助出题 可以根据所属章节,难度,选项个数等参数生成题目并应用到出题页面中。各题型创编均已实现此功能。 ![image-20250411114328747](README.assets/image-20250411114328747.png) #### 生成题目 ![image-20250421154952366](README.assets/image-20250421154952366.png) ![image-20250421155014323](README.assets/image-20250421155014323.png) ![image-20250421155034999](README.assets/image-20250421155034999.png) 生成题目后点击应用 ![image-20250421155106484](README.assets/image-20250421155106484.png) ![image-20250421155122484](README.assets/image-20250421155122484.png) #### 优化题目 在编辑题目时可用 ![image-20250411135316693](README.assets/image-20250411135316693.png) #### 分析题目 ![image-20250411113907270](README.assets/image-20250411113907270.png) ![image-20250411135606695](README.assets/image-20250411135606695.png) #### 改进建议 ![image-20250411114038986](README.assets/image-20250411114038986.png) #### AI聊天功能 ![image-20250411120354140](README.assets/image-20250411120354140.png) ## 试卷管理 ### 试卷列表 显示试卷列表,试卷有三种状态:草稿,已发布(进行中),已结束 试卷生成后默认为草稿状态,对草稿状态进行发布则试卷变为已发布(进行中)状态,对已发布状态进行下架则变为草稿状态 已发布状态的试卷到结束时间后将把试卷状态设为已结束,已结束状态的试卷不能进行答题 预览功能可以预览试卷的信息,包括题目的构成,题目的分数,题目的选项等 修改功能:不能修改已发布状态的试卷,只能修改状态为草稿状态和已结束状态的试卷(三种方式的组卷都通过手动组卷进行修改) 删除功能:同样不能删除已发布状态的试卷,只能删除状态为草稿状态和已结束状态的试卷,支持批量删除 在删除试卷时会删除试卷相关的全部信息,如试卷信息,试卷结构信息,学生答题结果信息,学生答题进度信息等。 ![image-20250410122945879](README.assets/image-20250410122945879.png) ![image-20250410133906855](README.assets/image-20250410133906855.png) ![image-20250410122909567](README.assets/image-20250410122909567.png) ### 手动组卷 手动组卷的考试班级根据教师任课班级设置,只有管理员显示全部班级 题目分数有两种设置方式,采用题库中题目设置的分数或统一设置题目分数 ![image-20250410134025183](README.assets/image-20250410134025183.png) 在选择题目窗口进行题目的选择,实现了不同分页的选择,可以预览题目,可以在列表中只显示选中的题目。可以通过选择父章节搜索出其下所有子章节的题目(类似题目列表根据章节搜索) ![image-20250410134237172](README.assets/image-20250410134237172.png) ![image-20250410134319610](README.assets/image-20250410134319610.png) ![image-20250410134340017](README.assets/image-20250410134340017.png) 可以在预览界面查看两种分数设置生成的试卷题目分数的区别 ![image-20250410134646100](README.assets/image-20250410134646100.png) ![image-20250410134721347](README.assets/image-20250410134721347.png) ### 自动组卷 同样有两种分数设置,并且可以根据章节范围,难度范围来限制自动生成题目的范围。 ![image-20250410134801878](README.assets/image-20250410134801878.png) ![image-20250410134858952](README.assets/image-20250410134858952.png) ![image-20250410134936955](README.assets/image-20250410134936955.png) ![image-20250410134950804](README.assets/image-20250410134950804.png) 在预览界面浏览完试卷后生成试卷 ![image-20250410135033740](README.assets/image-20250410135033740.png) ### 错题组卷 ![image-20250410135117222](README.assets/image-20250410135117222.png) 教师在选择题目中查看所有学生的错题库,可以查看所有学生的错误次数 ![image-20250410135231254](README.assets/image-20250410135231254.png) ![image-20250410135240398](README.assets/image-20250410135240398.png) ### 试卷批阅 #### 查看待批阅试卷列表 对于管理员显示全部班级的试卷,对于教师显示任课班级的试卷列表 对于成绩颜色显示,得到总分90%以上为优秀,80%以上为良好,60%以上为及格,60%以下不及格 获取该试卷下所有已批阅试卷的分数得到平均分 ![image-20250419211151331](README.assets/image-20250419211151331.png) 教师用户: ![image-20250410135553539](README.assets/image-20250410135553539.png) #### 查看学生答卷列表 点击查看答卷按钮可以查看对应试卷的学生答卷列表 ![image-20250410135926365](README.assets/image-20250410135926365.png) #### 批阅学生答卷 点击查看批阅可以批阅学生的试卷,对于错误的题目用红色标出,可以批阅主观题和客观题,还可以添加评语(可以上传图片) ![image-20250410140709636](README.assets/image-20250410140709636.png) ![image-20250410140722710](README.assets/image-20250410140722710.png) #### AI辅助批阅 批阅模块加入AI批阅功能辅助教师批阅简答题。该功能用于弥补主观题无法自动批阅的不足。系统借助AI大模型智能分析学生答案与标准答案的不同,给出评分建议和批改意见。系统把题干、标准答案、学生答案以及分值等信息发送到AI大模型,返回评分建议和批改意见。用户可在AI辅助批阅窗口中点击AI辅助批阅按钮,得到AI给出的分数建议和分析评价。教师可以接受AI的建议直接应用得分或进行调整。 ![image-20250526095959708](README.assets/image-20250526095959708.png) ![image-20250526095942186](README.assets/image-20250526095942186.png) #### 删除学生答题记录 点击删除可以删除学生的答题记录,该学生可再次作答该试卷 ![image-20250410140555020](README.assets/image-20250410140555020.png) ![image-20250410140622786](README.assets/image-20250410140622786.png) #### 全部重批 点击全部重批按钮可以自动重批该试卷所有学生全部客观题(除简答题外自动批阅),适用于题库中答案错误,教师在修正题库中答案后一键重批试卷 ![image-20250410140408636](README.assets/image-20250410140408636.png) #### 试卷分析 ![image-20250419210816993](README.assets/image-20250419210816993.png) ![image-20250419210829558](README.assets/image-20250419210829558.png) ![image-20250419210848082](README.assets/image-20250419210848082.png) #### AI辅助试卷分析 试卷分析模块加入AI试卷分析功能。该功能深入分析试卷结构、题型分布、学生得分情况等数据,生成专业分析报告。系统会自动收集试卷基本信息、各题型统计数据、学生答题情况及得分分布等关键数据。系统优化数据格式,减少token消耗。系统会构建专业的提示词发送给AI大模型,返回的分析结果包含试卷总体评价、得分点分析、题型分析等多个维度。教师可在试卷分析页面的底部点击AI分析按钮,获取分析报告并据此调整教学策略、优化命题方向。 ![image-20250526095924935](README.assets/image-20250526095924935.png) #### 导出成绩 点击导出成绩按钮可以下载该试卷的学生考试情况,按分数从高到低排名 ![image-20250410135752918](README.assets/image-20250410135752918.png) ![image-20250410135827607](README.assets/image-20250410135827607.png) ## 成绩分析 ### 班级成绩分析 对于管理员用户显示全部启用状态的班级列表,对于教师用户显示其任课班级列表(启用状态的班级) ![image-20250418144150180](README.assets/image-20250418144150180.png) 基础分析分为题型分析,难度分析,章节分析。可以查看不同题型、不同难度、不同章节的题目得分率。 ![image-20250418144221923](README.assets/image-20250418144221923.png) 智能教学分析主要实现了两种较为简单的数据挖掘算法,简化版的K-means聚类算法和简化版关联规则挖掘算法。 简化版K-means聚类算法目的是发现得分率与题型、难度之间的关系模式。通过该算法可以发现哪些类型的题目学生掌握较好/较差,例如:"较差(0-45%)类簇中,单选题占比57.14%,难度3(中等难度)占比42.86%"等规律。 简化版关联规则挖掘算法目的是分析得分率与题型、难度、章节之间的关系。 ![image-20250418144417822](README.assets/image-20250418144417822.png) ![image-20250418144456556](README.assets/image-20250418144456556.png) ### 学生成绩分析 除了对班级进行分析还可以对班级内的学生进行分析 ![image-20250418144551340](README.assets/image-20250418144551340.png) ![image-20250418144905680](README.assets/image-20250418144905680.png) ![image-20250418144929572](README.assets/image-20250418144929572.png) ## 任务中心 ### 试卷列表 对于管理员用户测试可以参加全部班级的考试,对于学生用户,只能参加学生所属班级的考试(试卷列表只显示进行中或已结束状态的试卷),对于进行中的试卷可以答题和查看成绩,对于已结束状态的试卷只能查看成绩 ![image-20250410141127706](README.assets/image-20250410141127706.png) 学生用户:![image-20250410141349813](README.assets/image-20250410141349813.png) #### 答题 去后端获取学生答题情况,一个学生对某张试卷只能提交一次 ![image-20250410141517826](README.assets/image-20250410141517826.png) 实现了自动保存进度(5min一次),也可以手动进行保存进度,如果学生有答题进度则读入学生答题进度 ![image-20250410141741977](README.assets/image-20250410141741977.png) ![image-20250410141816290](README.assets/image-20250410141816290.png) 学生再次进入时获取学生考试进度: ![image-20250410141948048](README.assets/image-20250410141948048.png) 试卷提交后进行自动批阅客观题部分 ![image-20250410142039660](README.assets/image-20250410142039660.png) ![image-20250410142135350](README.assets/image-20250410142135350.png) #### 查看成绩 学生可以查看已批阅的试卷 ![image-20250410142316790](README.assets/image-20250410142316790.png) ![image-20250410142503075](README.assets/image-20250410142503075.png) ![image-20250410142817673](README.assets/image-20250410142817673.png) ### 错题巩固 类似教师的错题组卷,学生的错题巩固中随机选择的错题和手动选择错题都是从该学生自己的错题库中生成,并且生成试卷的所有信息不存入数据库,只供学生自我查漏补缺用。试卷提交后显示答案并自动批阅客观题部分。 ![image-20250410142840537](README.assets/image-20250410142840537.png) ![image-20250410143031723](README.assets/image-20250410143031723.png) ![image-20250410143216732](README.assets/image-20250410143216732.png) #### 模拟测试 ![image-20250410143046738](README.assets/image-20250410143046738.png) ![image-20250410143114666](README.assets/image-20250410143114666.png) # 系统设计 ## 用例图 ![image-20250419230158355](README.assets/image-20250419230158355.png) ### 离散数学课程的个性化练习组卷系统的顶层用例图 ![image-20250421171432025](README.assets/image-20250421171432025.png) ### 离散数学课程的个性化练习组卷系统学生用户用例图 ![image-20250421171528308](README.assets/image-20250421171528308.png) ### 离散数学课程的个性化练习组卷系统教师用户用例图 ![image-20250421171734464](README.assets/image-20250421171734464.png) ### 离散数学课程的个性化练习组卷系统管理员用户用例图 ![image-20250421171755820](README.assets/image-20250421171755820.png) ### 用例描述 (1)登录用例描述 用例名称:登录 执行者:学生、教师、管理员 前置条件:执行者为系统存在用户,已获取分配的用户名和密码。 后置条件:该用例若执行成功,用户进入对应角色的系统界面;反之,系统保持登录前状态。 主事件流: ① 进入登录界面,用例启动; ② 用户输入用户名和密码; ③ 用户点击登录按钮; ④ 系统验证用户名和密码的是否正确; ⑤ 验证通过,用户成功登录系统,进入首页。 备选事件流: ① 输入的用户名或密码错误,系统给出提示“用户不存在/密码错误”; ② 若用户名存在但密码错误,系统检查密码错误次数,若达到最大重试次数5次,则密码锁定10分钟; ③ 若用户输入验证码错误,系统给出提示“验证码错误”。 (2)查看首页用例描述 用例名称:查看首页 执行者:学生、教师、管理员 前置条件:用户成功登录系统。 后置条件:该用例若执行成功,用户进入系统首页;反之,系统保持原状态。 主事件流: ① 用户登录成功后,系统自动跳转至首页,用例启动; ② 系统加载并显示首页相关内容。 备选事件流: ① 若首页数据加载失败,系统提示“数据加载异常,请刷新页面”。 (3)查看个人中心用例描述 用例名称:查看个人中心 执行者:学生、教师、管理员 前置条件:用户成功登录系统。 后置条件:该用例若执行成功,用户进入个人中心;反之,系统保持原状态。 主事件流: ① 用户登录后,点击头像,再点击“个人中心”按钮,用例启动; ② 系统获取用户个人信息并展示。 备选事件流: ① 系统获取用户信息失败,给出对应提示。 (4)修改个人信息用例描述 用例名称:修改个人信息 执行者:学生、教师、管理员 前置条件:用户进入个人中心页面。 后置条件:该用例若执行成功,用户成功更新个人信息。反之,更新失败。 主事件流: ① 在个人中心查看个人基本资料,用例启动; ② 用户编辑可修改的信息; ③ 点击“提交”按钮; ④ 系统验证信息格式合法性; ⑤ 验证通过后更新数据库信息,提示“修改成功”。 备选事件流: ① 用户点击“关闭”按钮,系统回到上一个页面; ② 提交时遇到网络中断或数据不合法等问题,系统提示给出对应提示。 (5)修改密码用例描述 用例名称:修改密码 执行者:学生、教师、管理员 前置条件:用户进入个人中心页面。 后置条件:用户密码成功更新。 主事件流: ① 在个人中心进入“修改密码”页面,用例启动; ② 输入旧密码、新密码及确认新密码; ③ 点击“保存”按钮; ④ 系统验证原密码正确性及新密码一致性; ⑤ 验证通过后更新密码,提示 “密码修改成功”。 备选事件流: ① 原密码错误,系统提示 “修改密码失败,旧密码错误”; ② 新密码和确认密码不一致,系统提示“两次输入的密码不一致”; ③ 新密码和确认密码输入长度不符,系统提示“长度在 6 到 20 个字符”。 (6)查看学生试卷列表用例描述 用例名称:查看学生试卷列表 执行者:学生、管理员 前置条件:用户已成功登录系统,且存在其所属班级的试卷。 后置条件:该用例若执行成功,用户查看对应权限下的学生试卷列表;反之,系统保持原状态。 主事件流: ① 用户登录后,根据角色权限进入“试卷列表”页面,用例启动; ② 学生试卷列表显示其所属班级的“进行中”或“已结束”状态试卷,管理员试卷列表显示全部班级的“进行中”或“已结束”状态试卷; ③ 列表显示试卷名称、考试时长、开始时间、结束时间、题目数量、总分、状态等信息。 备选事件流: ① 试卷列表数据因权限不足等原因导致加载失败,系统给出对应提示。 (7)答题用例描述 用例名称:答题 执行者:学生、管理员 前置条件:用户在“任务中心”的“试卷列表”页面。 后置条件:该用例若执行成功,学生开始答题;反之,系统保持原状态。 主事件流: ① 用户点击“答题”按钮,用例启动,系统加载试卷题目; ② 用户开始作答; ③ 系统实时记录答题状态,每5分钟自动保存进度,也可手动点击“保存进度”按钮进行保存; ④ 用户完成作答后点击“提交试卷”完成作答。 备选事件流: ① 答题过程中网络中断,重新连接后系统自动加载最近保存的答题进度。 (8)提交试卷用例描述 用例名称:提交试卷 执行者:学生、管理员 前置条件:用户完成答题,处于答题页面。 后置条件:该用例若执行成功,试卷成功提交,系统自动批阅客观题;反之,提交失败。 主事件流: ① 用户点击“提交试卷”按钮,用例启动; ② 点击按钮后,系统提示“确定要提交试卷吗?提交后将无法继续修改。”; ③ 用户确认后,保存用户答题记录; ④ 系统自动批阅客观题(单选题、多选题、判断题、填空题); ⑤ 提交成功后,用户跳转到上一个页面。 备选事件流: ① 用户点击“取消”按钮,返回答题页面继续作答; ② 提交出现异常,系统给出对应提示。 (9)保存进度用例描述 用例名称:保存进度 执行者:学生、管理员 前置条件:用户正在答题,处于答题页面。 后置条件:该用例若执行成功,答题进度已保存;反之,进度未更新。 主事件流: ① 用户手动点击“保存进度”按钮,或系统每5分钟自动触发,用例启动; ② 系统收集当前答题状态; ③ 将进度数据存储至数据库。 备选事件流: ① 保存失败时系统给出对应提示。 (10)查看成绩用例描述 用例名称:查看成绩 执行者:学生、管理员 前置条件:试卷状态为“已结束”或“已批阅”,用户有权限访问该试卷。 后置条件:该用例若执行成功,显示试卷成绩及详情;反之,查看成绩失败。 主事件流: ① 用户在试卷列表中点击“查看成绩”按钮,用例启动; ② 系统跳转到查看成绩页面 备选事件流: ① 试卷未作答,系统提示“未找到答题记录,请先完成考试”; ② 试卷未批阅,系统提示“试卷暂未批阅,请等待教师批阅后查看”。 (11)查看所有题目答题详情用例描述 用例名称:查看所有题目答题详情 执行者:学生、教师 前置条件:用户进入查看成绩页面,且试卷状态为“已批阅”。 后置条件:该用例若执行成功,显示每道题目的答题详情;反之,系统保持原状态。 主事件流: ① 显示每道题目的答题详情; 备选事件流: ① 题目详情加载失败给出对应提示。 (12)错题巩固用例描述 用例名称:错题巩固 执行者:学生、管理员 前置条件:用户成功登录系统且具有相关权限。 后置条件:该用例若执行成功,用户进入错题巩固页面;反之,系统保持不变。 主事件流: ① 用户在菜单中选择“错题巩固”,用例启动; ② 设置试卷参数; ③ 用户选择“手动选择错题”或“自动随机选择错题”方式生成练习试卷; ④ 系统生成试卷预览内容; 备选事件流: ① 进入错题巩固页面,系统给出对应提示。 (13)手动选择错题用例描述 用例名称:手动选择错题 执行者:学生、管理员 前置条件:用户进入错题巩固页面,且存在可选择的错题。 后置条件:该用例若执行成功,用户选中的错题加入练习试卷;反之,未选中任何题目。 主事件流: ① 用户在错题巩固页面点击“选择错题”,用例启动; ② 系统显示可选择的错题列表,支持搜索和筛选; ③ 用户勾选需要加入试卷的错题,点击“确认选择”; ④ 系统将选中的错题添加到练习试卷的题目列表中。 备选事件流: 用户未勾选任何错题直接确认或所选题目数量不符合要求,系统提示“题目选择未完成”并给出当前选择和需要选择的详细信息。 (14)自动随机选择错题用例描述 用例名称:自动随机选择错题 执行者:学生、管理员 前置条件:用户进入错题巩固页面,且存在可随机选取的错题。 后置条件:该用例若执行成功,系统随机生成包含指定数量错题的练习试卷;反之,未生成试卷。 主事件流: ① 用户在错题巩固页面点击“自动随机选择错题”,用例启动; ② 系统根据用户设置参数从用户个人错题库中随机选择错题; ③ 生成试卷预览。 备选事件流: ① 随机选择题目数量超过题库可用题目时,选用全部题目。 (15)预览试卷用例描述 用例名称:预览试卷 执行者:学生、管理员 前置条件:用户在错题巩固或组卷过程中。 后置条件:该用例若执行成功,用户查看试卷完整内容;反之,未显示试卷详情。 主事件流: ① 用户在生成练习试卷或组卷页面点击“预览试卷”,用例启动; ② 系统显示试卷预览页面,包括试卷基础信息和题目列表 备选事件流: ① 没有填写试卷基础信息(必填项)时点击预览按钮,系统提示“请填写必填项”; (16)生成模拟测试用例描述 用例名称:生成模拟测试 执行者:学生、管理员 前置条件:用户在错题巩固页面完成错题选择或随机生成试卷。 后置条件:该用例若执行成功,生成可在本地答题的模拟测试试卷;反之,未生成模拟测试。 主事件流: ① 用户在错题巩固页面预览试卷后,点击“生成模拟测试”,用例启动; ② 系统根据选中的错题生成完整的模拟测试试卷; ③ 模拟测试试卷信息不存入数据库,仅临时生成供答题使用,交卷后显示客观题部分答案; 备选事件流: ① 生成模拟测试出现异常,系统给出对应提示信息; (17)班级管理用例描述 用例名称:班级管理 执行者:教师、管理员 前置条件:用户成功登录系统。 后置条件:该用例若执行成功,用户可对班级信息进行操作;反之,系统保持原状态。 主事件流: ① 用户在系统功能菜单中选择“班级管理”,用例启动; ② 系统加载班级列表; ③ 列表显示班级名称、任课教师、状态、备注等信息,支持新增、修改、删除、搜索、导出等操作。 备选事件流: ① 班级管理操作失败,系统给出对应提示。 (18)查看班级信息用例描述 用例名称:查看班级信息 执行者:教师、管理员 前置条件:用户登录,存在可查看的班级。 后置条件:该用例若执行成功,用户查看班级信息列表;反之,未显示班级列表。 主事件流: ① 用户进入班级管理页面,查看班级信息,用例启动。 备选事件流: ① 班级信息加载失败,系统给出提示。 (19)新增班级信息用例描述 用例名称:新增班级信息 执行者:教师、管理员 前置条件:用户进入班级管理页面。 后置条件:该用例若执行成功,新增班级;反之,新增失败。 主事件流: ① 用户点击“新增班级”,用例启动,进入新增表单页面; ② 填写必填信息(班级名称、任课教师),选填备注,状态默认“启用”; ③ 系统自动生成递增的班级ID,获取启用状态的教师列表供任课教师一栏选择; ④ 点击“确定”按钮,系统保存班级信息,提示“班级新增成功”。 备选事件流: ① 未填写“班级名称”或“任课教师”,系统提示“请填写必填信息”。 (20)修改班级信息用例描述 用例名称:修改班级信息 执行者:教师、管理员 前置条件:用户进入班级管理页面。 后置条件:该用例若执行成功,班级信息更新;反之,修改失败。 主事件流: ① 用户点击“修改”,用例启动,进入编辑表单页面; ② 可修改班级名称、任课教师(从启用状态教师中选择)、状态、备注; ③ 点击“保存”按钮,系统验证输入合法性,更新数据库信息,提示“班级信息修改成功”。 备选事件流: ① 未填写“班级名称”或“任课教师”,系统提示“请填写必填信息”。 (21)删除班级信息用例描述 用例名称:删除班级信息 执行者:教师、管理员 前置条件:用户在班级列表中选择待删除班级。 后置条件:该用例若执行成功,班级信息从系统中删除;反之,删除失败。 主事件流: ① 用户勾选单个班级或点击班级列表操作栏中的“删除”按钮,用例启动; ② 系统提示是否确认删除; ③ 用户确认后,系统检查班级是否关联学生或试卷等信息; ④ 无关联数据时,删除班级信息,提示“班级删除成功”。 备选事件流: ① 班级关联学生或试卷等信息时删除,系统提示“无法删除,有其他数据引用”。 (22)批量删除班级信息用例描述 用例名称:批量删除班级信息 执行者:教师、管理员 前置条件:用户在班级列表页面。 后置条件:该用例若执行成功,批量删除选中班级;反之,部分或全部删除失败。 主事件流: ① 用户勾选多个班级,点击班级列表上方的“删除”按钮,用例启动; ② 系统提示是否确认删除; ③ 用户确认后,系统逐行校验每个班级是否存在关联数据; ④ 对无关联数据的班级执行删除操作。 备选事件流: ① 班级关联学生或试卷等信息时删除,系统提示“无法删除,有其他数据引用”。 (23)导出班级信息列表用例描述 用例名称:导出班级信息列表 执行者:教师、管理员 前置条件:用户在班级管理页面。 后置条件:该用例若执行成功,下载班级信息Excel文件;反之,导出失败。 主事件流: ① 用户点击“导出”按钮,用例启动; ② 系统根据用户权限生成可导出的班级数据; ③ 生成Excel文件并触发浏览器下载,文件包含班级名称、任课教师等信息。 备选事件流: ① 导出失败,系统给出对应提示。 (24)搜索班级信息用例描述 用例名称:搜索班级信息 执行者:教师、管理员 前置条件:用户在班级管理页面的搜索栏输入关键词。 后置条件:该用例若执行成功,显示匹配的班级列表;反之,显示无结果。 主事件流: ① 用户在搜索框输入班级名称、任课教师姓名或选择班级状态,点击“搜索”按钮,用例启动; ② 系统根据输入内容匹配班级信息,支持多条件组合搜索; ③ 显示搜索结果列表。 备选事件流: ① 无匹配结果时提示“暂无数据”。 (25)学生信息管理用例描述 用例名称:学生信息管理 执行者:教师、管理员 前置条件:用户成功登录系统且具有相应权限。 后置条件:该用例若执行成功,用户可对学生信息进行操作;反之,系统保持原状态。 主事件流: ① 用户在系统功能菜单中选择“学生信息管理”,用例启动; ② 系统根据用户角色权限和用户ID加载学生列表,管理员显示全部学生信息,教师显示其任课班级的学生信息; ③ 列表显示学号、学生姓名、班级名称、联系电话、邮箱等信息,支持新增、修改、删除、搜索、导出等操作。 备选事件流: ① 学生管理操作失败,系统给出对应提示。 (26)查看学生信息用例描述 用例名称:查看学生信息 执行者:教师、管理员 前置条件:用户登录,存在可查看的学生信息。 后置条件:该用例若执行成功,用户查看学生信息列表;反之,未显示学生详情。 主事件流: ① 用户进入学生信息管理页面,查看学生信息列表,用例启动。 备选事件流: ① 学生信息加载失败,系统给出提示。 (27)新增学生信息用例描述 用例名称:新增学生信息 执行者:教师、管理员 前置条件:用户进入学生信息管理页面。 后置条件:该用例若执行成功,学生信息和账号同步新增;反之,新增失败。 主事件流: ① 用户点击“新增学生”,用例启动,进入新增表单页面; ② 填写必填项信息; ③ 系统校验表单; ④ 点击“确定”按钮,创建学生信息并同步创建学生账号,提示“学生新增成功”。 备选事件流: ① 未填写必填项,系统提示“必填项不能为空”。 (28)创建学生账号用例描述 用例名称:创建学生账号 执行者:教师、管理员 前置条件:用户在新增学生信息时同步触发。 后置条件:该用例若执行成功,学生账号同步生成;反之,账号未创建。 主事件流: ① 在“新增学生信息”流程中,系统自动触发创建学生账号,用例启动; ② 使用学生学号作为用户名、学生姓名作为用户昵称,使用默认密码“123456”,分配“学生”角色; ③ 创建学生账号。 备选事件流: ① 系统异常,系统给出提示。 (29)修改学生信息用例描述 用例名称:修改学生信息 执行者:教师、管理员 前置条件:用户进入学生信息管理页面。 后置条件:该用例若执行成功,学生信息更新;反之,修改失败。 主事件流: ① 用户点击“修改”,用例启动,进入编辑表单页面; ② 修改表单信息,可修改学号,学生姓名,所属班级,手机号码等信息; ③ 点击“保存”按钮,系统验证输入合法性,更新数据库信息,提示“学生信息修改成功”。 备选事件流: ① 未填写必填项,系统提示“请填写必填信息”。 (30)更改学生账号状态用例描述 用例名称:更改学生账号状态 执行者:教师、管理员 前置条件:用户在学生信息管理页面中。 后置条件:该用例若执行成功,学生账号状态更新;反之,状态未变更。 主事件流: ① 用户在修改学生信息流程中,点击启用或停用单选按钮,用例启动; ② 若账号切换为停用状态则该学生账号无法正常登录并取消学生角色,切换为启用状态后重新分配学生角色,可正常登录。 备选事件流: ① 学生账号状态切换失败,系统给出对应提示。 (31)删除学生信息用例描述 用例名称:删除学生信息 执行者:教师、管理员 前置条件:用户在学生列表中选择待删除学生。 后置条件:该用例若执行成功,学生信息和账号同步删除;反之,删除失败。 主事件流: ① 用户点击“删除”,用例启动; ② 系统提示是否确认删除; ③ 用户确认后,系统检查学生是否有未完成的考试或答题记录; ④ 无关联数据时,删除学生信息及其账号,提示“学生删除成功”。 备选事件流: ① 学生信息存在与其他数据关联时,系统提示“无法删除,有其他数据引用”。 (32)批量删除学生信息用例描述 用例名称:批量删除学生信息 执行者:教师、管理员 前置条件:用户在学生列表中勾选多个待删除学生。 后置条件:该用例若执行成功,批量删除选中学生;反之,部分或全部删除失败。 主事件流: ① 用户勾选多个学生,点击学生信息列表上方的“删除”按钮,用例启动; ② 系统提示是否确认删除; ③ 用户确认后,系统逐行校验每个学生是否存在关联数据; ④ 对无关联数据的学生执行删除操作。 备选事件流: ① 学生信息存在与其他数据关联时,系统提示“无法删除,有其他数据引用”。 (33)导出学生列表用例描述 用例名称:导出学生列表 执行者:教师、管理员 前置条件:用户在学生信息管理页面。 后置条件:该用例若执行成功,下载学生信息Excel文件;反之,导出失败。 主事件流: ① 用户点击“导出”,用例启动; ② 系统根据用户权限生成可导出的学生数据,管理员导出全部学生列表,教师导出任课班级下学生列表; ③ 生成Excel文件并触发浏览器下载,文件包含学号、学生姓名、班级等信息。 备选事件流: ① 导出失败,系统给出对应提示。 (34)下载导入学生信息模板用例描述 用例名称:下载导入学生信息模板 执行者:教师、管理员 前置条件:用户在学生信息管理页面。 后置条件:该用例若执行成功,下载Excel模板文件;反之,下载失败。 主事件流: ① 用户点击“下载模板”,用例启动; ② 系统提供Excel学生信息模板文件,包含学号、学生姓名等字段; ③ 触发浏览器下载,文件命名为“学生信息导入模板.xlsx”。 备选事件流: ① 下载失败,系统给出对应提示。 (35)导入学生信息用例描述 用例名称:导入学生信息 执行者:管理员 前置条件:用户根据模板文件准备好上传的Excel文件。 后置条件:该用例若执行成功,批量新增或更新学生信息;反之,导入失败。 主事件流: ① 用户点击“导入学生信息”,选择填写好的Excel文件,点击开始上传,用例启动; ② 批量新增学生信息。 备选事件流: ① 导入失败,系统给出相关提示。 (36)搜索学生信息用例描述 用例名称:搜索学生信息 执行者:教师、管理员 前置条件:用户在学生信息管理页面的搜索栏输入关键词。 后置条件:该用例若执行成功,显示匹配的学生列表;反之,显示无结果。 主事件流: ① 用户在搜索框输入学号、学生姓名或通过下拉框选择班级,点击“搜索”按钮,用例启动; ② 系统根据输入内容匹配学生信息,支持多条件组合搜索; ③ 显示搜索结果列表。 备选事件流: ① 无匹配结果时提示“暂无数据”。 (37)题库管理用例描述 用例名称:题库管理 执行者:教师、管理员 前置条件:用户成功登录系统,拥有题库管理权限。 后置条件:该用例若执行成功,用户可对题库进行管理;反之,系统保持原状态。 主事件流: ① 用户在系统功能菜单中选择“题库管理”,用例启动; ② 系统展示题库管理相关菜单。 备选事件流: ① 若用户无题库管理权限,系统给出提示。 (38)章节管理用例描述 用例名称:章节管理 执行者:教师、管理员 前置条件:用户点击进入“章节管理”菜单。 后置条件:该用例若执行成功,用户可对章节信息进行操作;反之,章节信息不变。 主事件流: ① 页面以树形结构展示章节层级,用户可展开或收缩章节; ② 用户点击“新增章节”,选择父章节并输入章节名称,点击“保存”; ③ 在章节列表的操作栏点击“修改”按钮,更新章节信息,点击“新增”在此章节下新增子章节或点击“删除”移除无题目关联的章节。 备选事件流: ① 章节管理操作失败,系统给出对应提示。 (39)搜索章节用例描述 用例名称:搜索章节 执行者:教师、管理员 前置条件:用户在章节管理页面的搜索栏输入关键词。 后置条件:该用例若执行成功,显示匹配的章节列表;反之,无结果。 主事件流: ① 用户输入章节名称,点击“搜索”按钮,用例启动; ② 系统匹配章节名称; ③ 显示搜索结果列表。 备选事件流: ① 无匹配结果时提示“暂无数据”。 (40)新增章节用例描述 用例名称:新增章节 执行者:教师、管理员 前置条件:用户在章节管理页面。 后置条件:该用例若执行成功,新章节添加至章节树;反之,新增失败。 主事件流: ① 在章节列表上方或章节列表的操作栏中,点击“新增”按钮,用例启动; ② 进入新增章节表单,用户输入章节名称,选择父章节和显示顺序,若在章节列表的操作栏中点击“新增”按钮则自动选择该章节作为新增章节的父章节; ③ 点击“确定”按钮后,提示“新增成功”,章节树更新。 备选事件流: ① 未填写章节名称,系统提示“请输入章节名称”。 (41)删除章节用例描述 用例名称:删除章节 执行者:教师、管理员 前置条件:用户在章节管理页面。 后置条件:该用例若执行成功,章节及其子章节被删除;反之,删除失败。 主事件流: ① 系统给出确认删除提示; ② 确认后系统检查章节下是否有题目等相关信息; ③ 若无其他数据关联,删除该章节及其子章节。 备选事件流: ① 章节存在与其他数据关联时,系统提示“无法删除,有其他数据引用”。 (42)修改章节用例描述 用例名称:修改章节 执行者:教师、管理员 前置条件:用户在章节管理页面。 后置条件:该用例若执行成功,章节信息更新;反之,未变更。 主事件流: ① 弹出编辑表单,用户可修改章节信息; ② 修改表单信息,可修改章节名称、父章节、显示顺序; ③ 点击“确定”,提示“章节修改成功”,章节树刷新。 备选事件流: ① 未填写必填项,系统提示“请填写必填信息”。 (43)查看题目列表用例描述 用例名称:查看题目列表 执行者:教师、管理员 前置条件:用户点击“题目列表”。 后置条件:该用例若执行成功,进入题目列表页面;反之,不发生页面跳转。 主事件流: ① 页面加载所有题目,默认按题目ID排序,显示题目类型、题干内容、所属章节、难度等信息; ② 用户可通过搜索栏选择题目类型、所属章节、难度搜索题目; ③ 用户可通过操作栏进行预览、修改、删除等操作。 备选事件流: ① 没有题目时显示“暂无数据”。 (44)搜索题目用例描述 用例名称:搜索题目 执行者:教师、管理员 前置条件:用户在题目列表页面的搜索栏输入关键词。 后置条件:该用例若执行成功,显示匹配的题目列表;反之,无结果。 主事件流: ① 用户选择题目类型、所属章节、难度,点击“搜索”按钮; ② 系统匹配题目信息; ③ 显示搜索结果。 备选事件流: ① 没有搜索到题目时显示“暂无数据”。 (45)修改题目用例描述 用例名称:修改题目 执行者:教师、管理员 前置条件:用户在题目列表页面。 后置条件:该用例若执行成功,题目信息更新;反之,修改失败。 主事件流: ① 进入对于题型创编页面; ② 用户可修改题干、答案、解析、所属章节、难度等信息 ③ 点击“提交”,系统验证表单内容,提示“题目修改成功”。 备选事件流: ① 修改题目信息失败,系统给出相应提示。 (46)删除题目用例描述 用例名称:删除题目 执行者:教师、管理员 前置条件:用户在题目列表页面。 后置条件:该用例若执行成功,题目从题库中移除;反之,删除失败。 主事件流: ① 系统给出对应提示; ② 系统检查题目是否与其他数据进行关联,如被试卷引用; ③ 无关联数据时,删除题目信息,提示“删除成功”。 备选事件流: ① 题目关联试卷等信息时进行删除,系统提示“无法删除,有其他数据引用”。 (47)批量删除题目用例描述 用例名称:批量删除题目 执行者:教师、管理员 前置条件:用户在题目列表中勾选多个待删除题目。 后置条件:该用例若执行成功,批量删除无关联数据的题目;反之,删除失败。 主事件流: ① 用户勾选多个题目,点击题目列表上方的“删除”按钮,用例启动; ② 系统提示是否确认删除; ③ 逐行校验题目是否关联试卷。 ④ 对无关联数据的题目执行删除操作。 备选事件流: ① 题目关联试卷等信息时进行删除,系统提示“无法删除,有其他数据引用”。 (48)单选题创编用例描述 用例名称:单选题创编 执行者:教师、管理员 前置条件:用户在题库管理中选择“单选题创编”。 后置条件:该用例若执行成功,新增或更新单选题至题库;反之,创编失败。 主事件流: ① 进入“单选题创编”页面,用例启动; ② 用户可在表单中输入题干信息并添加选项,设置正确答案、所属章节、难度、分值等信息; ③ 点击“提交”按钮,系统验证表单内容; ④ 单选题新增或修改成功。 备选事件流: ① 未填写必填项,系统提示“请填写必填信息”。 (49)多选题创编用例描述 用例名称:多选题创编 执行者:教师、管理员 前置条件:用户在题库管理中选择“多选题创编”。 后置条件:该用例若执行成功,新增或更新多选题至题库;反之,创编失败。 主事件流: ① 进入“多选题创编”页面,用例启动; ② 用户可在表单中输入题干信息并添加选项,设置正确答案、所属章节、难度、分值等信息; ③ 点击“提交”按钮,系统验证表单内容; ④ 多选题新增或修改成功。 备选事件流: ① 未填写必填项,系统提示“请填写必填信息”。 (50)判断题创编用例描述 用例名称:判断题创编 执行者:教师、管理员 前置条件:用户在题库管理中选择“判断题创编”。 后置条件:该用例若执行成功,新增或更新判断题至题库;反之,创编失败。 主事件流: ① 进入“判断题创编”页面,用例启动; ② 用户可在表单中输入题干信息,设置正确答案、所属章节、难度、分值等信息; ③ 点击“提交”按钮,系统验证表单内容; ④ 判断题新增或修改成功。 备选事件流: ① 未填写必填项,系统提示“请填写必填信息”。 (51)填空题创编用例描述 用例名称:填空题创编 执行者:教师、管理员 前置条件:用户在题库管理中选择“填空题创编”。 后置条件:该用例若执行成功,新增或更新填空题至题库;反之,创编失败。 主事件流: ① 进入“填空题创编”页面,用例启动; ② 用户可在表单中输入题干(用“________”表示填空处,最多8个空),设置填空答案(系统自动根据题干中空的数量设置对应答案的数量)、所属章节、难度、分值等信息并且可为每个空设置答案; ③ 点击“提交”按钮,系统验证空数与答案数量匹配; ④ 填空题新增或修改成功。 备选事件流: ① 未填写必填项,系统提示“请填写必填信息”; (52)简答题创编用例描述 用例名称:简答题创编 执行者:教师、管理员 前置条件:用户在题库管理中选择“简答题创编”。 后置条件:该用例若执行成功,新增或更新简答题至题库;反之,创编失败。 主事件流: ① 进入“简答题创编”页面,用例启动; ② 用户可在表单中输入题干信息,设置正确答案、所属章节、难度、分值等信息; ③ 点击“提交”按钮,系统验证表单内容; ④ 简答题新增或修改成功。 备选事件流: ① 未填写必填项,系统提示“请填写必填信息”。 (53)添加选项用例描述 用例名称:添加选项 执行者:教师、管理员 前置条件:用户在创编单选题或多选题。 后置条件:该用例若执行成功,选项添加至题目;反之,未新增。 主事件流: ① 用户点击“添加选项”按钮,用例启动; ② 新增一个空白选项。单选题最多添加6个选项,多选题最多添加9个选项,达上限后按钮消失。 备选事件流: ① 添加选项失败,系统给出对应提示。 (54)添加同义答案用例描述 用例名称:添加同义答案 执行者:教师、管理员 前置条件:用户在填空题创编页面。 后置条件:该用例若执行成功,为填空题答案添加同义答案;反之,添加失败。 主事件流: ① 用户点击“添加同义答案”按钮,用例启动; ② 添加一个空用来填写该空的同义答案。 备选事件流: ① 添加同义答案失败,系统给出对应提示。 (55)预览题目用例描述 用例名称:预览题目 执行者:教师、管理员 前置条件:用户在题目创编页面、题目列表或选择题目窗口中点击“预览”按钮。 后置条件:该用例若执行成功,显示题目预览内容;反之,预览失败。 主事件流: ① 用户点击“预览”按钮,用例启动; ② 弹出预览窗口预览题目。 备选事件流: ① 预览失败,系统给出对应提示。 (56)试卷管理用例描述 用例名称:试卷管理 执行者:教师、管理员 前置条件:用户成功登录系统并具有相应权限。 后置条件:该用例若执行成功,用户可对试卷进行管理;反之,系统保持原状态。 主事件流: ① 用户在系统功能菜单中选择“试卷管理”,用例启动; ② 可以进行自动组卷、手动组卷、错题组卷、查看试卷列表、试卷批阅等操作 备选事件流: ① 若用户无相应权限,系统给出提示信息。 (57)更改试卷状态用例描述 用例名称:更改试卷状态 执行者:教师、管理员 前置条件:用户在试卷列表中选择待操作的试卷,点击状态切换按钮。 后置条件:该用例若执行成功,试卷状态更新;反之,状态未变更。 主事件流: ① 对于草稿状态试卷,用户点击“发布”,系统校验信息,状态变更为“进行中”; ② 对于进行中状态试卷,用户点击“下架”,状态变更为“草稿”; ③ 进行中状态试卷到达结束时间,系统自动变更为“已结束”。 备选事件流: ① 更改试卷状态失败,系统给出对应提示。 (58)搜索试卷用例描述 用例名称:搜索试卷 执行者:教师、管理员 前置条件:用户在试卷管理页面的搜索栏输入关键词。 后置条件:该用例若执行成功,显示匹配的试卷列表;反之,显示无结果。 主事件流: ① 用户输入试卷名称等信息,点击“搜索”按钮,用例启动; ② 系统匹配符合条件的试卷; ③ 显示试卷列表。 备选事件流: ① 无匹配结果时提示“暂无数据”。 (59)查看试卷列表用例描述 用例名称:查看试卷列表 执行者:教师、管理员 前置条件:用户进入试卷管理菜单。 后置条件:该用例若执行成功,显示对应权限的试卷列表;反之,未显示试卷。 主事件流: ① 系统根据用户角色加载试卷, 管理员:显示全部班级的所有状态试卷, 教师:显示任课班级的试卷; ② 列表支持分页查看,显示试卷基本信息及操作按钮。 备选事件流: ① 没有试卷数据时显示“暂无数据”。 (60)删除试卷用例描述 用例名称:删除试卷 执行者:教师、管理员 前置条件:用户在试卷列表中选择待删除的试卷。 后置条件:该用例若执行成功,试卷及关联数据删除;反之,删除失败。 主事件流: ① 用户勾选单个试卷或点击试卷列表操作栏中的“删除”按钮,用例启动; ② 系统提示是否确认删除; ③ 检查试卷状态,草稿和已结束状态可删除,进行中状态不可删除; ④ 删除与试卷相关的答题记录、考试进度等信息并给出提示“试卷删除成功”。 备选事件流: ① 试卷删除失败,系统给出提示信息。 (61)批量删除试卷用例描述 用例名称:批量删除试卷 执行者:教师、管理员 前置条件:用户登录且具有操作权限。 后置条件:该用例若执行成功,批量删除符合条件的试卷;反之,删除失败。 主事件流: ① 用户在试卷列表中勾选多个待删除的试卷,点击试卷列表上方“删除”按钮,用例启动; ② 逐行校验试卷信息; ③ 删除与试卷相关的答题记录、考试进度等信息并给出提示“试卷删除成功”。 备选事件流: ① 试卷删除失败,系统给出提示信息。 (62)手动组卷用例描述 用例名称:手动组卷 执行者:教师、管理员 前置条件:用户在试卷管理页面点击“手动组卷”,进入组卷流程。 后置条件:该用例若执行成功,生成手动组卷的试卷草稿;反之,组卷失败。 主事件流: ① 用户设置试卷基本信息,选择题目分数设置方式; ② 在选题窗口按章节、题型筛选题目,支持预览题目并添加至试卷; ③ 确认选题后,点击“预览”预览试卷,然后点击确认并创建按钮创建试卷,试卷状态为草稿状态并提示“组卷成功”。 备选事件流: ① 选择题目数量与设置不符时,系统给出提示。 (63)自动组卷用例描述 用例名称:自动组卷 执行者:教师、管理员 前置条件:用户在试卷管理页面点击“自动组卷”,设置组卷参数。 后置条件:该用例若执行成功,按规则生成自动组卷的试卷;反之,组卷失败。 主事件流: ① 用户设置试卷基本信息,选择题目分数设置方式,然后设置章节范围、难度范围、题型数量等信息; ② 系统从题库中随机抽取符合条件的题目; ③ 点击“预览”预览试卷,然后点击确认并创建按钮创建试卷,试卷状态为草稿状态并提示“组卷成功”。 备选事件流: ① 题库中符合条件的题目数量不足,默认选择全部符合要求的题目进行组卷。 (64)错题组卷用例描述 用例名称:错题组卷 执行者:教师、管理员 前置条件:用户在试卷管理页面点击“错题组卷”。 后置条件:该用例若执行成功,生成包含错题的试卷;反之,组卷失败。 主事件流: ① 用户设置试卷基本信息,选择题目分数设置方式; ② 从错题选择窗口中选择要完成组卷的错题; ③ 点击“预览”预览试卷,然后点击确认并创建按钮创建试卷,试卷状态为草稿状态并提示“组卷成功”。 备选事件流: ① 无错题记录,显示“暂无数据”。 (65)试卷批阅用例描述 用例名称:试卷批阅 执行者:教师、管理员 前置条件:用户在试卷管理页面点击“试卷批阅”。 后置条件:该用例若执行成功,完成学生答卷批阅;反之,批阅未保存。 主事件流: ① 用户查看待批阅试卷列表,点击“查看答卷”进入学生答题详情; ② 用户查看客观题系统自动批阅的情况,手动批阅主观题部分,支持添加评语; ③ 错误题目用红色标出,点击“提交批阅”提交批阅结果,更新学生成绩。 备选事件流: ① 提交批阅失败,系统给出对应提示。 (66)查看批阅试卷列表用例描述 用例名称:查看批阅试卷列表 执行者:教师、管理员 前置条件:用户进入试卷批阅模块。 后置条件:该用例若执行成功,显示已批阅和待批阅的试卷列表;反之,未显示列表。 主事件流: ① 系统显示批阅试卷列表; ② 点击“查看答卷”进入学生答题详情。 备选事件流: ① 试卷列表没有数据,显示“暂无数据”。 (67)查看学生答卷列表用例描述 用例名称:查看学生答卷列表 执行者:教师、管理员 前置条件:用户在试卷批阅页面点击“查看答卷”。 后置条件:该用例若执行成功,显示学生答卷列表;反之,未显示。 主事件流: ① 显示学生答卷列表。 备选事件流: ① 学生答卷列表为空,显示“暂无数据”。 (68)批阅答卷用例描述 用例名称:批阅答卷 执行者:教师、管理员 前置条件:用户在学生答卷详情页,进入主观题评分界面。 后置条件:该用例若执行成功,保存主观题评分;反之,评分未生效。 主事件流: ① 显示题目信息以及学生答案和参考答案,用户输入评分(不超过题目分值); ② 支持输入文字或上传图片作为评语; ③ 点击“提交批阅”,提示批阅成功。 备选事件流: ① 提交批阅失败,系统给出对应提示。 (69)删除学生答题记录用例描述 用例名称:删除学生答题记录 执行者:教师、管理员 前置条件:用户在学生答卷列表点击“删除”按钮。 后置条件:该用例若执行成功,学生在该试卷的答题记录删除;反之,记录未删除。 主事件流: ① 系统给出是否确认提示; ② 系统提示“答题记录删除成功”,学生可重新作答该试卷。 备选事件流: ① 删除失败系统给出对应提示。 (72)导出成绩用例描述 用例名称:导出成绩 执行者:教师、管理员 前置条件:用户在试卷批阅页面点击“导出成绩”按钮。 后置条件:该用例若执行成功,下载学生成绩Excel文件;反之,导出失败。 主事件流: ① 系统生成Excel文件,包含学生姓名、学号、班级、总分、排名等信息; ② 触发浏览器下载; ③ 提示“成绩导出成功”。 备选事件流: ① 导出失败系统给出对应提示。 (75)全部重批用例描述 用例名称:全部重批 执行者:教师、管理员 前置条件:用户在试卷批阅页面点击“全部重批”按钮。 后置条件:该用例若执行成功,重新批阅该试卷所有学生的客观题;反之,重批失败。 主事件流: ① 系统提示“确认要对试卷进行全部重批操作吗?这将重新评阅所有客观题。”; ② 用户确认后遍历该试卷所有学生答卷,根据最新题库答案重新计算客观题得分; ③ 完成后给出相应提示。 备选事件流: ① 全部重批失败,系统给出提示。 (76)试卷分析用例描述 用例名称:试卷分析 执行者:教师、管理员 前置条件:用户在试卷管理页面点击“试卷分析”,选择已结束或已批阅的试卷。 后置条件:该用例若执行成功,显示多维度分析结果;反之,分析数据加载失败。 主事件流: ① 加载分析数据,展示该试卷分析页面。 备选事件流: ① 没有已批阅试卷,系统给出提示无法进行试卷分析。 (77)成绩分析用例描述 用例名称:成绩分析 执行者:教师、管理员 前置条件:用户成功登录系统,进入成绩分析模块。 后置条件:该用例若执行成功,显示多维度成绩分析结果;反之,分析页面加载失败。 主事件流: ① 用户在菜单中选择“成绩分析”,用例启动; ② 系统提供“班级成绩分析”和“学生成绩分析”两个子模块,用户可按需选择; 备选事件流: ① 无成绩数据可分析,系统给出提示。 (78)班级成绩分析用例描述 用例名称:班级成绩分析 执行者:教师、管理员 前置条件:用户在成绩分析模块选择“成绩分析”,并选择目标班级。 后置条件:该用例若执行成功,显示班级成绩统计与分析报告;反之,未显示。 主事件流: ① 用户选择目标班级点击“成绩分析”按钮(管理员可选择全部班级,教师仅可选任课班级),用例启动; ② 展示该班级成绩分析页面。 备选事件流: ① 无成绩数据可分析,系统给出提示。 (79)学生成绩分析用例描述 用例名称:学生成绩分析 执行者:教师、管理员 前置条件:用户在成绩分析模块进入某一班级列表,选择某一学生。 后置条件:该用例若执行成功,显示单个学生的成绩分析;反之,未显示。 主事件流: ① 用户选择目标学生点击“成绩分析”按钮,用例启动; ② 展示该学生成绩分析页面。 备选事件流: ① 无成绩数据可分析,系统给出提示。 (80)教师信息管理用例描述 用例名称:教师信息管理 执行者:管理员 前置条件:用户成功登录系统并且角色是管理员。 后置条件:该用例若执行成功,用户可对教师信息进行操作;反之,系统保持原状态。 主事件流: ① 用户在系统功能菜单中选择“教师信息管理”,用例启动; ② 系统加载教师列表; ③ 支持对教师信息进行搜索、新增、删除、修改等操作。 备选事件流: ① 教师管理操作失败,系统给出对应提示。 (81)查看教师信息用例描述 用例名称:查看教师信息 执行者:管理员 前置条件:用户登录并且角色是管理员,存在可查看的教师信息。 后置条件:该用例若执行成功,用户查看教师信息列表;反之,未显示详情。 主事件流: ① 用户进入教师信息管理页面,查看教师信息列表,用例启动。 备选事件流: ① 教师信息加载失败,系统给出提示。 (82)新增教师信息用例描述 用例名称:新增教师信息 执行者:管理员 前置条件:用户进入教师信息管理页面。。 后置条件:该用例若执行成功,教师信息和账号同步新增;反之,新增失败。 主事件流: ① 用户点击“新增教师”,用例启动,进入新增表单页面; ② 填写必填项信息; ③ 系统校验表单; ④ 点击“确定”按钮,创建教师信息并同步创建教师账号,提示“教师新增成功”。 备选事件流: ① 未填写必填项,系统提示“必填项不能为空”。 (83)创建教师账号用例描述 用例名称:创建教师账号 执行者:管理员 前置条件:用户在新增教师信息时同步触发。 后置条件:该用例若执行成功,教师账号同步生成;反之,账号未创建。 主事件流: ① 在“新增教师信息”流程中,系统自动触发创建教师账号,用例启动; ② 使用教师工号作为用户名、教师姓名作为用户昵称,使用默认密码“123456”,分配“教师”角色; ③ 创建教师账号。 备选事件流: ① 系统异常,系统给出提示。 (84)修改教师信息用例描述 用例名称:修改教师信息 执行者:管理员 前置条件:用户进入教师信息管理页面。 后置条件:该用例若执行成功,教师信息更新;反之,修改失败。 主事件流: ① 用户点击“修改”,用例启动,进入编辑表单页面; ② 修改表单信息; ③ 点击“保存”按钮,系统验证合法性并更新数据库,提示“教师信息修改成功”。 备选事件流: ① 未填写必填项,系统提示“请填写必填信息”。 (85)更改教师账号状态用例描述 用例名称:更改教师账号状态 执行者:管理员 前置条件:用户在教师信息管理页面中。 后置条件:该用例若执行成功,教师账号状态更新;反之,状态未变更。 主事件流: ① 用户在修改教师信息流程中,点击启用或停用单选按钮,用例启动; ② 若账号切换为停用状态则该教师账号无法正常登录并取消教师角色,切换为启用状态后重新分配教师角色,可正常登录。 备选事件流: ① 教师账号状态切换失败,系统给出对应提示。 (87)批量删除教师信息用例描述 用例名称:批量删除教师信息 执行者:管理员 前置条件:用户在教师列表中勾选多个待删除教师。 后置条件:该用例若执行成功,批量删除选中教师;反之,全部删除失败。 主事件流: ① 用户勾选多个教师,点击教师信息列表上方的“删除”按钮,用例启动; ② 系统提示是否确认删除; ③ 用户确认后,系统逐行校验每个教师是否存在关联数据; ④ 对无关联数据的教师执行删除操作。 备选事件流: ① 教师信息存在与其他数据关联时,系统提示“无法删除,有其他数据引用”。 (88)导出教师列表用例描述 用例名称:导出教师列表 执行者:管理员 前置条件:用户在教师信息管理页面。 后置条件:该用例若执行成功,下载教师信息Excel文件;反之,导出失败。 主事件流: ① 用户点击“导出”,用例启动; ② 系统根据用户权限生成可导出的教师数据,管理员导出全部教师列表,教师导出任课班级下教师列表; ③ 生成Excel文件并触发浏览器下载,文件包含工号、教师姓名等信息。 备选事件流: ① 导出失败,系统给出对应提示。 ## ER图 ![image-20250520111327651](README.assets/image-20250520111327651.png) ## 系统功能模块图 ![系统功能模块图 (4)](README.assets/系统功能模块图 (4).png) ![image-20250520111337983](README.assets/image-20250520111337983.png) ![image-20250520111347034](README.assets/image-20250520111347034.png) ![image-20250424204706911](README.assets/image-20250424204706911.png) ![image-20250424204714782](README.assets/image-20250424204714782.png) ![image-20250520111421107](README.assets/image-20250520111421107.png) ![image-20250520111432594](README.assets/image-20250520111432594.png)