计算机实验室自主排课系统的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机实验室自主排课系统的设计
计算机实验室自主排课系统的设计
计算机实验室自主排课系统的设计
刘毅,俞炘
(江苏大学计算机科学与通信工程学院,江苏镇江2120xx)摘要:本文总结了目前计算机实验室自主排课系统的主要模式,针对当前各类移动终端的普及,为了进一步提高计算机实验室的服务水平和管理效率,利用目前最新的跨平台开发框架PhoneGap,结合使用5等新技术,设计了一套移动计算机实验室自主排课系统,实现了计算机实验室自主排课从PC端到移动端的转移,系统使用的离线缓存机制,提高了系统的健壮性和用户体验。
关键词:实验室管理;排课系统;跨平台;PhoneGap;5
基金项目:江苏省普通高校研究生科研创新计划
(CXZZ11_0575);江苏省自然科学基金(BK20xx0529);中国博士后科学基金(20xxM541616)
作者简介:刘毅(1979-),男,江苏张家港人,硕士,实验师,研究方向:信息安全、嵌入式系统、人工智能。
一、引言
从运行方式的角度来看,目前高校计算机实验室的排课系统主要有两种:一种是将计算机上机课和教室课程混合在一起,由
教务系统的排课系统通过智能算法统一来排。这种方式需要教务系统掌握计算机实验室的详细情况,包括机器数、操作系统、软件等。其优点是不需要人干预,完全自动实现排课。其缺点是不容易实现。首先计算机实验室的操作系统、软件每隔一段时间可能有更新,需要教务系统能够及时的同步相关信息,而目前大部分教务系统都是独立运行的,并没有与计算机实验室连接。其次,对于自动排课来说,计算机实验课不同于普通的教室排课,不仅要保证时间、地点、人数的统一,而且对于不同课程所使用的软件也要分别对应,增加了系统自动排课的难度。因此,目前的智能排课系统很难做到能够完全满足智能排课需求。第二种是计算机实验课和教务系统分开排的情况,实验课的编排由任课教师自主到计算机实验室预约完成。这种方式的优点是技术上比较容易实现,同时对于教师、学生或者机房来说比较灵活。笔者所在的江苏大学计算中心便是这种方式,因此本文主要讨论第二种方式。
从系统实现的架构来看,自主式的计算机实验室排课系统主要有两种一种是C/S(Client/Server)架构,另一种是B/S (Browser/Server)架构。C/S架构的优点在于事务处理能力强、响应速度快;缺点在于系统部署、维护、升级需要在每台客户端进行,增加了难度和成本。B/S架构由于是基于网页浏览模式的,只要有浏览器可以上网就可以使用,其优点是系统的部署、维护和升级只要在服务器端就可以完成,不需要在客户端操作。因此
对于排课系统这种对实时性要求不高的系统来说,B/S架构比C/S 架构具有更大的优势。
现有的排课系统绝大多数都是用于PC端的,只能运行在PC 机上,即使是B/S架构的,通过浏览器访问系统也不能适应移动端如手机、平板电脑的屏幕大小。而随着无线通信技术及嵌入式技术的发展,通过智能手机、平板电脑上网越来越成为一种主流的上网方式。开发移动端的排课系统,让老师随时随地可以预约计算机实验课,学生可以随时随地查询计算机实验课表,将大大节省师生的时间,对于提高计算机实验管理的效率具有重要的意义。
本文将从上述思想出发,针对目前计算机实验排课系统的问题,运用最新的跨平台开发技术,设计一套可以在移动端如手机、平板电脑运行的自主排课系统,以进一步提高计算机实验室的服务水平和管理效率。
二、移动应用开发
(一)移动应用开发简介
移动应用开发就是在移动设备(如智能手机、平板电脑等)上开发应用程序。由于目前不同的移动设备往往基于不同的操作系统平台,若要让应用程序在不同的移动设备上运行,就需要分别在相应的平台上开发不同版本的程序。目前主要的移动操作系统平台有:安卓(Android)、iOS、Windows Phone、黑莓(Black-Berry OS)等。在不同平台上,开发应用的编程语言或
者开发环境都是不同的,对于开发者来说,这无疑大大增加了开发的难度和维护成本。如下表1是目前最流行的四种操作系统所使用的开发语言。
(二)跨平台开发及PhoneGap
一款移动应用软件为了在不同的移动终端上需要进行多次的开发,大大增加了开发、运营、维护的成本。为了解决这一问题,跨平台开发技术应运而生。利用跨平台开发技术,开发者只要开发一次应用便可以让程序在不同的平台上运行,开发者不再需要为不同的移动终端平台重复开发,以大大降低开发成本和难度,缩短开发周期。根据实现方式的不同,现有的跨平台开发技术主要通过两种技术来实现,跨平台运行引擎技术和跨平台应用编译技术。跨平台运行引擎技术主要是通过安装在目标设备上的引擎来屏蔽终端底层操作系统差异来实现,开发者开发应用部署或编译打包后,用户下载到目标设备上由引擎解释执行;跨平台应用编译技术则通常采用一种标准开发语言开发应用,应用开发完成后由代码编译器针对不同目标终端平台分别进行编译,生成有针对性的可执行程序。
跨平台开发技术的优越性,也吸引了很多公司来开发跨平台开发工具。根据VisionMobile 20xx年移动开发者跨平台开发工具报告,现有的跨平台开发工具包括Flex、Titanium、AppMobi、PhoneGap、Mono-Touch/Droid等,其中被用的最多的是PhoneGap。
PhoneGap是Adobe公司的一款基于WEB的.开源跨平台开发框架,通过PhoneGap框架提供的API开发者可以非常方便调用移动设备的核心功能,包括GPS、摄像头、重力感应、陀螺仪等功能。利用PhoneGap提供的开发平台,开发者使用5、JavaScript和CSS就可以快速开发出跨平台的移动应用程序,并发布到AppleStore、Google Play等各个平台应用商店。目前PhoneGap 已支持几乎所有主流移动操作系统包括Android、iOS、BlackBerry、WindowsPhone、Symbian等。
PhoneGap是作为一套优秀的跨平台开发框架,具有如下特点:(1)开源、免费。(2)支持主流多数移动平台,支持云端编译功能编译成各种平台下的应用。(3)基于5标准的手机应用框架,支持5、CSS3、JavaScript等Web技术。(4)提供非常丰富的API,它们包括Accelerometer移动感应器、Camera摄像头、Notification等。(5)提供硬件访问控制,比起传统的Web 程序,PhoneGap提供了一些列的JavaScript类,可以直接访问硬件,比如加速、相机、指南针、GPS、文件访问等。
三、系统设计
(一)系统体系结构及功能
本文设计的跨平台机房预约系统也是一种基于B/S结构的系统。根据用户角色的不同,系统包含了三个主要功能模块,分别是访客模块、教师模块和管理员模块,如图1所示,登录界面提