基于MVC 的民办院校开放实验室预约管理系统的设计

2015-08-26 06:36贺君鹏
电子设计工程 2015年13期
关键词:管理员开放性实验室

贺君鹏

(西安外事学院 工学院,陕西 西安710077)

随着2014 年600 所本科转型职业教育, 西安外事学院也在其列,本科教学要加强实践教学的改革以及学生选课预约系统的运行, 传统的开放实验室管理方式已不能满足教学改革的要求。

为适应新的职业教育人才培养方案的实施, 针对民办院校学生基础的多层次性及培养目标的多样性,为了充分发挥民办院校学生特点,在完成基本教学实验内容后,给他们提供良好的开放实验环境,是实验室管理改革的基本职责。 以前开放实验室管理以手工管理方式为主, 实验室老师工作量很大,为此开发了开放实验室预约管理系统。

该系统运用信息技术和计算机管理技术,在校园网上公布各开放实验室开放的实验项目,实现网上预约选课;学生可根据各自实际情况,预约实验时间;做实验时刷校园卡进入实验室,记录学生到达和离开实验室的时间;教师根据学生的实验情况对学生的实验进行评分,并以文档形式存档,以便查询,从而实现了实验课程教学的动态、开放式管理[1]。

该开放实验室预约管理系统已成功地应用于西安外事学院工学院的实验教学中。

1 总体设计

1.1 体系结构

1)B/S 模式(Browser/scrver,浏览器/服务器模式)具有无需开发客户端软件,可跨平台操作,采用公开的标准和协议,易于和Internet 连接的优点。 B/S 模式的瘦客户机,肥服务器结构, 使信息处理主要在服务器上进行。 客户端软件仅需浏览器,硬件配置需求也非常低。

2) 基于.Net 平台采用B/S 模式的4 层体系架构, 如图1所示。

图1 体系架构Fig. 1 Architecture

系统基于.Net 平台采用B/S 模式的4 层体系架构, 包括页面表示层、业务逻辑层、数据访问层和后台数据库。 页面表现层,它主要处理所有的信息表示和用户的交互行为。业务逻辑层起到了承上启下的作用,当用户发出请求后,通过调用业务逻辑层中的相应方法,来完成相应操作,而对数据访问层来说,它是动作的发起者,由它来直接与数据库通讯,最终将数据库的数据展现、更新,并返回给页面表示层。 数据访问层位于最下层,主要完成数据库的直接操作,如添加、删除、插入和更新等[2]。

1.2 功能结构

登录模块:用户通过账号、密码和身份选择(包括学生,教师和管理员)登录进入个人界面,登录模块需要对账号、密码和身份进行验证,如果错误,则返回错误信息,如果正确,则进入相应的个人界面。

学生模块:学生通过学号和密码登录进入,可以查看自己的个人信息实验预约信息和更改密码。

教师模块:对于教师模块,教师通过教工号和密码登录进入教师模块,可以查看自己的个人信息和更改密码;提交自己的实验项目,同时可以查看自己提交的项目的列表,并可对已提交的项目的信息进行修改,亦可以删除已提交的项目信息。

管理员模块:对于管理员模块,管理员通过管理员号和密码进入管理员模块,可以查看自己的个人信息和修改密码,对实验预约进行增加、修改、删除的操作管理。

2 预约实验

必修实验要求所有同学必须完成, 一般占上课课时完成,由教师申请,集中实验.开放性实验由学生自由灵活的选择实验时间完成申请。

系统设置时,需要注意总资源数(总资源数=实验项目开放周数×每周实验项目开放次数×每次实验项目的资源数)应该大于或等于所需教学资源数, 这样才能提供给学生足够的预约资源,否则会因资源不够而无法完成教学任务[3]。

根据两类实验的共性, 建立实验室开设实验的时间表,在没有必修实验的前提下, 管理员根据实际情况设置开设开放性实验的时间 (一般在没有必修安排的工作时间都可安排开放性试验,提高实验室的利用率),实验室开设实验的时间表如表1 所示。

2.1 必修实验预约

授课教师预约实验表如表2 所示。

教师根据系统的提供的实验室开放时间和课程安排提出实验申请。

为了解决两个或多个教师申请同一实验室产生的冲突,系统在某个教师申请时,提示此实验室此时间的实验台资源剩余量。 教师根据剩余量,进行实验申请或申请实验分批进行或另改实验时间。 实验分批提高了实验室的运行效率。 申请完毕后,根据实验台的剩余量和教师的实验台申请数量,更新此时间段实验室的实验台剩余量, 若为0, 则将实验室此时间段的canUse 属性自动设置为false,即其他教师不能再在此时间段内在此实验室申请实验[4]。 授课教师预约实验流程如图2 所示。

表1 实验室开设实验的时间表Tab.1 Laboratory experiment schedule

表2 教师预约实验表Tab.2 The teacher appointment experiment table

图2 授课教师预约实验流程Fig. 2 The teacher appointment experiment process

2.2 开放性实验预约

学生开放性实验的预约结果保存在开放性实验预约记录表中,具体信息如表3 所示。

为了防止预约中的冲突, 即同一时间段为不同的学生分配了相同的实验台,可以在学生申请时添加判断,从开放性实验预约记录表中查找在此同学预约的时间段, 实验室是否已经资源分配完毕, 若在满足此同学申请后正好达到实验室的资源上线, 则系统自动设置此实验室开设开放性实验的时间的canUse 属性为false.不再允许学生实验的申请,有效的解决了冲突问题。 学生预约实验室流程图如图3 所示。

表3 开放性实验预约记录表Tab.3 Open experiment reservation record

图3 学生预约实验室流程Fig. 3 Students booking laboratory process

3 系统其他功能实现的关键技术

3.1 点名签到功能模块的设计

为了实现自动化的管理模式,提高实验室的管理水平,每位同学在入校时都办理了交通银行校园卡, 卡里有学生的学号、班级、性别等信息,在每个实验室入口安装一个读卡器,学生刷卡进入实验室,读卡器读出学生学号,连接数据库,记录下学生的到达时间和离开实验室的时间, 改变了现阶段的点名签到的时间浪费不易管理的缺点。

3.2 实验验收功能模块的设计

为了实现无纸化的高效办公,并且防止学生代做实验现象的发生。为学校的每个实验室设置无线网络,结合校园网共同为实验管理系统服务, 即在教师验收实验时, 使用无线的PDA 设备进行实验管理, 即输入当前的验收的实验台号,出现该学生其他相关信息,其中包括学生的照片,核实该生是否为分配到该座位的选课的学生, 防止学生代做实验现象的发生。验收完毕后就可以现场给出成绩,通过实验室的无线网上传到系统的后台数据库。

3.3 系统短信提醒功能

由于学生提前2 周预约实验,很可能到时间忘记了去做实验。 为了使系统更加人性化,系统加入了GSM 短信发送模块,在实验的前一天向学生发送提醒通知短信,有效的防止学生忘记做实验,而错过时间[5]。

3.4 系统的安全性

3.4.1 系统的权限分级设置

实验室管理系统一共分为四级:系统级最高级管理员,系一级管理员,实验室管理员,教师和学生级。

系统级管理员:

Root 是最高级的管理员, 可以创建和删除管理员账户,并有系一级管理员模块的权限。

系一级管理员:

系一级管理员除了管理本系为学生开设的实验外,还可以对学生账号进行操作,如添加删除等,对系下设的实验室进行管理,包括对实验室管理员账号的管理,对实验器材的管理等。

实验室管理员:

实验室管理员对实验室日常的工作进行管理, 包括学生签到,实验器材的安排管理,实验器材的检修管理,组织报表工作等。

教师:制定开放实验教学计划,根据实验室的资源情况确定各试验项目开设时间和地点,每次参加实验的学生数量。

学生:根据自己的实际情况选择参与的实验项目。

在数据库中具体实现, 设定4 张表分别是: 用户表:(UserId 用户号, UserName 用户名); 角色表:(RoleId 角色号,RoleName 角色名);用户角色关系表:(Id 关系号, UserId 用户号, RoleId 角色号); 角色分配权限表:(Id 授权号, 权限1……权限n , RoleId 角色号)。 当某一角色的某一权限为1 时说明具有此权限。 通过这四张表给每一个用户绑定相应的权限[6]。

3.4.2 数据库的安全设计

系统采用的是四层架构体系,用户不直接访问数据库,而是通过中间层的ADO.NET 在.NET 平台中提供对数据库的访问服务, 为保护用户名和密码信息的安全, 可以采用FormsAuthentication 类的HashPasswordForStoringInconfigFile方法的“SHAI”和“MD5”散列算法加密用户名和密码,此外在连接数据库时的用户角色应当是最小权限的集合, 以防止利用WEB 系统进行恶意操作从而影响数据库的安全。 在使用ADO.NET 访问数据时只要以用户数据创建要执行的SQL 查询,就有可能受到SQL 注入攻击的风险,为了防止SQL 注入攻击,可以过滤转换和参数化SQL 查询,过滤转换主要是对输入数据进行分析, 过滤掉可能产生恶意SQL 命令的字符;参数化查询是构造一个带有参数的SQL 命令,如:const string sql =“SELECT FROM Users WHERE UserName =@UserName”;sqlcomand command =new sqlcommand (sql,connection);command.parameters.add(“@UserName”,”李刚”)上述命令中有一个参数@UserName,使用Prarmeter 对象,通过它把参数添加到Command 对象上,这样就获得参数化查询[7]。

4 结束语

基于MVC 的民办高校开放实验室预约管理系统, 在传统的实验室管理模式下,添加了开放性实验管理的功能,为现阶段实验课程教学的全面改革提供了必要的条件。 该系统的设计方便了教师排课和管理实验室, 学生可以提前预约开放实验,合理安排自己的时间,更加科学更加人性化,避免了传统实验系统中的一些弊端, 系统的设计体现了以学生为中心的教学理念,可以激发学生的学习热情,并对实验室资源的合理使用和开放性实验高效管理起到一定的促进作用。

[1] 周勇.基于Web 的开放实验室信息管理综合平台的设计和实现[J].微计算机信息,2009(10):44-46.ZHOU Yong.Open laboratory based on Web design and implementation of the integrated information management platform based on [J]. Microcomputer information,2009(10):44-46.

[2] 卫才斌.基于遗传算法的高校排课系统的实现[J].南昌教育学院学报,2010(7):132-134.WEI Cai-bin.The implementation of university curriculum arrangement system based on genetic algorithm [J]. Journal of Nanchang Institute of Education,2010(7):132-134.

[3] 马立林. 基于Castle的开放实验室管理系统的设计与实现[D].实验室研究与探索,2010(5):155-158.MA Li-lin.Based on the Castle of the design and implementation of open laboratory management system [D]. Laboratory research and exploration, 2010(5):155-158.

[4] 兰光实验室.利用实验室数据共享系统提高实验室管理能力[N].中国包装报,2011(6):86-89.Lincom laboratory. Using laboratory data sharing system improve the ability of lab management [N]. China packaging news,2011(6):86-89.

[5] 余宙. 关于asp的高校选课排课系统的设计与实现[D].成都:电子科技大学,2010.

[6] 李秀苹.基于WEB的开放实验室管理信息系统设计与实现[J]. 电子测试2013(7):25-27.LI Xiu -ping.Opening laboratory management information system based on WEB design and implementation [J].Electronic test,2013(7):25-27.

[7] 宋晓悦.高校开放式实验室管理系统的设计与实现[D].天津:天津师范大学,2008.

猜你喜欢
管理员开放性实验室
我是小小午餐管理员
例析三类开放性问题的解法
我是图书管理员
我是图书管理员
初中英语开放性探究式阅读教学策略
可疑的管理员
电竞实验室
电竞实验室
电竞实验室
电竞实验室