摘 要: 基于校园网,采用网络与数据库技术,研发出体育课在线选课系统,实现的功能包括:学生在学期初上网选择运动项目与课程班,随后快速编班与打印课程班表,教师在学期末快速输入考核成绩到学院教务管理系统等。该系统很好地解决了体育教学中遇到的麻烦,使学生、教师和教学管理人员都很满意,收到了很好的效果。
关键词: 体育教学;在线选课;校园网;数据库技术
体育课是高校的一门重要的公共课程,是体育教学的基本组织形式,对于增加学生的体育与保健知识、提高体育运动的基本技术、技能、提高学生的身体素质和运动技术水平,都具有重要的作用。近年来,为了提高学生对体育课的兴趣,提升体育课的教学效果,学院体育部采用了让学生自选运动项目,然后以此为基础编班上课的组织方式。这种做法有着明显的优越性,学生对自己选择的运动项目有兴趣。但是,这对体育部的工作带来了麻烦,因为选课与编班十分费事。每学期初,要求学生到体育部从多种运动项目中选择一种感兴趣的项目,还要选择在时间上不与已安排的其他课程相冲突的体育班(一种运动项目需要开设多个班,每个班的人数不能超过规定数),然后根据学生选课情况排出课程班表。由于学生人数多,相关工作十分繁杂,工作量很大。每到新学期开始时,学生们到体育部排队选课,往往要花很多时间,体育部的工作人员工作量加大,导致上课时间推迟。
随着办学规模的扩大,学生人数逐年增加,选课的工作量不断加大,体育部工作压力也愈来愈大。在这种情况下,考虑到用计算机与网络技术来解决这一难题。为此,申报了一个院级研究课题“体育部选课系统的设计与实现”。经过仔细的需求分析、总体设计、数据库设计和详细设计与实现等阶段的工作,较好地完成了课题任务,实现了预定目标。现在,该选课系统运行良好,使相关工作的效率大大提高。
本文就“体育部选课系统”的设计与实现中的主要技术问题进行讨论,包括体育部网站的开发、在线选课系统的设计、后台数据库设计、系统的安全性设计等几个部分。
1 体育部网站的开发
体育选课系统应当在网络环境中运行,让学生能在任意一台联网的计算机上进行选课操作。因此,该系统需要网站的支持。系统设计方案如下:在校园网的环境中开发体育部二级网站,将体育选课作为该二级网站的一个重要的功能模块[1]。随着计算机网络技术与数据库技术的密切结合,网站制作趋向灵活、实用、便捷与快速,为网上选课系统的开发提供了极大便利。从另一角度说,网站作为单位的窗口,有利于展示单位的面貌和内涵建设情况,树立良好形象,可进行信息、通知与新闻的发布,促进内部管理和实现办公自动化,可促进体育教学、体育运动和体育竞赛的开展[2]。
通过总体设计,体育部二级网站包括网站首页、部门简介、课程介绍、教师团队和其他等多个栏目,在每个栏目下设置其下级网页。该二级网站的框图如图1所示。其中,“在线选课”为一个管理信息系统,包括“学生注册”、“登录选课”和“后台管理”等功能模块;“其他”栏目下设有“信息与通知”、“新闻发布”、“学院主页”和“友情链接”等内容。
该网站利用网页设计软件Flash、Dreamweaver、Asp和Access数据库进行开发[2-3],其主页设计美观大方,体现出学院体育部的形象与特色,还能动态发布文字图片等信息。
2 在线选课系统设计
“在线选课”功能只有在网络环境下才能实现,因此将“在线选课系统”作为一个主要的功能模块置于体育部网站系统之中,利用Access作为数据库,设计学生与课程信息总表,将需上体育课的学生信息存入其中,包括学号、姓名、性别、身份证号、系别、班级等信息项,再加上课程信息表和课程班表等辅助数据库表。以此为基础,设计出学生注册与登录、学生选课、课程班调整与课表输出、考核成绩录入等程序模块。下面分别介绍这些程序模块及其设计。
2.1 学生注册与登录模块
为了保障系统能安全稳定地运行又方便用户操作,特设置用户身份认证功能:学生第一次登录时,要求在登录对话框中输入其学号、姓名和系统给出的初始密码,当找到对应的记录时出现修改密码对话框,要求用户输入要设置的密码,成功设置密码后即可进行选课操作,选课后自动退出系统。如果学生对所选课不满意,可再次登录重选,这时就要输入自己设置的密码了。让用户设置密码的目的在于防止有人利用他人的信息随意修改已选课程,搞乱正常选课。
2.2 学生选课模块
学生登录后,进入如图2所示的选课界面。在此界面中,可通过点击“课程简介”按钮或“[]”中的课程名按钮了解课程的相关知识与特点;也可找到一个课程名与上课时间都适合自己的课程,点击“选课”字样可达到选择该课的目的(每生限选一门)。被选择的课程对应栏中的选课人数将自动加1。如果某课程栏中的“选课”已变成“已满”,如图2中星期二的“排球”课为“已满”,则该课程就不能再选了。
2.3 课程班调整与输出模块
在选课过程中,难免出现某些异常情况,比如:(1)有的学生选了一门课后觉得不太满意,而为重新选课再次登录时忘记了自己设置的密码。为了方便这部分同学登录,系统提供帮助回忆密码的功能,即通过输入身份证号等信息获得密码信息;(2)少数同学选课较迟,自己感兴趣的项目名额已满,剩余的项目都不愿意选,这种情况下,通过系统管理员修改相关课程班学生数上限来解决问题。
当选课过程结束后,可通过点击[课表输出]菜单,显示或打印每个课程班表(包括项目名称、任课老师、上课时间和学生名单等信息)。在打印输出全部课表的基础上,管理人员对课程班信息表进行必要的检查与调整,经体育部领导审查批准后,即可按课程班信息表组织学生上课。
2.4 考核成绩录入模块
每个学期末,各个任课老师都要对自己所任课程班学生进行考核,并将学生成绩录入到学生信息表中。对于任课老师来说,最方便的是按体育课程班学生顺序送入成绩。但是,体育课程班的学生可能来自不同系的不同班级,故成绩录入课程班表后,还需转入按学号顺序编排的学生信息表,以便导入学院教学网络管理系统。
2.5 后台管理模块
该模块是供管理员进行后台管理的,其操作包括:(1)添加、修改与查询教师、学生和课程的相关信息; (2)发布选课时间窗口,开通选课功能,查询学生选课进展情况;(3)显示或打印课程班信息表;(4)录入考核成绩等。
系统还提供管理员设置各个课程班学生数上限的功能。当某门课程班的人数达到上限时,选课界面中的“选课”字样变成“已满”,颜色由蓝变为红,表示不能再选该班了。
3 后台数据库设计
为了全院学生能在规定的时间内,通过网络选择不同体育项目对应的课程班,为了实现输出课程信息表、输入学生考核成绩等多项功能,系统采用Access作为后台数据库,设计出如下数据库表[4]:
(1)学生与课程信息总表,设有学号、姓名、性别、入学年份、系别、专业、班级、密码、课程号、考核成绩、身份证号和籍贯等字段。其中的学生信息主要来自学院的学籍管理系统,“密码”的初始信息由系统自动设置,并在学生登录后由学生本人修改而得到各自的密码,“课程号”与“课程名”信息来自课程信息表,“考核成绩”字段的信息是在学期末由课程班信息表转入的。
(2)课程信息表,设有课程号、课程名、课程班号、上课时间和授课教师等字段,用于保存各体育课程的相关信息,由系统管理员输入。
(3)课程班信息表,设有课程号、课程班号、学号、姓名和考核成绩等字段,分别用于保存各个课程班及选择该课程班的学生的相关信息。其中,“学号”、“姓名”字段的信息来自学生选课,“考核成绩”由任课教师在学期末输入。
4 系统的安全性考虑
网站的可靠性与安全性问题是一个较为复杂的系统工程。本网站系统除了可能遇到一般的攻击外,由于在每学期初的较短时间内有数千名学生集中访问,难免出现误操作和有意乱操作等情况,可靠性与安全性问题更为突出。因此,应尽一切可能采取有效措施,去阻止各种恶意的访问和操作,把不安全的因素降到最少。本系统安全性措施包括以下几个方面:
(1)在服务器端安装最新的防病毒软件和防火墙,并经常用软件补丁修补系统漏洞,从服务器端有效提高系统的安全性。
(2)后台管理模块采用密码与验证码来防止非法登陆。后台登录者应具备管理员的权限,故系统必须提供设置管理员密码的功能。而由于一般密码不难用穷举法(即暴力破解程序)破解,安全性不高,故本系统还加上了验证码。验证码是利用servlet随机产生而无法预料的,可有效防止通过暴力破解管理员密码来非法登录。
(3)选课模块采取必要安全防范措施。选课模块是本系统中最容易受到攻击的部位,需要防止有人反复多次选课,特别要防止以虚假身份多次登录选课的行为。因为如果个人多次登录会加重系统的负担,甚至使系统瘫痪;而个人多次选课可能使系统中产生大量虚假信息,导致选课结果无用。为防止这些违规行为,可采用注册、设置登录密码等措施,对参与选课的人进行在籍学生身份验证,并限制每个学生的登录次数。同时,在学生重新选课时,采用替换办法,以后一次的选课代替前次选的。
(4)禁止网络直接资源访问。网络直接资源访问是指通过统一资源定位器(URL)绕过权限认证访问网站的后台程序。在网站使用过程中,可能有人通过浏览器直接对后台asp文件进行访问,因而对系统构成威胁。为禁止所有用户的直接资源访问,采用当前主流技术,在Web应用中创建一个从不使用的角色NeverUsedRole,将所有的asp资源文件配置为必须具有该角色才能访问。由于没有任何用户能成为该角色,也就无人能对后台资源直接访问了。
经过对体育选课系统各项功能的仔细需求分析、系统总体设计、数据库设计、详细设计和代码实现等各阶段工作,较好地实现了各项功能和安全性要求。上学期和本学期开学初,经受了七千多名学生在较短时间内集中上网选课的考验,并使编班、打印课程班表和期末考核成绩输入到学院教务管理系统等工作十分快捷。实际使用表明,系统工作稳定,其可靠性与安全性也很好。
参考文献
[1] 马伟,华驰.动态网页设计与制作[M].北京:机械工业出版社,2010.
[2] 孙晨霞.数据库应用技术[M].北京:北京邮电大学出版社,2010.
[3] 丁慧.Dreamweaver行为功能的分析与实现[J].电脑知识与技术,2008(11):1210-1211.
[4] 高玉喜,贾涵越.高校二级网站的开发与研究[J].长春师范学院学报(自然科学版),2008(12):43-45.