OJ系统的功能模块划分
我们认为,OJ系统功能方面的关主要注点包括三方面:
- 学生通过系统参加课程,线上获取课程资源
- 学生通过系统完成编程题目,并获得提交结果
- 教师通过系统获得有关学生学业情况的统计数据和信息。
因此,我们将系统划分为如下图的9个功能模块:
用户管理
用于系统的用户创建于移除,用户信息维护等。
权限管理
通过赋予和收回用户的权限,区分用户角色和赋予用户不同的可见视图。
题目管理
管理系统题库中的题目的增删、修改、导入导出等。
课程管理
管理在系统中注册的课程的基本信息、课程资源增删、课程作业等。
考试管理
管理课程的考试,系统提供考试模式区分日常学习与考试状态。
竞赛管理
系统为学生提供了参加竞赛的平台,竞赛管理用于竞赛的发布和竞赛内容的修改等。
天梯系统
系统提供了天梯系统作为激励学生自学兴趣的方式。学生答题根据难度获得积分升级。
测评系统
用于学生提交代码的评判。
分析系统
用于从题目、科目以及学生等不同维度,分析学生成绩等数据信息并可视化。