跳至主要內容

YeeOnlineJudge 需求文档

游日山原创大约 7 分钟

项目概述

文档简介

本文档主要描述YeeOnlineJudge的功能需求点及其结构流程信息,目的在于清晰地定义各模块的需求细节及逻辑流程

需求清单

C端部分

序号需求名称需求描述
1注册/登录用户使用学号/工号进行登录/注册
2用户管理查看和修改个人信息和账号的设置
3题目、练习和竞赛题目、练习和竞赛的列表与详情
4判题对于提交的题目进行判题
5支持提交的判题语言包括不限于 C、C++和 Java
6排名全局排名
7判题状态全局判题状态
8公告公告列表与详情

A端部分

序号需求名称需求描述
1用户管理用户的增删改查以及权限角色设置
2批量导入用户通过 CSV 导入用户
3批量生成用户自定义前后缀,开始、结束号码和密码长度来批量生成用户
4公告管理公告的增删改查
5题目管理题目的列表与增删改查以及导入导出
6测试用例的管理测试用例的列表和删除
7练习与比赛管理练习与比赛的列表和增删改查

功能列表

C端

功能模块功能点功能描述
注册/登录系统账号的注册/登录用户在创建账号时只可以对自己的个人信息进行填写,不能填写权限信息,通过学号/工号进行注册,分为教师和学生两种角色
个人信息模块个人信息修改可对自己的名字、密码、邮箱等与系统安全无关的信息进行修改
题量信息统计可查看个人题目提交量、正确量和正确题目列表
题目题目信息有题目列表、可以查看题目信息,包括题目描述、输入描述、输出描述、输入输出样例、题源、难易度、标签、时间和内存限制
排名对注册用户的答题正确量进行排名
题目信息统计统计某一题目的提交量、正确量,以及它们与总量的百分比,还可以查看该题目的提交列表
判题可提交的语言包括不限于 C、C++、Java 和 Python,对于各种提交有状态描述、管理员可对提交进行重判
练习和比赛要有一个概述摘要、公告、题目、提交信息、排名、详细信息(例:重判、AC时间等)和比赛限制
公告公告功能公告列表与详情展示在首页

A端

功能模块功能点功能描述
后台信息后台信息罗列对于用户数量、题目相关信息统计、和比赛的信息罗列
管理用户管理用户的增删改查,批量导入,批量生成,修改用户权限
公告管理公告的增删改查
题目管理题目的增删改查,批量导入导出
比赛练习管理比赛练习的增删改查

其他说明

列表在展示应具有分页、搜索和筛选功能

项目架构

功能流程

总体流程图

uml diagram

信息结构

uml diagram

用例图

C端用户用例图

uml diagram

A端用户用例图

uml diagram