本次期末项目采用以下技术,其中又分为前端部分和后端部分
- Spring + SpringMVC + MyBatis
- Apache POI(处理word,excel)
- pageHelper(处理分页)
- JUnit(用于单元测试)
- layUI
- jQuery
- Axios
项目协作的部分使用 git,使用 gitee 作为代码仓库。在使用 git 作为多人协作会可能出现以下的问题,一个是不会用,另一个是会用之后,不知该如何去合并。
gitee 账号创建完成之后,需要配置 SSH,SSH 的配置可以参考下面的链接。
clone 之后配置好项目,访问这个页面 http://localhost:8080/ssm_online_exam/test/demo ,能访问到就说明配置成功了。
1、首先获取项目:
git clone https://gitee.com/bestguo2020/ssm_online_exam.git
2、获取项目完成创建你的工作区(注意,xxx 为你的工作区名),创建完成之后就可以对你的工作区进行操作了
git checkout -b XXXX
3、将 master 工作区的代码合并到你的工作区中
git merge master
合并完成之后就可以开始写代码了
4、假如你不想写了,需要对你写过的代码进行提交,在提交代码时需要交代清楚你需要做了哪些工作,也就是xxxx里的内容需要填写的部分。
git add .
git commit -m "xxxxxx"
5、切换到 master 工作区
git checkout master
6、将你的工作区合并到 master 工作区(XXX 代表你的工作区)
git merge XXXX
7、推送到远程仓库之前,将 gitee 上的远程代码拉取下来
git pull origin master
8、开始推送,同时也需要将你的工作区推到 git(XXX 代表你的工作区)
git push origin master
git push origin XXX
1、首先获取最新的项目(XXX 代表你的工作区):
git pull origin master
git pull origin XXX
2、切换到你的工作区
git checkout XXX
3、重复上一节的 3~6 步骤
4、推送到远程仓库之前,再将 gitee 上的远程代码拉取下来
git pull origin master
git pull origin XXX
5、重复上一节的 8 步骤
在进行协作的时候,可能会出现代码冲突等等问题,后续出现了问题就在此进行记录吧
本次期末项目分析了一下此次的用例描述,还画出的对应的用例图。
在线考试系统中,学生和教师需要进行登录方可进入考试系统。教师可以将自己的题目上传到系统,形成自己的题库,可以发布考题进行线上考核,同时也可以生成试卷进行线下考核,但是线下考核的分数需要人工来进行判定。考试结束之后,系统会自动计算每个学生的考试成绩,成绩计算完成之后,教师可以查询学生的考试情况,也可以将线上考试成绩进行导出。
学生在登录进入考试系统参加考试,在参加考试之前需要加入班级并选择一个班级,待老师发布考题,在规定的时间开始才能开始考试,考试结束之后,学生可以查看考试成绩,也可以不看,等老师将成绩公布出来也行。如果学生加错了班级或者想退出班级,可以直接退出该班级。
管理员除了拥有教师的全部功能,还可以管理教师信息、学生信息和班级信息。
本次在线考试系统的系统用例图如下(越画越离谱)
在线考试参与者说明如下
参与者名称 | 描述 | 同义词 |
---|---|---|
学生 | 使用该系统进行考试 | 考生 |
教师 | 使用该系统组织学生考试、管理学生和题库 | |
管理员 | 对本系统的数据进行管理 | |
文档生成系统 | 为该系统提供成绩导出,试卷生成的外部接口 | |
时间 | 习惯用法,启动需要系统自动执行的用例 |
在线考试用例如下
用例名称 | 描述 | 同义词 |
---|---|---|
注册 | 完成系统的注册业务 | |
登录 | 登陆系统 | |
管理班级 | 对班级进行增删改查 | |
管理教师信息 | 对教师信息进行增删改查 | |
管理学生信息 | 对学生信息进行增删改查 | 管理考生信息 |
管理题库 | 对题库中的题目进行增删改查 | 管理题目 |
查询成绩 | 查询考试的成绩 | |
管理试卷 | 对试卷进行增删改查 | |
试卷生成 | 通过外部接口将试卷导出到 word 文档 | |
导出成绩 | 通过外部接口将考试成绩导出到 excel 文档 | |
加入班级 | 通过加课码的方式来加入班级 | |
退出班级 | 退出所在的班级 | |
选择班级 | 选择一个班级参加考试 | |
参加考试 | 在规定的时间内完成考试 | |
考试计时 | 对考试的时间计时 | |
自动保存答案 | 系统会不定时将答案上传到系统,防止误操作丢失 |
这里把最核心部分的用例,使用用例文档的方式给描述出来。有什么不足之处欢迎指出。
”登录“ 用例文档
用例名称 | 登录 |
简要说明 | 登录到考试系统 |
参与者 | 教师、学生、管理员 |
涉众 | 教师、学生、管理员、各学校、各培训机构 |
扩展点 | 无 |
前置条件 | 学生和教师需要先注册账号 |
后置条件 | 无 |
基本事件流 |
|
备选事件流 |
|
“管理试卷”用例文档
用例名称 | 管理试卷 |
简要说明 | 对试卷进行管理,同时对试卷的题目进行检查 |
参与者 | 教师、管理员 |
涉众 | 教师、管理员、各学校、各培训机构 |
扩展点 | 试卷生成 |
前置条件 | 教师和管理员成功登录到本系统 |
后置条件 | 无 |
基本事件流 |
|
备选事件流 |
|
”参加考试“ 用例文档
用例名称 | 参加考试 |
简要说明 | 学生参加考试 |
参与者 | 学生 |
涉众 | 学生、考生、学员、学校 |
扩展点 | 成绩查询 |
前置条件 | 学生成功登录到本系统,选择班级 |
后置条件 | 学生的答案会被记录到系统中 |
基本事件流 |
|
备选事件流 |
|
该系统中的数据库表和表之间的关系,以及单个表中的字段和属性