python学生作业管理系统

摘 要

在各学校的教学过程中,学生的作业管理是一项非常重要的事情。随着计算机多媒体技术的发展和网络的普及,“基于网络的学习模式”正悄无声息的改变着传统的教室学习模式,“基于网络的教学平台”的研究和设计也成为教育技术领域的热点课题。采用当前流行的B/S模式以及3层架构的设计思想通过Python技术来开发此系统的目的是建立一个配合网络环境的可以师生互动的电子作业提交与反馈的平台,这样可以有效地解决作业管理混乱的局面。本系统设计了3种角色:管理员,学生和教师。系统主要包括个人中心、主观作业管理、作业提交管理、作业批改管理、分数统计管理、客观作业管理、作业名称管理、测试管理、学生管理、教师管理等功能模块。
本文首先介绍了学生作业管理系统管理技术的发展背景与发展现状,然后遵循软件常规开发流程,首先针对系统选取适用的语言和开发平台,根据需求分析制定模块并设计数据库结构,再根据系统总体功能模块的设计绘制系统的功能模块图,流程图以及E-R图。然后,设计框架并根据设计的框架编写代码以实现系统的各个功能模块。最后,对初步完成的系统进行测试,主要是功能测试、单元测试和性能测试。测试结果表明,该系统能够实现所需的功能,运行状况尚可并无明显缺点。

关键字:学生作业管理系统;Django ;Mysql数据库

Abstract

In the teaching process of each school, students’ homework management is a very important thing. With the development of computer multimedia technology and the popularity of the network, “Web-based learning model” is quietly changing the traditional classroom learning model, “Web-based teaching platform” research and design has also become a hot topic in the field of educational technology. Using the current popular B/S mode and the design idea of 3-layer architecture to develop this system through Python technology is to establish a platform for the submission and feedback of electronic homework which can interact with teachers and students in the network environment, so as to effectively solve the situation of homework management chaos. This system has designed three roles: administrator, student and teacher. The system mainly includes personal center, subjective homework management, homework submission management, homework correction management, score statistics management, objective homework management, homework name management, test management, student management, teacher management and other functional modules.
This article first introduces the student job management system development background and development status quo of management technology, and then follow the routine software development process, first of all, in view of the system and the selection of suitable language development platform, according to the requirement analysis module and database structure design, and then based on the system’s overall function module design rendering system function module chart, flow diagram and e-r diagram. Then, design the framework and write code according to the designed framework to achieve each functional module of the system. Finally, the preliminary completed system is tested, mainly functional test, unit test and performance test. The test results show that the system can achieve the required functions, and the running condition is fair and there is no obvious defect.

Key words:Student homework management system; Django. The Mysql database

目 录

摘 要 I
目 录 III
第一章 概述 1
1.1引言 1
1.2课题研究目的 1
1.3开发现状分析 2
1.4课题开发意义 2
2 开发工具及关键技术介绍 3
2.1 相关技术 3
2.2 Python介绍 3
2.3 MySQL介绍 4
2.4 Django框架介绍 4
2.5 B/S架构 5
3 系统分析 6
3.1 可行性分析 6
3.1.1 经济可行性 6
3.1.2 技术可行性 6
3.1.3 运行可行性 6
3.2 功能需求分析 6
3.3 非功能性需求 8
3.4 系统特色 9
3.5系统顺序图设计 10
3.5.1登录模块顺序图 10
3.4.2添加信息模块顺序图 10
第四章 系统设计 11
4.1功能结构 11
4.2 数据库设计 12
4.2.1 数据库E/R图 12
4.3 数据库设计 14
4.3.1实体关系图 15
4.3.2数据库表结构 15
第五章 系统功能实现 20
5.1管理员功能模块 20
5.2教师功能模块 22
5.3学生功能模块 24
6 系统的测试 26
6.1 功能测试 26
7 总结 29
致谢 29
参考文献 31

第一章 概述

1.1引言
信息化是当今世界经济和社会发展的大趋势,以网络和多媒体为核心的信息技术已经成为拓展人类能力的创造性工具。随着网络技术、多媒体技术在教育领域应用的不断发展,网络教育已成为当前教育发展的热点。随着计算机应用的普及,使计算机教学深入到课堂。另一方面,校园网已从办公室、教室、图书馆延伸到学生宿舍,这为网上教学提供了广阔的舞台。开发和充分利用网络教学,是当前教育发展的必然趋势。作业是教学过程中教师考核学生成绩的一种方式,新型的网络教学模式的发展渐渐地替代了传统的纸张提交作业的方式。老师布置的作业,学生先在作业本上完成,然后通过班委统一的交给老师,老师手工批改,再把作业发给学生。这种反馈过程下来时间就长了,就很难全面的考核学生这段的学习情况,不利于学生学习,也不利于教师全面的了解学生最近阶段的学习状况。如何缩短从教师布置作业到批改作业的时间差,提高批改作业的速度和质量,已经成为教师们所面临的一大问题。所以随着时代的发展,网络技术、多媒体技术、开发一个学生作业上传和教师批改作业系统是很有必要的。与时俱进,操作简单,更高效地实现学生在线上传系统的无纸化管理和实时性服务。
随着网络技术的不断发展,多媒体技术应用渐渐的出现在教育领域中,网络教育已经成为教育发展的一个热门话题。互联网应用在全球范围内日益普及,在许多的网络服务中,Web给人耳目一新的感觉。在这其中,网络平台开展的工作已经越来越流行,当今网络技术的发展,已经成为一种新的工作方式,人们可以通过网络所提供的平台解决相关事务。在众多网络开发技术中,Python是当前很热门的一种软件,因为它可以进行数据库操作及方便用户控制管理。
1.2课题研究目的
(1)便于教师网上办公
随着信息技术在管理中的应用越来越深入和广泛,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理系统。根据现在学校学生作业管理的状况,设计成一个能提供对学生作业查看、作业提交以及教师布置作业、查看作业、批改作业的系统,该系统不仅仅要方便,而且具有很大的实用性和可行性,大量简化管理人员的工作量,能为学校管理提供方便。
(2)减轻教师的工作负担,保证数据的正确性
作业管理系统主要目的是解决教师批改作业和学生提交作业都得靠纸质交流,或者是用单一的上传,拷贝等方法交流不方便的问题。提供给教师一个管理和布置作业的平台,也让学生随时随地提交作业。改变了传统教育的局限,突破了时间和空间的限制,使教学更加灵活,交互性强,为师生的交流了新途径。系统具有操作简便,界面友好的特性。管理员能够对用户和权限进行方便的修改和管理
(3)学生完成作业效率
目前许多高校教师是在教室上课时布置作业,学生利用课余时间完成,教师手工批改,再把作业发给学生。这样一个流程下来,学生完成的效率不高,时间也会被耽误。本系统它大大提高了学生完成作业的效率和时间。
1.3开发现状分析
本系统能够满足学生完成作业学习知识的要求,同时也能方便老师及时检查学生进度以及进行新的作业布置等功能。自适应性使学生不会在学习的旅途中感觉盲目,迷失方向。大大满足了学生学习的个性化,教师工作时效性的双方面的要求。这些将会吸引大量用户对本系统的兴趣与爱好。并且此系统操作简单,在操作方面都会有说明进行提示,比如新作业的布置及其显示,完成作业的情况,学生的登录板块有专门的作业提交界面。管理权限的设置使的各自的功能实现起来更加简洁方便,不会使用户不知何处下手,只要是懂得上网和识字的用户都能够对本系统操作的游刃有余。
同时所开发的高校学生作业管理系统,它具有以下特点:
(1)实用性:方便教师布置作业、批改作业和学生随时随地提交作业。
(2)操作简便:本系统适合教师和学生使用,同时系统操作简单,而且系统不复杂繁琐。
(3)代码可读性好:文中的代码使用方便,简洁易懂。
1.4课题开发意义
本系统学生作业管理系统是当今技术发展的产物,通过Web的形式完成学生作业管理系统,本系统不仅方便学生提交作业,而且更为老师提供检查作业的。本系统功能简单、明了,基本符合实际开发需求,学生可以查看作业、上传作业、查看作业批改情况等。教师可以发布作业,批改作业等。由此可以得出,网络教育学习及网格各种信息交流的好与坏,严重影响着我们学习生活的各个角落,我们需要一套有效的网上学习管理系统为我们快节奏高效率的工作学习提供一种保障。同时扩大系统使用的效率和应用范围,为更多的有这种需求的教师和广大的学生提供必要和及时的服务。因此学生作业管理系统的实现开发出现了其必要性和可行性。相信随着时间的推移,学生作业管理系统会在未来的高校发展管理模式占十分重要的地位,而且还有很大的发展空间来展现时效的作用。
通过Internet来实现网上作业提交,是现代教育技术的一个具体实现,具有很重要的现实意义。网络化教育代表了教育改革的一个发展方向,已经成为现代教育的一个特征,并对教育的发展形成新的动力。可以实现学生在线提交作业的无纸张化管理,可以有效利用校园网的软硬件资源,使其发挥最大效力,更好的为学校的教学、科研、管理服务,随时随地的可以让学生联机操作提交。

2 开发工具及关键技术介绍

2.1 相关技术
作业管理系统选取的开发语言是当今最热门的Python语言,语言完善成熟,不会有重大问题。框架选择Django框架。在数据设计阶段,我们需要进行系统需求的分析,分析业务总体功能,现在我们从以上几个技术进行深入的研究:

2.2 Python介绍
随着人工智能、大数据时代的来临,Python语言收到更多系统员的欢迎。作为现在热门的系统语言,Python可以说是IT界的新一代网红,尤其是Python和目前红的发紫的人工智能之间密切的关系,让大家对他投入了特别的关注,大大数据现在是很多公司的重点项目,很多高校也在侧重学生对大数据知识的学习,现在很多人都喜欢刷抖音,因为抖音能够精准的给我们推送自己喜欢的视频,以前我们通过百度后者其他搜索网站搜索自己需要的知识,现在随着大数据的应用,很多网站能够根据我们的上网记录,精准的给我们进行推送,包括我们需要的视频,想要获取的知识等等,而这些都离不开Python。Python的语言是目前最简单的计算机语言之一,语言很简洁,用更短的代码干更多的事,可以轻松调用主流的C、C++、JAVA类库。提到爬虫,很多人会想到Python,当今互联网数据,成为任何一家公司的核心资产,怎么获取公开的有用的信息,爬虫就派上了用场。人工智能是很多大公司都在进行的项目,智能驾驶,百度研发的无人驾驶,京东的机器狗智能送货上门,都是运用了人工智能技术,人工智能的核心算法和模型,需要快速的聚焦问题本身,而且,需要能够进行交互式的进行模型训练,能够满足这些需求的只有Python。另外,Python不仅适用于系统员使用,很多白领也可以使用Python,简化工作流程,提高工作效率,批量操作Excel、word、pdf等。所以本系统使用了Python语言进行完成。在大学阶段的学习中,我们已经掌握了Python的基本知识,这次设计的作业管理系统,运用Python语言,学以致用,在实践中学习。
2.3 MySQL介绍
MySQL数据库管理系统,它相对与SQL Server来说小了很多,电脑内存比较小的人用这个会比较方便而且MySQL安装起来非常方便,不需要有很多插件的安装,基本上只需要点击下一步执行,只有在最后的时候选一下数据集选项[7]。MySQL查询起来也非常方便,连接数据库之后直接打开就可看到,对于我这种懒人来说真的非常实用。MYSQL能够以极高的效率完成各种数据库查询[8],并能方便的使用存储过程,同时我们一般在实用MySQL是基本上都是实用简单的可视化工具查看,界面简单清晰,以图形的形式表达用户界面易查看的,又能够使数据库管理和系统管理更加简单、直观。由于MySQL对Web端的支持,用户能轻易的在浏览器里面运行界面获取数数据关系,所以这次课题选用MySQL数据库[14]。
本次毕业设计的数据库选择实用性强的Mysql数据库,没有选择sqlserver数据库,相比于sqlserver,mysql更轻巧方便。Mysql主要特点存储和查询很快。另外系统采用的是JavaWeb开发技术。在上学之时,学习了mysql数据库,这是一款非常实用和小巧的数据库系统,
2.4 Django框架介绍
Django是高水准的Python编程语言驱动的一个开源模型视图,控制器风格的Web应用系统框架,它起源于开源社区。使用这种架构,
系统员可以方便、快捷地创建高品质、易维护、数据库驱动的应用系统。这也正是OpenStack的Horizon组件采用这种架构进行设计的主要原因[15]。另外,在Django框架中,
还包含许多功能强大的第三方插件,使得Django具有较强的可扩展[2]。Django课题源自一个在线新闻Web站点,于2005年以开源的形式被释放出来。Django框架的核心组件有:
用于创建模型的对象关系映射;为最终用户设计较好的管理界面;URL设计;设计者友好的模板语言;缓存系统。

2.5 B/S架构
B/S的系统是通过能上网的电脑就可以使用,它最大的优点是不需要安装专门的软件,首先浏览器向服务器发出请求,然后服务器处理请求把信息再返回给浏览器。不需要再次对数据进行存取与计算数据,只要负责显示数据来降低要求,如果说客户端像个“瘦子”,而服务器会越来越“胖”。B/S体系结构与C/S体系结构相比,最大的不同是:B/S体系的应用软件使用网络浏览器作为与用户交互的平台,而C/S则需要开发专用的应用系统。
在这里插入图片描述

图2-1 B/S结构图

3 系统分析

3.1 可行性分析
一个完整的系统,可行性分析是必须要有的,因为他关系到系统生存问题,对开发的意义进行分析,能否通过本系统来补充作业管理模式中的缺限,去解决其中的不足等,通过对本系统,不仅能使工作量不断地减少,还能使工作和管理的效率更加高。所以开发该系统能实现更大的意义和价值,系统完成后,能否达到预期效果就要通过可行性分析,分析之后,决定此系统是否开发。该学生作业管理系统的开发设计中,对技术、经济、运行方面进行了可行性分析。
3.1.1 经济可行性
本设计可以在一般 PC上正常运转,无需购置其它的硬件设备。此设计开发所需的软件Tomcat、Mysql都是开放的,不需要付费就能在网上下载。从财务角度来看,我们并不一定要去买什么软件或者服务器来发展这个体系[17]。因此,从财务上来说,这是可行的。
3.1.2 技术可行性
对于本设计所设计的作业管理系统来讲,考虑到技术的成熟性并结合个人的掌握水平,可不考虑新技术的融合[20],在此基础上综合考虑采用Django框架MySQL数据库来开发系统,且当前所要被采用的开发技术已被大量的企业信息化系统所验证,由此在技术上是可行的[10]。
3.1.3 运行可行性
任何一个系统应用的开发,设计完成以后再投入到市场上之后,能否受到广大用户群体的欢迎和青睐,主要要看其操作的复杂程度是否符合当下用户的操作习惯和整体需求,此设计开发的系统的操作就比较简单[18],没有过于复杂的界面和功能模块的应用使得用户一眼就能够看出自己所需要的服务内容,然后通过点击相应的功能按钮来实现在线操作。
3.2 非功能性需求
首先是先进性原则。在系统的总体设计方面,采用先进和开放式的系统体系结构,能够提供个性化的服务,具有良好的软件和硬件系统兼容性。系统应该具有较好的可扩展性和包容性,除了能够较好的适应当前的基本业务需求外,系统要充分考虑到今后的业务发展需求,系统架构具有适应未来可能发生的变化的能力,能够方便进行修改、调整和扩充升级[11]。
安全性:网站的所有数据采用https的网络传输,用户的账号密码采用更加复杂的加密方式进行,更加安全。另外网站还有数据备份操作,可以随时对数据进行热备份,以防数据丢失,造成损失。
操作性:管理员可以根据操作手册,管理网站的后端管理系统,对网站的数据进行增删改查。用户登录系统,浏览网站的信息。
实用性:网站的研发对作业管理系统有很大的帮助,还可以产生巨大的经济效益。
可移植性:网站采用的B/S模式,可以在任何的电脑随时访问网站地址。可以移植到各个开发平台。
高并发:系统可以同时让多个用户同时对网站进行访问,系统没有任何宕机,说明网站负载力很强。
正确性:系统杜绝出现操作的重大错误,和网站的业务逻辑的错误。
性能:网站采用超大带宽,和高性能的服务器。
兼容性:网站在测试之初,采用大量和随机抽取的测试,在不同的操作系统,不同品牌电脑软件硬件上进行运行和操作。
可靠性:该系统应用范围大,面对的在线用户人数和使用水平情况都比较复杂,对系统吞吐量和反应时间都有很高的要求,系统具有较强的可靠性,能够不间断运行,可以不间断的服务于教师和学生。
3.3 系统特色
作业管理系统在设计之时,选择b/s架构模式,之所以不考虑c/s架构模式,是因为,现在生产生活中运用b/s模式的软件系统十分多。用的人多的模式,对应后期的开发维护十分有利,而且b/s浏览器模式,可以减少客户下载客户端到电脑,这点对学生来说十分的便捷。学生可以随时随地打开浏览器访问系统,可以通过手机浏览器,平板和电脑等。
最后系统还需要考虑负载均衡,因为很多网站设计之时,过于简单,没有考虑后期大量增长的学生量,导致网站因为人数超负荷的访问宕机,所以我们需要设计出解决服务器压力的问题,选择队列技术进行技术的升级,保证系统的负载性能。

3.4系统顺序图设计
3.4.1登录模块顺序图
登录模块主要满足了管理员以及用户的权限登录,登录模块顺序图如图3-1所示。
在这里插入图片描述

图3-1 登录顺序图
3.4.2添加信息模块顺序图
管理员以及用户登录后均可进行添加信息操作,添加信息模块顺序图如图3-2所示。
在这里插入图片描述

图3-2 添加信息顺序图

第四章 系统设计

4.1功能结构
为了更好的去理清本系统整体思路,对该系统以结构图的形式表达出来,设计实现该学生作业管理系统的功能结构图如下所示:
在这里插入图片描述

图4-1 系统总体结构图
4.2 数据库设计
4.2.1 数据库E/R图
ER图是由实体及其关系构成的图,通过E/R图可以清楚地描述系统涉及到的实体之间的相互关系。在系统中对一些主要的几个关键实体如下图:
(1) 学生管理E/R图如下所示:
在这里插入图片描述

图4-2学生管理E/R图

(2) 分数统计管理E/R图如下所示:
在这里插入图片描述

图4-3分数统计管理E/R图
(3) 教师信息E/R图如下所示:
在这里插入图片描述

图4-4教师信息E/R图
(4) 作业管理E/R图如下所示:
在这里插入图片描述

图4-5作业管理E/R图

4.3 数据库设计
4.3.1实体关系图
数据库设计是开发中比较重要的一步,需要先设计整体的表,确定项目,必须要确定几张表,设计表的结构,表之间的关联关系等,只有这样才能保证系统的稳固性。数据库主要是为了存储整个项目的数据,确保数据的安全性。整个表都包含项目中实体的各个字段和属性,我们通常用概念性模型来设计即为E-R模型。
在这里插入图片描述

图4-6
4.3.2数据库表结构
建立数据库,其中包括以下表:
表名:examquestion
功能:客观题
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
paperid bigint 所属客观作业id(外键)
papername varchar 200 客观作业名称
questionname varchar 200 客观题名称
options longtext 4294967295 选项,json字符串
score bigint 分值 0
answer varchar 200 正确答案
analysis longtext 4294967295 答案解析
type bigint 客观题类型,0:单选题 1:多选题 2:判断题 3:填空题(暂不考虑多项填空) 0
sequence bigint 客观题排序,值越大排越前面 100

表名:exampaper
功能:客观作业表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
name varchar 200 客观作业名称
time int 测试时长(分钟)
status int 客观作业状态 0

表名:config
功能:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

name varchar 100 配置参数名称
value varchar 100 配置参数值

表名:zuoyetijiao
功能:作业提交
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
zuoyemingcheng varchar 200 作业名称
gonghao varchar 200 工号
jiaoshixingming varchar 200 教师姓名
tijiaozuoye varchar 200 提交作业
tijiaoshijian datetime 提交时间
xuehao varchar 200 学号
xueshengxingming varchar 200 学生姓名

表名:zuoyepigai
功能:作业批改
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
zuoyemingcheng varchar 200 作业名称
xuehao varchar 200 学号
xueshengxingming varchar 200 学生姓名
pigaizhuangkuang longtext 4294967295 批改状况
pingyu longtext 4294967295 评语
fenshu int 分数
fabushijian datetime 发布时间
gonghao varchar 200 工号
jiaoshixingming varchar 200 教师姓名

表名:zhuguanzuoye
功能:主观作业
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
zuoyemingcheng varchar 200 作业名称
tupian varchar 200 图片
zuoyewenjian varchar 200 作业文件
wanchengriqi date 完成日期
zuoyeyaoqiu longtext 4294967295 作业要求
gonghao varchar 200 工号
jiaoshixingming varchar 200 教师姓名
banji varchar 200

表名:xuesheng
功能:学生
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
xuehao varchar 200 学号
mima varchar 200 密码
xueshengxingming varchar 200 学生姓名
xingbie varchar 200 性别
touxiang varchar 200 头像
xueyuan varchar 200 学院
zhuanye varchar 200 专业
shouji varchar 200 手机

表名:users
功能:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP

表名:jiaoshi
功能:教师
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
gonghao varchar 200 工号
mima varchar 200 密码
jiaoshixingming varchar 200 教师姓名
xingbie varchar 200 性别
touxiang varchar 200 头像
xueyuan varchar 200 学院
banji varchar 200
zhicheng varchar 200 职称
dianhua varchar 200 电话

表名:fenshutongji
功能:分数统计
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
mingcheng varchar 200 名称
xuehao varchar 200 学号
xueshengxingming varchar 200 学生姓名
chengji varchar 200 成绩
fenshu int 分数
riqi datetime 日期
gonghao varchar 200 工号
jiaoshixingming varchar 200 教师姓名
banji varchar 200

表名:examrecord
功能:测试记录表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
username varchar 200 用户名
paperid bigint 客观作业id(外键)
papername varchar 200 客观作业名称
questionid bigint 客观题id(外键)
questionname varchar 200 客观题名称
options longtext 4294967295 选项,json字符串
score bigint 分值 0
answer varchar 200 正确答案
analysis longtext 4294967295 答案解析
myscore bigint 客观题得分 0
myanswer varchar 200 考生答案

第五章 系统功能实现

5.1管理员功能模块
管理员登录,管理员通过输入用户名、密码,选择角色并点击登录进行系统登录操作,如图5-1所示。
在这里插入图片描述

图5-1管理员登录界面图

管理员登录系统后,可以对个人中心、主观作业管理、作业提交管理、作业批改管理、分数统计管理、客观作业管理、作业名称管理、测试管理、学生管理、教师管理等功能进行相应操作,如图5-2所示。
在这里插入图片描述

图5-2管理员功能界图面
学生管理,在学生管理页面可以对索引、学号、学生姓名、性别、头像、学院、专业、手机等进行修改、查询、删除或新增等操作,学生管理页面如图5-3所示。
在这里插入图片描述

图5-3学生管理界面图

教师管理,在教师管理页面可以对索引、教师工号、教师姓名、性别、照片、职称、联系电话、学院等内容进行查询、修改、删除、新增等操作,教师管理页面如图5-4所示。
在这里插入图片描述

图5-4教师管理界面图

作业提交管理,在作业提交管理页面可以对索引、作业名称、科目、工号、教师姓名、提交作业、提交时间、学号、学生姓名等内容进行详情、修改、删除或新增等操作,作业提交管理页面如图5-5所示。
在这里插入图片描述

图5-5作业提交管理界面图

5.2教师功能模块
教师登录,教师通过输入用户名、密码、选择登录角色进行登录到学生作业管理系统后台,教师登录如图5-6所示。
在这里插入图片描述

图5-6教师登录界面图

教师登录到学生作业管理系统后台后,可以对个人中心、主观作业管理、作业提交管理、作业批改管理、测试管理等功能进行相应操作,如图5-7所示。
在这里插入图片描述

图5-7教师功能界面图

个人中心,在个人中心页面,教师通过输入教师工号、教师姓名、性别、照片、职称、联系电话、专业等内容来修改个人信息,也能修改登录密码,个人中心页面如图5-8所示。
在这里插入图片描述
图5-8个人中心界面图

5.3学生功能模块
学生登录,学生通过输入用户名、密码、选择登录角色进行登录到学生作业管理系统后台,学生登录如图5-9所示。
在这里插入图片描述

图5-9学生登录界面图

学生登录到学生作业管理系统后台后,可以对个人中心、主观作业管理、作业提交管理、作业批改管理、测试管理等功能进行相应操作,如图5-10所示。
在这里插入图片描述

图5-10学生功能界面图

个人中心,在个人中心页面,学生通过输入学号、学生姓名、性别、头像、学院、专业、手机等内容来修改个人信息,也能修改登录密码,个人中心页面如图5-11所示。
在这里插入图片描述
图5-11个人中心界面图

6 系统的测试

在设计系统和系统开发的中,我们每次都会产生错误,这些错误可能是:语法错误,还有就是系统报错出来的错误。当我们在编写代码的时候有些工具能够很容易发现然后进行及时的改正;但是系统报错的错误,自己很难发现,等报错出来时我们就要根据一定的规则进行更改。
作业管理系统完成以后,一定要对他进行测试。在对其在开发中,第一步就是对其惊醒分析需求和设计,从而得出一定的结论然后来确定我们需要测试的是什么。到底是系统测试有单元测试还是集成测试还是系统测试等等。
本次测试主要针对作业管理系统的各个功能进行一个全面的测试。
6.1 功能测试
此次测试主要针对用户和管理员进行测试,测试设计如下所示:
(1)登陆功能测试
管理员和用户共同使用一个登录端口,因此测试用例设计如表6-1所示。
表6-1 登陆模块功能测试用例
用例编号 测试用例描述 操作过程及数据 预期结果 测试结果
D001 以用户身份登录 按照系统要求填写用户登录名和密码信息点击“确定” 系统跳转至前台首页 通过
D002 以管理用户身份登录 按照系统要求填写管理用户登录名和密码信息点击“确定” 系统跳转至管理用户可使用的后台首页 通过
D003 以未注册身份登录 按照系统要求填写并未注册登录名和密码信息点击“确定” 系统提示用户名或密码错误 通过
D004 密码长度小于6位 输入的密码与确认密码长度小于6位,其余选项正常填写 系统提示用户密码长度不能小于6位 通过
D005 用户名为空 用户没有填写用户名 系统提示用户名未填写 通过
(2)用户管理模块功能测试
用户功能测试包括用户登录、填写密码、用户信息。测试用例设计如表6-2所示。
表6-2 管理员功能测试用例
用例编号 测试用例描述 操作过程及数据 预期结果 测试结果
D006 填写用户名 登录页面中,未填写用户名 系统提示添加用户名 通过
D007 填写密码 登录页面,未填写密码 系统提示填写密码 通过
D010 用户信息 查看用户信息详情,点击下单按钮 显示下单成功 通过
(3)管理员管理模块功能测试
管理员的功能测试是所有测试环节最重要的一部分,测试用例设计如表6-3所示。
表6-3 管理员功能测试用例
用例编号 测试用例描述 操作过程及数据 预期结果 测试结果
D011 填写用户名 登录页面中,未填写用户名 系统提示添加用户名 通过
D012 填写密码 登录页面,未填写密码 系统提示填写密码 通过
D013 添加用户信息分类 添加用户信息分类,输入用户信息分类的基本信息 添加成功 通过
D014 修改用户信息 修改用户信息,点击修改按钮,完成操作 修改成功 通过
D015 添加用户信息 添加用户信息,输入用户信息的基本信息 添加成功 通过
(4)更改密码功能测试
更改密码是所有角色都必须有功能,测试用例设计如表6-4所示。
表6-4 更改密码功能测试用例
用例编号 测试用例描述 操作过程及数据 预期结果 测试结果
D016 以管理员身份更改密码 以管理员身份到用户密码更改页,填写旧密码、新密码、确认新密码后点击确认 系统提示更改成功 通过
D017 确认新密码和新密码不一致 到密码更改页后,确认新密码和新密码不一致,其余保持正常 系统提示密码不一致 通过
D018 旧密码和当前登录密码不一致 到密码更改页后,旧密码和当前登录密码不一致,其余保持正常 系统提示旧密码错误。并返回登录页 通过
D019 旧密码和新密码一致 到密码更改页后,旧密码、新密码和确认新密码填写一致 系统提示旧密码和新密码一致 通过

7 总结

针对当下越来越多老师和学生做此系统的需求量增大,为用户提供便捷而设计的此系统,在我们开发系统之初时,设计了系统双端模式,即为前端和后端管理端,前端有用户功能模块,后端主要为管理员登陆的,管理整个系统的功能和数据。有两大角色,构成一套完整的作业管理系统。在系统初期设计阶段,我们需要参考其他类似网站,进行整体的功能需求和性能需求的梳理和设计。首先,根据设计,前端用户功能包括注册、登陆、个人信息的查询,修改和删除等功能。最后这个系统在完成之后经测试有不少的bug和设计的缺陷,导致系统运行时有很多的不足,我们需要根据这些问题,认真研究,好好解决问题,不断的弥补缺陷,改进系统,优化体验。
在优点方面上,为用户提供一个平台,此系统操作方便,没有经验的用户,简单培训就会使用系统,系统的界面简洁,看起来非常美观,操作性十分强,个性也独特。另外此系统是个非常实用的网站,从系统的设计之初,我们便考虑到系统如何吸引用户,为了获得的更多的用户资源,我们便参考网上众多的类似网站,取其精要,去其缺点,便设计了界面简洁,操作简单,功能完善的系统。在缺点方面上,系统是单一独立运行,没有能力抵抗网络病毒恶意的攻击,网络访问负载能力有限,不能抵抗同一时间段众多用户的浏览,所以我们要加大服务器的缓存和配置。另外吸取其他类似的网站缺点,杜绝类似的问题在生产运用中提现。但是系统有很大不足,例如功能不够完美,有时候会出现bug,导致系统不能正常的访问,还有界面不够高大上,不够美观,总感觉给人的视觉体验不够好。其次没有运用很好地缓存技术,当同一时间段,在线客户众多,系统会出现卡顿,甚至会严重到宕机。所以需要通过优化系统代码来提高客户的体验,杜绝客户体验不流畅,导致客户流失。在客户访问量问题上,我们利用最新技术,比如缓存机制等,来解决超载的客户。另外,在前端技术方面,我们采用前后端分离技术,实现前端运行和后端运行的分离,除此之外,系统还有其他体验不佳之处,我们需要针对之类的问题,重新构建网站的架构,选择适合系统功能需求的设计架构方案,让系统运行更加的完美。

致谢

过程永远比结果重要。毕业设计是大学生活中最为浓墨重彩的一笔,在这个过程中不仅学到更为全面的书本和实践知识,更让我感受到了浓浓的同窗之情及师生情。虽然大学几年间做过不少实验作业,但是独立完成这样一个操作系统还是第一次,遇到困难时理所当然,我也有所心理准备,但是超出自身能力的部分还是需要寻求老师及同学的帮助。在此,我衷心地感谢我的指导老师,可以说,没有老师我就不能顺利完成这次设计。他总是在一筹莫展的时候为我指引方向。比如在开题报告,我的指导老师就细致地指导我该怎么有逻辑地将自己的想法和做法表达清楚,在此由衷感谢他。在设计的过程中,老师百忙之中也乐于给予我指导,不管多晚给教师发消息,不管是不是上班时间去教师办公室寻求帮助,他总能在第一时间对我施以援手。老师给的意见总是一针见血地指出我设计及论文中的不足,并举例详细说明我的改进方法,不得不佩服他的学术水平及教学水平。在我开始着手实现这个设计的时候,通过需求分析及可行性分析对该系统有了较为浅显的认识;但是在我真正开始实现时发现事情并没有这么简单。任何成功都不是一蹴而就的,就算是一个简单的毕业设计也需要日积月累的知识和经验。于是,我便去寻求老师和同学的帮助,这也使得我得以从不同的角度重新考虑我的设计。终于,这个系统在我内心有了雏形。在真正实现这个设计的过程中,学习新知识是必定的,同时那些由于时间关系或者本来就没有掌握牢固的知识也有了进一步巩固的机会。然而最重要的是了解到如何作为一个开发人员,以开发人员的思维来看待软件开发的步骤和方法策略。
本次毕业设计的完成预示着大学时代的句号,在这个设计过程中,我收获到的绝不仅仅是做课题过程中要到的知识,更多的是同窗情谊和师生情谊,最重要的是做任何事情都要具备的认真态度,以及真正职业的思考方式方法。
最后真心祝愿老师同学们前程似锦!工作顺利,祝母校越办越好!

参考文献

1]张海藩 网站管理系统的分析与设计[D].厦门大学,2016
[2]丁宝康 信息管理系统[D].电子科技大学,2018
[3]孙印杰 信息管理系统的设计与实现[D].电子科技大学,2017
[4]马宁 基于Python的网站管理系统分析与设计[D].云南大学,2017.
[5]求是科技 Python信息管理系统开发实例导航[M].人民邮店出版社.2015
[6]杨宗志 Python入门与实作[M].科学出版社,2018
[7]曹锰 舒新峰 C#与Python系统设计[M].西安交通大学出版社,2017
[8]虞益诚 SQL Server 2000[M].中国铁道出版社,2019[9]董征宇 我国中小企业电子商务盈利策略探析[J].中国商贸,2018,22:94-95
[10]张爱军 电子商务技术的创新发展趋势[J].电脑知识与技术,2016,26:61-67
[11]马桂林 中小音乐企业经销商电子商务管理系统的设计[J].价值工程,2018,23:148-149
[12]蔡翔宇 电子商务与计算机网络应用[J].计算机应用研究,2017,2:366
[13]西尔伯沙茨(Silberschatz.A.) 计算机科学丛书:数据库系统概念(原书第6版)[M]. 机械工业出版社,2017,03..
[14]萨师煊 王珊 数据库系统概论[M].北京:高等教育出版社,2017:10-180.
[15]陈刚 Eclipse从入门到精通[M].(第2版).北京:清华大学出版社,2018:17-380.

  • 19
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 学生管理系统是一个用Python编写的大作业项目。该系统旨在帮助学校或学院管理学生的信息和日常事务。 首先,学生管理系统可以实现学生信息的录入和管理。教师或管理员可以通过系统添加学生的基本信息,如姓名、学号、性别、年龄等。系统还可以记录学生的课程成绩、出勤情况以及奖惩记录。这样一来,学校可以方便地查找和管理学生的信息,以便更好地了解学生的学习情况和表现。 其次,学生管理系统可以帮助教师进行课程安排和管理。教师可以通过系统录入课程信息、作业要求和考试安排等。学生可以通过系统查看课程表和作业要求,同时可以将作业通过系统提交给教师进行批改。这样,教师可以更加方便地管理课程、批改作业,并及时与学生互动和交流。 此外,学生管理系统还可以实现学生的请假管理和考勤管理。学生可以通过系统请假,教师和管理员可以审批请假申请。同时,系统还可以记录学生的出勤情况,并生成考勤报表。这样一来,学校和家长可以更好地了解学生的请假和出勤情况,及时跟进学生的学习和生活状况。 总之,通过Python编写的学生管理系统可以帮助学校或学院实现对学生信息的录入、管理和查询,提高教学质量和学生管理水平。同时,学生也可以通过系统方便地了解课程安排、提交作业和请假申请。这样一来,学校、教师、学生和家长之间的沟通和协作将更加高效和便捷。 ### 回答2: 学生管理系统是一个用Python编写的大型项目,它可以帮助学校或教育机构更高效地管理和维护学生的信息。这个系统可以实现学生信息的录入、查询、修改和删除等功能,还可以生成学生的成绩报表和统计信息。 在学生管理系统中,我们可以通过命令行交互界面或图形用户界面来实现与用户的交互。用户可以输入学生的基本信息,如学号、姓名、性别、出生日期和联系方式等,并对这些信息进行操作。 系统还可以支持学生的课程信息管理。可以录入学生所选修的课程,包括课程名称、授课教师、上课时间和地点等。系统可以计算学生的平均成绩,根据成绩进行排名,并生成课程报表。 此外,学生管理系统还可以实现学生请假管理。学生可以申请请假,系统会记录请假时间和理由,并显示请假状态。教师可以审批学生的请假申请,系统会自动生成请假报表。 当然,为了保证系统的安全性,我们可以添加用户登录和权限管理功能。只有授权的用户才能访问和操作系统,防止未经授权的人员进行恶意操作。 总之,学生管理系统是一个非常实用和有益的项目。它能够帮助学校或教育机构更好地管理学生的信息,提高工作效率。通过使用Python语言进行开发,我们可以灵活地编写功能模块,使系统具有良好的扩展性和可维护性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_1406299528

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值