作业管理系统

简介: 作业管理系统

数据库原理A课程设计——作业管理系统
点击链接查看文档代码

二、系统需求分析

2.1 背景描述
随着互联网+的浪潮,很多行业都实现了与互联网的融合,提升了工作效率。
在该选题中,我们小组选择将传统的作业批改实现网络化,无纸化,节约纸张,提升作业管理效率,便利师生,更好的服务学生,提升学生的学习效果。在这个选题中我们致力于打造一个师生之间作业交互的网络新平台,拉进师生之间距离,增强师生作业互动的实时性,将互联网科技带来的改变与提升,带给老师和学生一个现代化的新的作业管理解决方案。

2.2 需求分析
经过小组对系统调研和需求探讨分析,我们对系统进行了下一步的需求分析。

2.2.1 功能需求
1)用户登录:用户提交用户的账号和密码进行登陆,系统根据相关信息判断进入系统界面。
2)用户信息修改:成功登录的合法用户有权对自己的个人信息进行相应的修改。
3)查看自己的个人信息:成功登录的合法用户可以根据自己的权限请求相应的信息。
4)发布作业:用户可以在拥有权限的时候向班级内的成员发布作业,并且设置作业提交的截止时间。
5)提交作业:用户在有未完成作业时,可以在做完作业之后提交作业,记录提交的时间。
6)修改作业:用户在有已提交作业且该作业未过期时,可以重新提交作业覆盖之前的提交记录,并记录重新提交的时间。
7)批改作业:当用户所管理的班级有已发布的作业且有提交的作业尚未批阅时,用户可以批改作业,批改后的作业归类为已批注作业。
8)查看作业信息:用户可以查看自己所属班级所发布的作业,并查看其详细信息。
9)删除作业:用户所管理的班级,用户可以删除相应的作业。
10)创建班级关系:当合法登录的用户拥有相应的权限时,用户可以拉取老师和班级组成班级。
11)选课:当合法登录的用户拥有选课的权限时,而且属于选课段时,用户可以选择相应课程,若课程人数未达上限时,用户可加入相应班级。
12)查看班级信息:成功登录的合法用户可以根据自己的权限请求相应的班级信息。
13)查看课程信息:成功登录的合法用户可以根据自己的权限请求相应的课程信息。

2.2.2 性能需求
1) 系统处理能力:同学录系统不但涉及到留言功能,班级相册,说说管理等各个功能,还同时对多个不同用户的操作进行管理和控制,在这个过程中参与的用户较多,较为复杂,因此系统要具有较好的大用户量下的并发响应能力.
2) 处理时间:理想状态下系统应为用户提供24小时服务.
3) 响应速度:要求能够响应快速;响应速度尽量控制在用户可忍受等待的时间内,并给予提示.
4)主要依赖数据库的良好维护和管理以及对数据的保密等措施。所以在数据在遇到严重的丢失或损坏后能快速的进行恢复以继续维持系统的正常运行。所以本系统采用了定时对数据库的备份和数据的恢复措施。

三、系统设计

3.1 数据库结构设计
3.1.1概念结构设计
概念模型用于信息世界的建模。概念模型不依赖于某一个数据库管理系统(DBMS),但可以方便的转换为计算机上某一DBMS所支持的特定的数据模型。通过对用户对数据的需求进行综合、归纳与抽象,将形成一个完善的概念模型,可以用E-R(实体联系)图来表示。E-R图是对现实世界的一种抽象,它的主要成份是实体、属性和联系。

1.实体:客观存在并可以互相区分的事物称为实体,是现实世界中各种事物的抽象。如本案例中一个班级为一个实体。一般来说,每个实体都相当于数据库中的一个表。实体用一个矩形框来表示。

本项目用到的实体类有:
teacher-教师实体类
student-学生实体类
admin-管理员实体类
clazz-班级实体类
course-课程实体类
student_course-学生选课实体类
homework-作业实体类
student_homework-学生作业实体类
2.属性:属性是实体所具有的某些特征,通过属性对实体进行刻画。实体是由属性组成的,如班级有班级名称、创建人等属性。一个实体本身具有许多属性,能够唯一标识实体的属性称为该实体的码。属性用一个椭圆来表示。
本项目的属性:
teacher表:
在这里插入图片描述student表:
在这里插入图片描述admin表:
在这里插入图片描述clazz表
在这里插入图片描述

course表
在这里插入图片描述

student_course表
在这里插入图片描述

homework表
在这里插入图片描述

student_homework表
在这里插入图片描述3.联系:现实世界的事物内部或事物之间都有联系,这些联系在信息世界里反映为实体内部或实体之间的联系。

本项目的实体之间的联系:
teacher与course为一对多的关系(简化一下),一个教师可以教授多门课程,但一个课程只能对应一个教师;
student与clazz为一对多的关系,一个学生只能属于一个班级,一个班级有多个学生;
student与course为多对多的关系,一个学生可以上多门课程,一门课程可以被多个学生选修;
course与homework为一对多的关系,一个课程可以有很多个作业;
homework与student为多对多的关系,一个作业可以有很多个学生提交,一个学生有多份作业;
根据上节的需求分析,我们作出一些E-R图,如图所示:

局部E-R图:
管理员属性E-R图:
在这里插入图片描述班级与学生的关系:
在这里插入图片描述课程与学生的关系:
在这里插入图片描述学生与作业的关系:
在这里插入图片描述课程与老师的关系:
在这里插入图片描述课程与作业的关系:
在这里插入图片描述全局E-R图:
在这里插入图片描述3.1.2逻辑结构设计
在这里插入图片描述3.1.3物理结构设计
在创建完数据库之后,首先要做的就是在数据库中创建表。通常来说,表的设计是由开发人员完成,必须满足实际数据的内容和关系数据库的要求(比如范式要求),而数据库管理员的任务是根据要求向数据库中添加这些表。在逻辑上,数据库由大量的表构成,表中包含了由行和列组织起来的数据;在物理上,表存储在文件中,表中的数据存储于页中。
在数据库的开发和应用中,快速地从数据库中查询到所需的数据是十分重要的。但是,随着数据量的不断增大,查询所花费时间也在大量增加。使用索引可以对查询速度进行优化,使用索引指向数据页上某行的位置,这样查询数据就不需要查遍表的所有数据页了。
数据质量对于使用效率和数据库程序运行效率起着决定性的作用。如果数据库中存在大量错误数据,那么效率会大大降低。在数据库的使用中,诸如数据录入错误和表间关联数据的修改等操作都会造成错误数据的产生。因此,不论从首次输入还是收集到存储的整个过程都需要保证数据的唯一性和一致性。数据的唯一性和一致性称为数据完整性。数据完整性分为实体完整性、引用完整性和用户自定义完整性。实体完整性一般通过设置主键来实现,参照完整性一般通过设置外建来实现,而用户自定义完整性则可通过CHECK约束、DEFAULT约束和UNIQUE约束实现。把逻辑设计得到的关系模式转换为表,同时为实现数据完整性设置主、外键及各种约束。

3.2软件结构设计
3.2.1 概要设计
处理流程:
1.系统初次启动时,根据配置文件导入数据库,设置各全局变量;
2.进入事件等待状态,各专门功能模块由事件驱动机制激活,分别执行完各项功能后仍进入事件等待状态;
3.最后由关闭系统事件引导激活关闭系统模块,退出整个系统;

系统结构图:
在这里插入图片描述3.2.2 详细设计

系统的三个角色为教师、学生、管理员

教师
修改个人信息(包括密码)

查看自己所教授的课程信息
查看选课学生信息
发布作业
修改已布置的作业
删除已布置的作业

学生
修改个人信息(包括密码)

查看自己所属的班级信息
查看自己所选的课程信息
查看教师所布置的作业信息
提交作业、修改已提交的作业

管理员

修改个人信息(包括密码)
教师信息的增删改查
学生信息的增删改查
班级信息的增删改查
课程信息的增删改查
选课信息的增删改查
作业信息的增删改查
删除作业信息、查看作业信息
删除学生提交作业信息、查看学生提交作业信息

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

四、系统实现

系统登录界面

在这里插入图片描述
学生用户主界面

在这里插入图片描述学生用户设置界面

在这里插入图片描述教师用户主界面

在这里插入图片描述教师用户授课列表界面

在这里插入图片描述教师用户学生信息列表界面

在这里插入图片描述管理员用户主界面

在这里插入图片描述管理员用户教师列表界面

在这里插入图片描述点击链接查看文档代码

目录
相关文章
|
监控 算法 安全
作业管理
一、作业管理 作业管理是操作系统中的一个重要功能,它负责对计算机系统中的作业进行调度和管理,以提高系统的利用率和效率。作业管理涉及到作业的提交、调度、执行和完成等过程。 作业管理的主要任务包括: 1. 作业提交:用户将自己编写的程序和相关的数据提交给操作系统,以便进行后续的处理和执行。作业提交可以通过命令行界面、图形界面或者其他方式进行。 2. 作业调度:作业调度是指根据一定的调度算法,从作业队列中选择一个或多个作业并分配给可用的处理器进行执行。作业调度的目标是提高系统的吞吐量、响应时间和资源利用率。 3. 作业执行:作业执行是指将作业加载到内存中,并由处理器执行作业中的指令。作业执行需要进行
150 0
|
监控 算法 调度
计算机作业管理
计算机作业管理是操作系统的一个重要功能,它负责管理和调度计算机系统中的作业(Job)。 主要的作业管理任务包括: 1. 作业提交:用户将作业提交给操作系统,包括作业的描述、要求和数据等。操作系统负责接收和记录作业的信息,并进行相应的处理。 2. 作业调度:操作系统根据作业的优先级、资源需求和系统状况等因素,决定作业的执行顺序。它使用作业调度算法来决定哪个作业先执行,以最大化系统的吞吐量和响应时间。 3. 作业分配:操作系统将作业分配给可用的处理器或处理节点。它负责管理和分配系统资源,以确保作业能够得到合理的分配和利用。 4. 作业控制:操作系统负责控制作业的执行过程。它负责加载作业的程序和数据
103 0
|
1月前
|
监控 前端开发 项目管理
从零到一:独立项目如何规划、资源分配与进度监控?
本文从规划、资源分配、进度监控三方面详细解读独立项目运作的过程步骤,旨在帮助读者从零到一掌握项目管理的全流程。同时,推荐了三款实用的项目管理工具——板栗看板、Trello 和 Asana,助力项目高效执行。
41 3
|
存储 调度
开发团队调度系统
开发团队调度系统
|
前端开发 Java 数据库连接
作业管理系统实现
作业管理系统实现
287 0
作业管理系统实现
|
Java 数据库 数据安全/隐私保护
JSP+Servlet培训班作业管理系统[12]–人员新增功能的实现
本文目录 1. 本章任务 2. 增加新增按钮 3. 添加新增页面 4. 通过UserServlet保存新增用户 5. 测试
158 0
JSP+Servlet培训班作业管理系统[12]–人员新增功能的实现
|
SQL 前端开发 Java
JSP+Servlet培训班作业管理系统[18]–教师角色之作业题目管理功能实现
本文目录 1. 本章任务 2. 代码实现 2.1 添加菜单 2.2 加载教师所管理的作业 2.3 显示作业题目列表 2.4 作业题目新增功能实现 2.5 作业题目编辑功能的实现 3. 总结
178 1
|
SQL Java 应用服务中间件
JSP+Servlet培训班作业管理系统[13]–人员修改功能的实现
本文目录 1. 本章任务 2. 添加修改按钮 3. 在RouteServlet中添加用户编辑页面跳转 4. 新增用户编辑页面 5. 处理编辑提交请求 6. 测试验证
176 0
JSP+Servlet培训班作业管理系统[13]–人员修改功能的实现
|
Java 数据安全/隐私保护
JSP+Servlet培训班作业管理系统[11]–人员浏览功能的实现
本文目录 1. 本章任务 2. 为校长角色添加人员管理菜单 3. 携带人员列表信息进入人员管理页面 4. 在人员管理页面显示人员列表 5. 总结
191 0
JSP+Servlet培训班作业管理系统[11]–人员浏览功能的实现
|
前端开发 Java 数据库
JSP+Servlet培训班作业管理系统[19]–教师角色之作业打分功能实现
本文目录 1. 本章任务 2. 配置作业批阅菜单 3. 进入作业批阅页面携带数据 4. 作业批阅页面开发 5. 批阅选中作业内容 6. 提交批改 7. 测试运行
168 0
JSP+Servlet培训班作业管理系统[19]–教师角色之作业打分功能实现