OJ第二周周报

用户需求(improved)

学生系统

  • 登录注册界面
  • 导航栏:课程,考试,竞赛,个人
  • 首页:展示已选课程卡片,卡片展示课程名称,授课教师,开课时间,选课人数
  • 课程页面:可查看课程信息,作业和练习题目列表,显示题目AC率
  • 题目详情界面:题目名称,截止时间,空间时间限制,问题描述,输入输出描述及示例,并包含代码调试提交框,题目标签
  • Status界面:可以看到所有人的提交信息,包括题目编号,学号,提交分数及时间
  • 考试界面:包含最近考试课程信息及考试题目列表
  • 竞赛界面:包含题目列表
  • 用户资料界面:个人信息、修改密码、答题历史、个人积分

试题管理系统

  • 可创建课程:课程名称,授课老师,开课时间,选课人数
  • 查看课程介绍及提交统计信息
  • 增加、编辑、删除题目
  • 题目设置:名称,问题,起止时间,样例输入输出,testcase,时间、空间限制,语言限制,提示,分数,上传附件,题目类型,题目标签
  • 可创建考试
  • 可视化查看作业或考试的答题结果(提交时间,运行时间,提交次数,AC率)
  • 可导出成绩

人员管理系统

  • 可单个或批量添加用户
  • 权限管理:学生,老师,助教及教务
  • 可查看并管理老师信息及课程
  • 可查看并管理学生信息及答题情况

数据库设计

数据库设计

环境搭建

项目结构

  • JudgeServer: 负责判题
  • JudgeBackend: 后端项目
    • 依赖: JudgeServer, Posgress, Redis, Posgress
  • JudgeFE: 前端项目
    • 依赖: JudgeBackend
  • Postgresql: 关系型数据库
  • Redis: 缓存数据库

开发问题

前端

  • 修改Proxy, 指向本项目, 否则会被导向到后端的静态页面
  • 修改API的URL, 指向后端接口

后端

  • CORS-HEADER问题

  • 修改连接postgress配置 : 暂时使用10.11.53.56:5432

  • 修改连接redis配置: 暂时使用10.11.53.56:6379

  • 处理crsf-token问题: 待解决, 后果: 前端post方法无法正常调用

  • 连接judge-server问题: 待解决 ,后果: 暂时无法判题

开发任务

  • 后端:开发课程相关的API(作业和练习),个人积分属性,题目标签属性
  • 前端:课程相关页面,管理员端UI优化

原型图设计(增)

学生端

你可能感兴趣的:(OJ第二周周报)