用户故事 —— 学生端
用户注册
- 页面显示邮箱输入框、密码输入框和再次输入密码框以及密码组成要求
- 用户输入邮箱
- 如果用户输入的邮箱不合法,提示用户邮箱错误
- 用户第一遍输入密码
- 如果用户输入的密码不符合提示的组成要求,提示用户重新输入密码
- 用户第二遍输入密码
- 如果本次输入的密码和第一遍输入的密码不同,提示用户两次密码不一致
- 用户点击注册按钮
- 提示用户注册成功,进入OJ主页
用户登录
- 页面显示用户id 输入框和密码输入框
- 用户输入id 和密码
- 用户点击登录
- 如果id 不存在导致登录失败,提示用户名不存在
- 如果密码错误导致登录失败,提示密码错误
- 登录成功进入OJ主页
查看课程通知
- 用户进入OJ 主页
- 用户点击通知公告中的通知
- 进入通知公告列表页面
- 用户点击列表中未读消息
- 用户进入消息详情页面查看消息
- 用户离开消息详情页
- 通知公告列表中的消息状态更改为已读
进行课后练习
- 用户进入 OJ 主页,点击题库
- 页面显示题目列表、题库更新公告和用户个人学习记录
- 用户点击题目id 或题目名称
- 进入做题页面,页面显示题目详情及答题区域
- 用户在答题区域答题
- 用户点击提交进入提交结果页面查看提交结果
在论坛发表观点
- 用户进入 OJ 主页,点击题库
- 页面显示题目列表、题库更新公告和用户个人学习记录
- 用户点击题目id 或题目名称
- 进入做题页面,页面显示题目详情及答题区域
- 用户在答题区域答题
- 用户点击进入论坛进入论坛页面
- 页面显示题目详情、用户发言区以及其他用户留言区
- 用户在发言区文本框中输入发言内容
- 用户点击选择标签
- 用户点击发表观点完成发言
- 用户发言按照时间顺序显示在留言区
在论坛回复留言
- 用户进入 OJ 主页,点击题库
- 页面显示题目列表、题库更新公告和用户个人学习记录
- 用户点击题目id 或题目名称
- 进入做题页面,页面显示题目详情及答题区域
- 用户在答题区域答题
- 用户点击进入论坛进入论坛页面
- 页面显示题目详情、用户发言区以及其他用户留言区
- 用户浏览留言区留言选择想要回复的留言
- 用户点击选择留言下的回复按钮
- 用户输入回复消息并点击发表完成互动
查看题库更新通知
- 用户进入 OJ 主页,点击题库
- 页面显示题目列表、题库更新公告和用户个人学习记录
- 用户点击题库更新公告中的公告链接
- 进入题库更新通知列表页面,页面显示更新的题目id 、名称以及更新类型
- 用户点击题目id 或 题目名称进入答题页查看题目更新
- 用户离开答题页
- 题库更新通知列表中的通知状态更改为已读
查看所选课程列表
- 用户进入OJ主页,点击课程
- 页面显示用户所选课程列表
查看一门课程的简介
- 用户进入OJ主页,点击课程
- 页面显示用户所选课程列表
- 用户点击一门课程,进入课程详情页面
- 页面显示课程简介,包括任课教师,开课时间等
查看一门课程的作业列表
- 用户进入OJ主页,点击课程
- 页面显示用户所选课程列表
- 用户点击一门课程,进入课程详情页面
- 页面显示课程简介,包括任课教师,开课时间等
- 用户点击侧边栏课程作业选项
- 页面显示该门课程作业列表
查看历史提交作业
- 用户进入课程作业列表页
- 页面显示该门课程作业列表,作业列表中每个作业显示截止时间、提交状态等信息
- 用户选择提交状态为已完成并且剩余时间为0天0时0分的作业,点击进入作业详情页
- 页面显示作业描述、练习题链接、附加答题框、上传附件列表
- 页面上传附件按钮和提交按钮均为不可用状态
- 用户点击练习题链接查看答题结果
- 用户查看附加答案框中的附加答案
- 用户点击附件列表中的附件查看附件内容
提交作业
- 用户进入课程作业列表页
- 页面显示该门课程作业列表,作业列表中每个作业显示截止时间、提交状态等信息
- 用户选择提交状态为未完成并且剩余时间不为0天0时0分的作业,点击进入作业详情页
- 页面显示作业描述、练习题链接、附加答题框、上传附件列表、上传附件按钮和提交按钮
- 用户点击练习题链接进入答题界面
- 用户在答题界面答题并提交结果
- 用户返回作业详情页
- 页面显示已提交练习题分数
- 用户在附加答案框中输入附加答案
- 用户点击上传附件按钮
- 页面弹出选择文件的对话框
- 用户选择要上传的文件开始上传
- 用户点击提交按钮完成附加作业提交
查看一门课程的考试列表
- 用户进入OJ主页,点击课程
- 页面显示用户所选课程列表
- 用户点击一门课程,进入课程详情页面
- 页面显示课程简介,包括任课教师,开课时间等
- 用户点击侧边栏课程考试选项
- 页面显示该门课程考试列表
用户查看历史考试
- 在上一步的环境下,用户进入课程考试列表页
- 页面显示该门课程考试列表,考试列表中每个考试显示起止时间、考试状态等信息
- 用户选择考试状态为已完成的考试,点击进入考试结果页
- 页面显示考试基本信息描述、考题链接,每个考题链接对应一个提交结果链接
- 每个考题的提交答案按钮为不可用状态
- 用户点击考题进入考题详情页
- 页面显示考题描述和答题区域【页面提交按钮为不可用状态】
- 用户点击考题后的提交结果链接查看考试提交结果
- 页面显示用户考试过程中提交的答案列表、附加答案和上传附件列表
- 用户点击答案列表中的源代码链接查看每次提交的源代码
- 用户查看附加答案框中的内容
- 用户点击附件列表中的附件查看附件内容
参加考试
- 用户进入课程考试列表页
- 页面显示该门课程考试列表,考试列表中每个考试显示起止时间、考试状态等信息
- 用户选择考试状态为正在进行的考试,点击进入考试详情页
- 页面显示考试基本信息描述、考题链接
- 用户点击考题链接进入答题界面
- 用户在答题界面答题并提交结果
- 用户返回考试详情页
- 页面显示已提交考题分数
- 用户点击每道考题后对应的提交答案按钮
- 页面显示用户已提交答案列表、附加答案输入框和附件上传按钮
- 用户在答案列表中选择一个作为本题的最终答案
- 用户在附加答案输入框中输入附加答案
- 用户点击上传附件按钮
- 页面显示文件选择对话框
- 用户选择要上传的文件开始上传
- 用户点击提交答案按钮完成本考题结果提交
查看一门课程的课程资源
- 用户进入OJ主页,点击课程
- 页面显示用户所选课程列表
- 用户点击一门课程,进入课程详情页面
- 页面显示课程简介,包括任课教师,开课时间等
- 用户点击侧边栏课程资源选项
- 页面显示该门课程的课程资源链接列表
查看个人基本信息
- 用户进入OJ主页,点击标识个人信息的图标
- 进入个人信息页,页面显示用户id、用户身份等基本信息
查看课程通知
- 用户进入OJ主页,点击标识个人信息的图标
- 进入个人信息页,页面显示用户id、用户身份等基本信息
- 点击页面中通知公告按钮进入通知公告列表页面
- 用户点击列表中未读消息
- 用户进入消息详情页面查看消息
- 用户离开消息详情页
- 通知公告列表中的消息状态更改为已读
查看学习记录
- 用户进入OJ主页,点击标识个人信息的图标
- 进入个人信息页,页面显示用户id、用户身份等基本信息
- 点击页面中的学习记录按钮进入学习记录页面
- 页面显示做题记录以及相关统计数据
用户登出
- 用户进入OJ主页,点击标识退出的图标
- 用户退出至注册登录页面
(答题体验
- 题目描述
- 题目提交
- 判断结果提示,提示形式:编译错误指出哪行编译错误;答案错误指出 AC 率, 提示哪个测例没有通过
- 题目质疑,询问题目描述不清的地方,等待助教或者老师解答
- 文字提示功能
- 记录所有练习过的题目
- 可以查看后台相关的判题规则介绍以及注意事项,比如哪些语法会被判成错误)