基于Django框架的教学管理系统的研究与实现

2018-10-09 03:00雷晓薇
电子设计工程 2018年18期
关键词:管理系统数据库模块

雷晓薇

(长安大学陕西西安710000)

信息技术的进步和计算机的不断发展,为体育教学的网络管理提供了可能,能够有效推动高校体育教学管理从传统模式向网络教学和管理模式转变,从而提供灵活、先进、个性化的教学方式,有效提高高校体育教学与管理的效率[1-3]。然而,尽管网络教学相较于传统教学具备诸多的优势,由于体育教学的实践性和互动性要求,以及体育学科相较于普通教学科目的不被重视,国内体育的网络化教学与管理进程较为缓慢,需要引起体育教育工作者的广泛重视[4-6]。

故针对当前体育教学管理模式相对落后的问题,本文基于B/S结构的Django框架,采用流媒体和MySQL数据库技术,设计并开发了一套体育教学管理系统。该系统包含了信息发布、课程在线点播、交流与答疑、课程管理、成绩查询等功能,能够满足体育教学和管理的需求。经过测试,该系统运行良好,各项功能实现正常,能够有效提高教学和管理效率。并能提供灵活而个性化的学习方式,具有一定的实用价值。

1 理论和技术分析

1.1 Django框架

Django框架实质为基于Python脚本语言的Web应用程序框架(开源),集成了较多的第三方插件和通用类库,能够有效减少重复编程。因此,其具有较好的维护性和可拓展性[7-8]。此外,该框架具备较多可直接使用的通用模块(用户、登录等)和标准数据类型,能够有效缓解Web开发过程中所遇到的低效率问题,也是文中体育教学管理系统的基本框架。

值得注意的是,Django框架支持模型(Model)-模板(Template)-视图(View)的MTV设计模式,如图1所示。其中,模型对应的是数据存取层,主要用于数据相关事务的处理;模板对应的是业务逻辑层,主要用于表现相关决定的处理;视图对应的是表现层,主要用于存取、调用模型及相应的逻辑。

图1 Django框架的MTV设计模式

1.2 B/S结构

B/S结构指的是软件体系的浏览器/服务器结构,是客户机/服务器结构的优化与改进[9]。具体而言,服务器端被细化成了数据库和Web服务器,客户端借助浏览器对系统应用进行操作。具体的事务处理则是放在了后台的数据库和Web服务器中,其三层结构如图2所示。从图中易知,B/S结构分为表示层(用于界面引导,实现用户输入、服务请求发送和结果显示)、业务逻辑层(用于业务逻辑的执行和数据库请求的发送)以及数据处理层(用于数据逻辑与存储过程的执行),具有开发成本低、升级维护简单、跨平台支持、软硬件要求低等优点。

图2 B/S结构示意图

1.3 MySQL数据库

MySQL数据库是由数据库标准语言SQL,基于Linux操作系统开发的关系型数据库管理系统。其能够存储用户信息(注册用户、密码等)、配置信息(模板、管理权限配置等)、内容链接(图片、视频等)等数据,具有体积小、成本低、移植性强、CPU利用率高(多线程和数据并行读写)、查询速度快、支持协议和操作系统多等优点。因此,被广泛应用于中小型网站的数据库构建,也是本文选用的数据库技术[10]。

1.4 流媒体技术

流媒体技术借助网络将压缩处理后的音频、视频、动画、文字等多媒体资源上传给网站服务器,以供用户在网站上进行直接浏览和点击播放。从而有效避免了传统先下载后播放的多媒体观看方式,具有启动延迟小、系统缓存需求低、实时传输等优势,在网络教育、宽带视频点播、互联网直播等领域均发挥着重要作用[11]。

在流媒体技术中,FMS服务器为用户间的交流和互动提供了平台,既整合了流媒体的视频直播(点播)、视频博客、在线视频交流等特性。同时也加入了快捷便利的开发环境,具有跨平台、可扩展、性能强等优势,被本文系统所使用[12]。借助FMS服务器,可对各种体育教学相关的多媒体文件进行处理,结合各类应用程序服务器,使用户(管理和使用用户)能够进行实时交流与互动,满足体育教学管理系统的教学、管理需要[13-16]。

2 系统可行性和需求分析

2.1 系统可行性分析

从经济可行性角度分析,目前各高校基本均建立了一定规模的校园网络和课程管理系统,且运行可靠、稳定。因此,在此基础上构建体育教学管理系统所需投入的成本(研发以多媒体课程制作)较低。此外,该系统的建成可减少人工教学和场地成本,并能够使学生根据兴趣爱好学习体育技能,具有较高的经济效益和社会效益。

从技术可行性角度来看,Django框架、MySQL数据库和流媒体技术发展至今已高度成熟,技术难度低,风险小。

2.2 系统需求设计

从功能性需求角度看,本文体育教学管理系统必须满足信息发布(对体育学科信息进行实时发布)、课程在线点播(供登录用户按需对课程进行点播和观看)、交流与答疑(供学生实时或延时地与教师进行交流,解决体育学习中的疑惑)、教学资源上传(供教师上传教学课程、材料等资源)、课程管理(用于制定课程计划,提供各类课程)、在线选课与成绩查询(供学生选课、教师成绩录入及学生成绩查看)、数据分析(供教师分析学生成绩,了解学生学习效果,为体育教学的课程管理提供支持)、系统管理(供管理员管理系统信息,包括权限管理、用户管理和系统资源管理等)8个功能需求,如图3所示。

事实上,许沁想错了。许沁在葛局长的心中,早已没有任何位置了。当然这并不是位置的问题,而是为官之道。在葛局长看来,许沁是条狗,是条随时会咬人的狗,是条翻脸不认人的狗。一旦受到威胁或伤害,她会逮谁咬谁。葛局长不能不严加提防,因而断然割断了和许沁的任何联系。

图3 本文体育教学管理系统的用例示意图

此外,从非功能性需求来看,系统还需满足易用性、美观性、安全性、可扩展性与高性能等需求。

3 系统设计

3.1 系统功能设计

本系统的功能结构,可见下图4所示。其分为信息发布(包括学科动态和最新公告)、教师管理(包括课程设置和成绩管理)、学生管理(包括在线选课和成绩查询)、在线课堂(包括视频点播、在线提问和答疑)、系统管理(包括用户管理、权限管理和资源管理)共5个部分。

图4 本文系统的功能结构示意图

3.2 系统应用架构设计

本文的体育教学管理系统的程序架构,从上到下依次为:表示层(以Web网页的形式将交互界面的信息显示给用户,并接受用户的数据输入,从而实现用户注册、登录、访问等操作);应用层(用于业务规则制定和流程的实现,替代用户与数据库的直接交互,增强程序扩展性和可移植性,从而实现学生管理、教师管理、系统管理、信息发布等功能;应用支撑访问层集成了各种资源,为应用层提供安全认证、数据交互、资源配置管理等服务,并借助数据库的修改、更新、删除等操作,为应用层提供所需的数据支持,如下图5所示。此外,在应用支撑层下还有基础设施层(由服务器和相应的网络构成)。

图5 本文系统的应用架构示意图

3.3 数据库设计

本文体育教学管理系统的数据实体有:班级、学生、教师和课程,对应的数据库实体-属性(E-R)示意图见图6所示。其中,教师实体包含了教师编号、姓名、性别、籍贯、职称等内容;学生实体包含了学生学号、姓名、性别、籍贯等内容;班级实体包含了班级编号、名称、专业等内容;课程实体包含了课程编号、类别、名称等内容。此外,学习关系中还包含了学号、课程编号及成绩;答疑关系中包含了学生与教师编号、提问和答复内容。

图6 本文系统的E-R示意图

4 系统实现和测试

4.1 系统实现

在开发过程中,本文选用Linux操作系统作为开发系统,选用MySQL 2.5.6作为数据库,选用Django 1.3作为支持环境,选用Google Chrome作为本系统的浏览器。

由于本系统各模块存在较大的共性,故仅针对系统登录模块、在线点播与答疑模块、用户管理模块、课程管理模块的实现进行阐述与分析。

4.1.1 系统登录模块

图7 本文系统登录功能实现界面图

在用户选择用户类型并登录后,内部程序根据数据库数据比对账户信息和类型,并将判定结果与相应的界面呈现给用户。由于该系统面向的学生用户居多,故系统登录时会优先比对学生用户的信息;其次,比对教师用户的信息。最后,比对系统管理员用户的信息。其部分实现代码如下所示:

由于学生用户需要经过注册和审核通过后才能使用该系统,故提供了用户注册功能。其注册界面的实现,可见图8所示。

4.1.2 用户管理模块

图8 系统登录功能中用户注册界面的实现图

该模块主要实现的是用户信息(账户、密码等)和权限的管理操作,根据用户类型的不同提供不同的界面供用户进行选择操作,如图9所示。系统管理员可在用户管理界面添加、修改与删除教师及管理员账户,并为学生分配权限。

图9 用户管理模块界面实现图

相应的部分实现代码为:

4.1.3 在线点播与答疑模块

该模块主要提供点播和答疑功能,前者为学生用户提供了各类体育教学视频课程,包括篮球、足球、乒乓球等视频课程;后者为学生用户在学习过程中的疑惑解答提供了途径,加强了教师与学生之间的互动和交流,满足体育教学的需求。相应的界面实现图,如图10所示。易知,学生用户可在“视频搜索”框中对所需课程视频进行搜索,并通过点击播放按钮进行学习。此外,学生用户可在右侧的答疑对话框中与教师进行交流,解答课程学习中所遇到的问题。

图10 在线点播与答疑模块界面实现图

4.1.4 课程管理模块

该模块主要用于教师的课程管理(课程教学计划制定)和学生的选课(选修或必修课),其界面实现图见图11和12所示。从图11中可以看到,教师可按照教学大纲需要对各体育课程进行增加、编辑、删除等操作;在设置完成后,也可以借助“课程查询”功能对所设课程信息进行查看。从图12中可看出,学生在登陆系统后,可以根据兴趣与教学安排对课程进行选择或取消操作;在选课完成后,也能够借助“课程查看”功能对所选课程信息进行查看。值得注意的是,只有在教师制定完课程后学生才能进行选课。

图11 课程管理模块(教师课程设置)界面实现图

4.2 系统测试

本文主要采用黑盒测试方法,对所设计的体育教学管理系统的功能进行了测试。其中,系统测试的硬件部分(电脑)选用的是Core i7处理器,8 GB内存和1 TB硬盘,软件部分则与开发软件相同。

图12 课程管理模块(学生选课)界面实现图

依次对用户登录、用户注册、用户管理、在线点播、在线答疑、课程管理、成绩管理进行了测试。结合测试结果可发现,本文设计的体育教学管理系统运行良好,具有较高的稳定性,能够持久运行,并满足管理系统最基本的需求。此外,各项功能均可正常运行,能针对不同输入做出正确的判断和操作,较好地满足了设计要求。

5 结束语

针对当前体育教学管理模式相对落后的问题,基于B/S结构的Django框架,结合流媒体和MySQL数据库技术,本文设计并开发了一套体育教学管理系统。该系统包含了信息发布、交流与答疑、课程管理、课程在线点播、成绩查询等功能,在帮助学生自主和个性化学习体育知识的同时,满足体育教学对师生互动的需求,提高教学质量与管理效率。经过测试,该系统运行平稳,各项功能实现正常,能够满足新时代对体育教学及管理的要求。

猜你喜欢
管理系统数据库模块
28通道收发处理模块设计
“选修3—3”模块的复习备考
基于James的院内邮件管理系统的实现
基于LED联动显示的违停管理系统
海盾压载水管理系统
数据库
数据库
数据库
数据库
基于RFID的仓储管理系统实现