时代在飞速进步,每个行业都在努力发展现在先进技术,通过这些先进的技术来提高自己的水平和优势,在线作业管理系统当然不能排除在外。在线作业管理系统是在实际应用和软件工程的开发原理之上,运用python语言以及django/flask框架进行开发。首先要进行需求分析,分析出在线作业管理系统的主要功能,然后设计了系统结构。整体设计包括系统的功能、系统总体结构、系统数据结构和对系统安全性进行设计;最后要对系统进行测试,还要对测试的结果进行总结和分析,为以后系统的维护提供方便,也为以后类似系统的开发提供参考和帮助。这种个性化的网络系统管理更重视相互协调和管理合作,能激发管理者的创造性和主动性,这对在线作业管理系统来说非常有益。
语言:Python
框架:django/flask
软件版本:python3.7.7
数据库:mysql
数据库工具:Navicat
前端框架:vue.js
通过比较两个不同因素的框架,可以看出Flask和Django不能被标记为单一功能中的最佳框架。当Django在快速发展的大型项目中看起来更好并且提供更多功能时,Flask似乎更容易上手。这两个框架对于开发Web应用程序都非常有用,应根据当前的需求和项目的规模来选择它们。
最新python的web框架django/flask都可以开发.基于B/S模式,前端技术:nodejs+vue+Elementui+html+css
,前后端分离就是将一个单体应用拆分成两个独立的应用:前端应用和后端应用,以JSON格式进行数据交互.充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护等特点目 录
v摘 要 I
Abstract II
第1章 绪 论 1
1.1 课题的研究背景 1
1.2 课题研究目的 2
1.3 课题的研究意义 2
1.4 研究现状 2
第2章 相关技术 3
2.1 Java编程语言 3
2.2 SpringBoot框架介绍 3
2.3 MySQL数据库 3
2.4 本章小结 4
第3章 系统分析 5
3.1 技术可行性分析 5
3.2 操作可行性分析 5
3.3 需求分析 5
3.4 项目设计目标 5
3.4.1 关于系统的基本要求 5
3.4.2开发目标 6
3.5 系统用例图 6
3.6 系统流程分析 7
3.7 本章小结 8
第4章 系统设计 9
4.1 系统体系结构 9
4.2 开发流程设计 10
4.3 数据库设计原则 11
4.4 数据表信息 13
4.5 本章小结 19
第5章 系统实现 20
5.1 学生功能实现 20
5.2 管理员功能实现 22
5.3 教师功能实现 22
5.4 本章小结 27
第6章 系统测试 28
6.1 系统测试的目的 28
6.2 系统测试方法 28
6.3 功能测试 28
6.4 本章小结 30
结 论 31
参考文献 32
致 谢 33
第1章 绪 论
随着社会的快速发展,计算机的影响是全面而深刻的。当前疫情已席卷全球,人们深感不安。在生活中,大家也不断提高了对系统的要求,在线作业管理的信息数量也在与日俱增,这使在线作业管理系统的问世成为了一件十分紧迫的事情[1]。
1.1 课题的研究背景
在线作业管理系统主要通过计算机网络,对在线作业管理系统的信息进行统一管理,方便管理员随时随地进行增添、修改、查询、删除各类信息,也方便学生查询班级信息、题库信息、布置作业、提交作业、作业成绩、学生留言等。本系统极大的促进了系统与数据库管理系统软件之间的配合,满足了绝大部分用户的需求,给用户带来了很大的便利。以现在计算机的技术的应用,使计算机成为人们使用现代发达技术的桥梁。计算机可以有效的解决信息,十分方便的获取信息,从而提高工作的效率[2]。
1.2 课题研究目的
全球经济在快速的发展,中国更是进步飞速,这使得国内的互联网技术进入了发展的高峰时期,这让中外资本不断转向互联网这个大市场。在这个信息高度发达的现在,利用网络进行信息管理改革已经成为了人们追捧的一种趋势。“在线作业管理系统”是运用python语言和django/flask框架,以Mysql数据库为基础而发出来的。为保证我国经济的持续性发展,必须要让互联网信息时代在我国日益壮大,蓬勃发展。伴随着信息社会的飞速发展,在线作业管理所面临的问题也一个接一个的出现,所以现在最该解决的问题就是信息的实时查询和访问需求的问题,以及如何利用快捷便利的方式让访问者在广大信息系统中进行查询、分享、储存和管理。这对我们的现实生活中具有非常重要的意义,所以在线作业管理系统诞生了[3]。
1.3 课题的研究意义
现在还有许多人用纸质工具存储并管理信息,网络仅仅起到一般的辅助性作用。以我对人们常用软件的了解程度,大家仍然把传统的Office软件当成主要工具,在线作业管理系统相比Office软件来说会更全面更专业。本系统通过标签分类等方式,使管理人员对各项功能信息实现高效的管理,可以极大的提高管理人员的工作效率[4]。
1.4 研究现状
在国外线上管理发展较早。相对应的软件的开发设计和保护也有所增加。由于长時间的技术积累,产品研发工作更是持续推动,最终获得了较大的发展。如今,向着智能化,数字化和信息化的方位快速发展。各行各业都使用了相似的规章制度,推动发展,获得了较好的经济效益[5]。
在国内,因起步较晚,目前的管理还不够完善,发展不平衡,对在线作业管理的管理过程中应用电子计算机和网上的领域以及外部状况信息存有很大差别。技术性简易地取代了过去的形式或方式,但根据更科学的方式再次设计方案管理的这一环节中,大家必须舍弃传统的管理方式,尽早更改管理方法,变化管理理念合理操纵,使系统更细腻,控制成本、提升管理效益。
计算机作为信息科学的媒介和关键,它的出现和发展对人类社会的繁荣起着至关重要的作用。无论是政府机构还是公共机构,都会根据工作内容选择一套优秀的通信技术和专业的办公设备,利用这些技术和设备快速收集、解决和存储信息,使管理工作变得方便快捷,达到科学合理的管理目标。
总之,在线作业管理系统的发展呈不断上升的发展趋势,现在传统的手工制作和半手工管理的方法进入到信息化管理的转变过程中,必须使用和融合新的信息技术来完成传统的系统设计方法,才能保证系统的效果和质量[6]。
2.3 MySQL数据库
MySQL是一种用于数据存储的关系数据库管理系统,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。由于计算机是一个巨大的数据处理工具,所以数据库管理系统在计算机中占有重要地位。数据的管理不仅仅只是数据的存储,而是已经转变成用户需要的许多的数据的管理。其也有很多不同的类型,能够做到有简单的数据管理到大量的数据的管理能力。
这种数据库是比较灵活的方式,优势就在于更加的切合开发者的思考逻辑,所以理解起来也会比较的方便,还能够和其他的语言一起使用,在连接起来就是比较的易懂,同时对于一些基本的查询以及添加的操作也是必须能够掌握的功能。
2.4 本章小结
本章节对项目在线作业管理系统进行了相关技术的分析与介绍,在结合技术的优点和适应性来选择数据库、服务器和开发环境,基于现有的情况,针对系统的各个模块确定系统的最优设计方案。
第3章 系统分析
为满足用户的需求,本章分析系统开发的可行性,将从技术和操作等方面来判断,然后通过需求分析、系统流程分析来确定在线作业管理系统的功能[7]。
3.1 技术可行性分析
在线作业管理系统在使用电脑和信息分析系统这些设计没有硬性要求,电脑只要是可以正常使用的话,那么代码和页面设计就是可行的。要求高的主要是服务器,平台上传服务器一定要选择性价比高和安全性高的,打开网站一定要顺滑不卡顿,所以硬件也是可行的[8]。
3.2 操作可行性分析
将根据管理系统中的用户体验和管理员的效率来分析该措施的可行性。管理人员和教师、学生都可以通过简单的操作登录进对应的系统页面,方便用户搜索业务信息和管理人员管理数据,不需要特别懂电脑的人也可以轻松访问系统模块。该系统已完全投入使用[9]。
所以,从以上可行性分析可得,本系统的开发使没有问题的。
3.3 需求分析
本在线作业管理系统是为了提高用户查阅信息的效率和管理人员管理信息的工作效率,可以快速存储大量数据,还有信息检索功能,这大大的满足了教师、学生和管理员这三者的需求。操作简单易懂,合理分析各个模块的功能,尽可能优化界面,让教师、学生和管理员能使用环境更好的系统[10]。
对比要实现的功能来分析出用户的需求,可以让用户权限内在线对其进行添加、修改、查看、删除,这不仅满足了用户的需求,还大大的节省了时间。因此,管理员的需求也应当考虑一下,尽可能提高管理员的工作效率。
3.4 项目设计目标
本系统采用Mysql数据库和python语言,django/flask框架进行开发而成,极大程度上的保证了系统的稳定性。
3.4.1 关于系统的基本要求
(1)功能要求:管理人员可以管理自己的教师、学生、班级信息、题库信息、布置作业、提交作业、作业成绩、学生留言等进行管理。
(2)性能:可以准确无误的在不同的操作系统中登录到教师、学生或者管理员的相应界面进行轻松的操作。
(3)环境要求:支持不同的操纵系统和不同的平台,可用于Windows系列、Vista系统等多种操作系统[11]。
3.4.2开发目标
本在线作业管理系统的主要开发目标如下:
(1)减少后台管理人员的工作量,对用户的信息进行系统的管理;
(2)必须要方便快捷的查看搜索信息并管理信息;
(3)用户是具有多样性的,所以界面要设置的简单明了,操作更要方便快捷。
3.5系统用例图
本次系统的用例图做出了十分明确的功能划分,在设计时可以有很好的设计思路进行设计和延展。
4.4 数据表信息
在关系数据E-R图中,分析并创建数据表,数据表用来记录信息,数据表关系由多个数据表组成,下面介绍的是数据表各个字段信息如下表所示。
表4-1:题库信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
tikumingcheng varchar 200 题库名称
tixing varchar 200 题型
tixingshuliang int 题型数量
tixingchuzi varchar 200 题型出自
zhishidian longtext 4294967295 知识点
peitu longtext 4294967295 配图
fabushijian date 发布时间
表4-2:提交作业
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
banji varchar 200 班级
kechengmingcheng varchar 200 课程名称
zuoyemingcheng varchar 200 作业名称
tijiaozuoye longtext 4294967295 提交作业
tijiaoshijian datetime 提交时间
jiaoshigonghao varchar 200 教师工号
jiaoshixingming varchar 200 教师姓名
xueshengxuehao varchar 200 学生学号
xueshengxingming varchar 200 学生姓名
crossuserid bigint 跨表用户id
crossrefid bigint 跨表主键id
表4-3:短信验证码
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
mobile varchar 200 手机
role varchar 200 角色
code varchar 200 验证码
表4-4:教师
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
jiaoshigonghao varchar 200 教师工号
jiaoshixingming varchar 200 教师姓名
mima varchar 200 密码
xingbie varchar 200 性别
touxiang longtext 4294967295 头像
youxiang varchar 200 邮箱
mobile varchar 200 手机号
表4-5:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-6:布置作业
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
banji varchar 200 班级
kechengmingcheng varchar 200 课程名称
zuoyemingcheng varchar 200 作业名称
zuoyeneirong longtext 4294967295 作业内容
buzhishijian datetime 布置时间
jiezhishijian datetime 截止时间
jiaoshigonghao varchar 200 教师工号
jiaoshixingming varchar 200 教师姓名
表4-7:作业成绩
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
kechengmingcheng varchar 200 课程名称
zuoyemingcheng varchar 200 作业名称
jiaoshigonghao varchar 200 教师工号
jiaoshixingming varchar 200 教师姓名
xueshengxuehao varchar 200 学生学号
xueshengxingming varchar 200 学生姓名
zuoyefenshu float 作业分数
pingyu longtext 4294967295 评语
pingfenriqi date 评分日期
crossuserid bigint 跨表用户id
crossrefid bigint 跨表主键id
表4-8:班级信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
banji varchar 200 班级
banjirenshu int 班级人数
banjiweizhi varchar 200 班级位置
xiangxijieshao longtext 4294967295 详细介绍
jiaoshigonghao varchar 200 教师工号
jiaoshixingming varchar 200 教师姓名
表4-9:学生留言
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
biaoti varchar 200 标题
liuyanwenti longtext 4294967295 留言问题
liuyanshijian datetime 留言时间
jiaoshigonghao varchar 200 教师工号
jiaoshixingming varchar 200 教师姓名
xueshengxuehao varchar 200 学生学号
xueshengxingming varchar 200 学生姓名
shhf longtext 4294967295 回复内容
表4-10:学生
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
xueshengxuehao varchar 200 学生学号
xueshengxingming varchar 200 学生姓名
mima varchar 200 密码
xingbie varchar 200 性别
touxiang longtext 4294967295 头像
youxiang varchar 200 邮箱
mobile varchar 200 手机号
表4-11:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-12:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
4.5 本章小结
本章具体讲述了系统的大体结构,主要包括教师、学生和管理员三大系统模块,使其各个功能简洁明了。同时对数据库的设计原则进行分析,从而提高了系统的效率。
第5章 系统实现
本章讲述的是系统对各个模块功能实现的效果图,对管理员功能和教师、学生功能分别进行了展示,页面布局清晰,操作简单快捷,基本实现了对教师、学生和管理员对系统的需求。
5.1学生功能实现
这是一个学生注册的界面,当学生没有账户时可以通过注册来登录系统,只需要根据相应的提示,输入学生学号、密码、确认密码、学生姓名、性别、头像、邮箱、手机号等信息即可。
第6章 系统测试
系统测试是系统开发的最后一部也是最重要的一步,能看出其作用在系统开发中占据了很重要的地位。本章将通过系统测试来发现在线作业管理系统中出现的各种问题并立刻做出改正,以确保系统中的功能模块能够准确实现[12]。
6.1 系统测试的目的
任何人系统开发中也不能保证没有一点错误,在开发的过程中错误是不可避免的,所以在发现错误时要及时改正,不能让错误一直存在,否则会引发系统崩溃等不可小觑的后果,所以才需要系统测试来在一定程度上避免这些问题的发生。在测试中发现错误并及时改正才会让系统长久稳定的运行,虽然这是耗时耗力的,但为了系统能够长期使用,系统测试这一步骤也是十分重要的。
为实现系统中各个模块的功能,系统测试是必须的,这样才能判定系统是否能准确的实现预想的功能。在正式使用系统前必要的步骤就是针对系统进行测试,确保系统的准确性,以供使用[13]。
6.2 系统测试方法
在测试中发现问题一定要立马寻找解决办法,不要妄图通过偶然的概率对错误不管不问,只有认真测试解决问题,才能保证在线作业管理系统的质量,可以极大的缩短开发的时间。
测试时不要一错再错,同样的错误一起解决,这样才能提高系统的稳定性和安全性[14]。
6.3 功能测试
下面对登录模进行测试,表格里分别是输入用户名和密码后的三种不同的结果,当用户名错误时会提示用户名错误,当密码错误时会提示密码错误,当账户与密码都正确时会提示登录成功,如果以用户的账户密码登录管理员模块会提示登录失败。登录模块测试如表6-1所示[15]。
表6-1 登录测试
通过删除一则最新通知,来判断此功能是否通过测试,当选择删除这个模块时,会提示是否确认删除,确认后会提示删除成功,页面自动跳转。删除模块测试如表6-2所示。
表6-2 删除模块测试
通过输入错误的原密码、不一致的新密码和正确的密码来测试修改密码的功能是否通过测试。修改密码模块测试如表6-3所示。
表6-3 修改密码测试
通过上述功能测试,结合测试结果可以看出,该项目的基本功能是可以实现的,系统中的功能很全面并且界面设计简洁清晰,最终通过了系统测试。
6.4 本章小结
本章主要论述的是在线作业管理系统的测试,讲述了系统测试的目的和方法,通过对各个重要功能的测试,发现系统中可能存在的技术性问题并加以改正。最终测试操作完成了在线作业管理系统的实现。
结 论
本系统是采用python语言,django/flask框架构建的一个操作管理系统,选择的数据库是Mysql。整个过程先是通过整体的系统分析,来确定本系统的可行性是否达标。为了满足用户的需求以及提高管理员的工作效率,通过系统所要实现的功能分析,决定了教师、学生和管理员要实现的功能。之后就是精细各个模块的具体功能,定义教师、学生和管理员们的权限,分割成管理员功能模块和教师、学生功能模块。之后通过系统测试来确保数据的准确性和操作的准确性,发现错误并立即做出了改正。
系统本身就是共享信息的存在,教师、学生权限内和管理员都可以发布信息来分享资源,通过加入关键词检索,让教师、学生和管理员更方便的使用系统。同时通过分类以便用户查找信息可以进一步的对号入座,极大的节省了查找信息的时间。通过加入信息的评论功能,加深了用户与用户之间的交流,使其构造出更良好的网络环境。
在本次项目设计中,完成了大大小小的模块,系统设计的调查,数据的分析,在安装软件方面,选择版本问题困扰了我很久,后来找相关的网站介绍,了解了各个版本的利与弊,最后完善了本次设计。在线作业管理的系统设计选择了python开发语言,和Mysql数据库对后台的数据交互进行分析保存,使用Mysql数据库可以是程序运行更加的安全且稳定,从而实现并完善系统的开发。