网络实验选课系统的设计与实现*
2010-10-13宋玉厚朱榜芹鞠传宝山东大学威海分校实验室与设备管理处山东威海6409山东大学威海分校后勤管理处山东威海6409山东大学威海分校商学院山东威海6409
乔 威,宋玉厚,朱榜芹,鞠传宝(.山东大学威海分校 实验室与设备管理处,山东 威海 6409;.山东大学威海分校 后勤管理处,山东 威海 6409;.山东大学威海分校 商学院,山东 威海 6409)
网络实验选课系统的设计与实现*
乔 威1,宋玉厚1,朱榜芹2,鞠传宝3(1.山东大学威海分校 实验室与设备管理处,山东 威海 264209;2.山东大学威海分校 后勤管理处,山东 威海 264209;3.山东大学威海分校 商学院,山东 威海 264209)
本文针对传统实验教学中的弊端,介绍山东大学威海分校打破按固定班级组织教学的形式,采用全方位开放式的实验教学模式,设计开发了基于ASP.NET的网络实验选课系统,为学生提供更加广泛、自主、开放的选择空间。概述了网络实验选课系统的技术基础、功能设计、部分功能实现及系统特点。多年的实践证明:该系统大大提高了开放式实验教学的质量和效率,激发了学生的自主学习热情,减轻了实验教师的工作量,实现了实验室资源效益最大化。
实验教学;网上预约;ASP.NET
实验教学是高等学校教学过程中的重要组成部分,对于学生实践能力的培养和创新意识的形成起着至关重要的作用。[1]近几年来,在省级实验教学示范中心建设过程中,山东大学威海分校打破传统实验课教学模式,改革实验教学内容,全面开放实验室,积极推进全方位开放式实验教学模式。
全方位开放式实验教学模式有效地解决实验资源与学生公共时间的矛盾。开放式实验教学实施需先进的信息管理平台做支撑,基于ASP.NET技术开发设计的实验选课系统,使学生通过预约方式大大提高开放实验的准确性和便捷性。
一、系统技术基础
ASP.NET是一项功能强大的、非常灵活的服务器端技术,用于创建动态Web页面。[2]网站导入服务器端动态网页ASP.NET技术,可以方便地获取底层数据库的访问功能,从传统静态页面的重复设计中解放出来,并能够做到实时更新、实时处理。.NET Framework是用于创建所有应用程序的巨大工具箱,ASP.NET作为构成.NET Framework的技术组件之一,相对于过去以服务器端为基础的动态网页技术,有以下几项革命性的突破:(1)面向对象技术的引入,发展出以对象为基础的服务器控件,使ASP.NET网页开发人员可以通过服务器端的程序代码直接控制浏览器所呈现的HTML标签对象。(2)ASP.NET本身会自行针对状态进行维护,网页设计人员不需要处理状态维护的相关细节。(3)ASP.NET支持多语言编程模式,如:C#和VB.NET。本系统选用C#来开发编程。
实验选课系统需要进行分层次的设计,可以借助ASP.NET的代码隐藏技术将用户界面和业务逻辑代码分离。在业务逻辑中,把对 Word读写文档的操作封装成Word操作对象,把对数据库的操作封装为数据操纵对象,然后由数据操纵对象通过ADO.NET对数据库(数据源)进行读写。选课系统层次结构如图1所示。
访问数据库的ADO.NET提供了平台互用性和可伸缩的数据访问。由于传送的数据都是XML格式的,因此任何能够读取XML格式的应用程序都可以进行数据处理。[3]
ADO.NET通过数据处理将数据访问分解为多个可以单独使用或一前一后使用的不连续组件。ADO.NET包含用于连接到数据库、执行命令和检索结果的.NET Framework数据提供程序。可直接处理检索到的结果,或将其放入ADO.NET DataSet对象,以便与来自多个源的数据或在层之间进行远程处理的数据组合在一起,以特殊方式向用户公开。ADO.NET DataSet对象也可以独立于.NET Framework数据提供程序使用,以管理应用程序本地的数据或源自XML的数据。如图2阐释了ADO.NET结构框架。
二、系统功能设计
实验选课系统主要面向开设实验课程的的学生、相关的授课教师和实验中心管理人员使用,由选课管理子系统和教学资源子系统组成。选课管理子系统功能主要分三部分:学生选课模块、授课教师管理模块和管理员模块。[4]教学资源子系统主要分:实验室资源模块、实验指导模块、实验教师信息模块。系统功能结构如图3所示。
1.学生选课模块
在选课模块中学生使用自己的学号和登录密码成功登录系统后,根据系统中提供的实验信息并结合自身的时间,选择自己感兴趣的实验,并可进行实验项目的查询、预约、取消等操作,同时还可以查看自己的实验成绩,观看实验项目演示,进行实验预习、处理实验数据,通过留言管理与使用本系统的所有人员进行信息的交流。学生登录系统界面如图4所示。
2.授课教师模块
授课教师登录后可以维护实验项目信息、实验安排信息、个人信息,查询学生预约信息,登记其负责的实验项目成绩。如果教师没有任何授课任务则不能进行成绩的管理,即只有授课教师本人可以登记和修改学生的成绩信息。教师通过教师模块可以得知整体选课情况,可以查询和打印自己授课实验的学生名单,对学生成绩进行统计计算等功能。每位教师要对自己的课程成绩负责,对于别人的课程任何人无权查看修改,对与实验教学的规范化起到积极作用。
3.系统管理员模块
系统管理员可以对系统中的学生、教师基本信息进行初始化管理,能对所有用户的名称、密码及相关资料进行查询、修改、删除,还能对教学资源子系统、实验项目、实验预约、新闻及留言情况管理。
4.系统中使用的数据库表
系统采用SQL Server2000来管理系统数据,系统中使用的数据库表及表项如下:(1)学生信息表。主要包括:学号、姓名、密码、专业、年级、院系。(2)学生选课信息表。主要包括:学生编号、内容编号、周次、节次、成绩。(3)实验内容信息表。主要包括:名称、课程号、实验室、相关信息、教师、内容编号、院系、最大人数。(4)实验安排信息表。主要包括:内容编号、开始周次、结束周次、安排、院系、安排周次。(5)教师信息表。主要包括:教师名字、教师密码、教师编号。(6)管理员信息表。主要包括:名称、密码。(7)系统公告信息表。主要包括:内容、是否开放。
三、系统部分功能实现
1.权限管理
系统采用三重限制来保证系统的安全运行。首先利用ASP.NET的Form认证,只有合法的用户才能进入系统,否则返回至登录页面。其次对于不同用户登录后,根据其权限不同呈现的页面也不相同,只显示具有相应权限的页面的导航。此外,在每一个页面中判断当前用户是否具有权限,若没有权限,则提示返回。
2.AJAX技术
传统的Web应用允许用户填写表单(form),当提交表单时就向Web服务器发送一个请求。服务器接收并处理传来的表单,然后返回一个新的网页。这个做法浪费了许多带宽,因为在前后两个页面中的大部分HTML代码往往是相同的。由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时间。这导致了用户界面的响应比本地应用慢得多。与此不同,AJAX应用可以仅向服务器发送并取回必需的数据,它使用SOAP或其他一些基于XML的Web Service接口,并在客户端采用JavaScript处理来自服务器的响应。因为在服务器和浏览器之间交换的数据大量减少,结果我们就能看到响应更快的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。
AJAX应用程序的优势在于:(1)通过异步模式,提升了用户体验;(2)优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用;(3)AJAX引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。[5]
为了保证多用户并发时实验项目人数的限制,系统利用AJAX技术实现了可选时间的刷新,避免并行操作造成的错误。图5显示了学生预约实验项目的时间和地点。
3.数据批量导入
庞大的信息如何能更方便快捷地导入,是本系统遇到的一个重大问题。考虑到教师对Office操作更加熟练,系统在批量导入数据时,采用Excel文件导入的方式进行。例如在导入学生信息时,管理员可以将各个院系上报的学生数据筛选相关列后复制到模板中上传后即可批量导入,如图6所示。
四、系统的特点及效果
网络实验选课系统是我校开展开放式实验教学的有效支撑平台,该系统自2005年经过小面试点、大片推开地不断改进,技术日臻成熟完善,保障了全校范围内全面的开放式实验教学的顺利实施,并在实践过程中体现出以下几点:
(1)系统实现了我校信息工程学院、机电工程学院、空间科学与物理学院11个理工科专业3000多名学生全面、公开、自主的计算机预约选课,使学生对实验的学习真正实现了时间、空间、内容的自主选择,为学生创新提供了广阔的空间。同时,教师还利用预约成功的学生实验名单,这大大方便了开放实验室的管理。
(2)系统根据我校电工电子实验教学中心仪器资源、教师资源情况,针对不同的实验项目限制实验人数,设置不同实验开放时间,使实验室仪器资源得到充分合理的利用。
(3)系统实现了网上预习实验,网上成绩查询,网络答疑。学生遇到疑难问题,随时可以发布到网上,教师及时反馈信息,实现了教师和学生的网络交流,提高教学效果
(4)系统后台管理功能强大,可以实现教师姓名、实验开放时间、开放实验题目的查询,学生信息、学生成绩等信息的批量导入和批量导出,学生成绩的统计分析、开放实验室工作量统计。
(5)系统对不同用户采取不同的安全限制。学生可以在校园网内任何节点进行操作,教师和管理员只能在指定的IP进行访问,有效防止非法攻击,保证了系统的安全。系统还对操作时间进行记录,如果5分钟内没有操作,则系统认为超时,用户必须重新进行登录,以防止他人修改用户记录。
五、结论
网络实验选课系统是在Internet基础上,利用ASP.NET技术实现了服务器端与客户端的交互式连接。经过三年多的系统运行表明,系统具有稳定、高效、实用等特征,满足了我校电子信息、自动化、应用物理等11个理工科专业学生的开放式实验教学的管理要求,取得了良好的教学效果。
[1]邓万友,孟雅杰等.学分制下网络选课系统的构想与实现[J].黑龙江高教研究,2001,99(1):92-94.
[2]张敏.基于ASP.NET的预约型开放实验室管理系统[J].实验技术与管理,2007,7(1):73-76.
[3]Mike Gunderloy.ADO and ADO.NET Programming[M].SYBEX,2002.
[4]樊国梁.开放式大学物理实验网络选课系统研究与应用[J].高等理科教育,2007,67(6):101-103.
[5](美)阿斯利森,舒塔著,金灵等译.Ajax基础教程[M].北京:人民邮电出版社,2006.
(编辑:杨馥红)
G250.73
A
1673-8454(2010)23-0055-03
山东省高等学校教学改革研究项目(2009172),山东大学威海分校教学改革项目(B201005)资助。