基于Web服务的开放实践平台在教学中的应用

2015-05-30 19:17:37林毅申肖媚燕林丕源徐东风
计算机教育 2015年12期
关键词:WEB服务实践平台

林毅申 肖媚燕 林丕源 徐东风

摘要:针对当前计算机专业高年级程序设计课程实验中存在的诸多问题,提出在课程实验中引入基于Web服务的标准规范接口,建立一套开放的可扩展教学实践平台,指出通过该平台提供的基础接口,学生可以把精力集中在程序的功能设计上,进而减轻负担,提高编程兴趣以及课程教学质量。

关键词:Web服务;移动开发;实践平台

0 引言

在我国高等教育中,计算机类专业(包括计算机科学与技术、软件工程、网络工程、信息安全、物联网工程、数字媒体技术)学生人数众多,其作为工学类专业,培养学生的实践能力非常重要。对计算机类专业学生而言,应用系统构建能力和程序设计能力是非常重要的专业实践能力。

高校在培养计算机类学生应用系统构建能力和程序设计能力方面,需要开展专业的、具有一定复杂度的实验。然而,由于学生数量巨大,教师对学生实验的评判工作十分繁重。为提高评判效率,建立良好的实验平台是重要的解决办法。计算机类专业的学生从大三开始将接触多种高级程序设计语言,并进行一些复杂的程序设计。实验课往往需要学生针对某些关键技术进行训练,为此,我们致力于建设开放的实验平台,既能支持关键技术,又能实施评判。

在专业课程的综合性实验教学中,教师通常会要求学生从底层开始搭建一套完整应用如从权限系统开始逐步而上设计业务逻辑、界面等模块。在这过程中,学生必须把大量精力放到底层代码的设计和实现上,从而忽略软件的过程设计和功能设计。如果有一套现成的底层平台接口实现系统的基础功能,那么通过规范调用接口获取数据,学生就可以把精力放在具体系统的业务逻辑开发和关键技术点实现上,从而做出更有特色的应用程序。此外,随着计算机技术的不断发展,越来越多的新技术不断涌现,如LBS应用(基于位置定位应用)、微信接口应用、云存储系统等都是目前流行的热门应用。让学生掌握流行的编程技术,也是专业课程的重要内容。

1 开放实践平台概述

我们将建设的针对计算机类专业高年级课程的开放实践平台命名为专业课程在线实践公共平台。平台以在线实验提交系统为核心,以Web服务技术为纽带,通过标准接口规范,开放一系列的底层接口和扩展接口,学生和教师可共同使用本平台。该平台在华南农业大学计算机类专业(主要有3个专业:计算机科学与技术、软件工程、网络工程)的程序设计类课程教学中已被大规模应用和推广。通过该平台,广大师生可以共享丰富的教学题库,学生通过先进的计算机网络技术能够进行在线自主训练。平台采用“实验平台+题库+外围模块”的方式,建立一套完善的在线实验管理平台系统(包括前台、后台),加入不同课程的题库,让学生在实验系统中完成对应的实验。

经过近5年的计算机专业课程教学改革实践,我们总结出针对高年级计算机实验的平台可以Web服务技术为纽带,通过标准接口规范,开放一系列的底层接口和扩展接口。在教学中,教师可根据本系统接口规范,编写扩展接口,布置实验供学生调用;学生发挥自主能动性,根据系统公布的接口编写一系列实际应用。

2 系统结构及基础模块

在专业课程在线实践公共平台开发之前,我们开发了在线实验提交管理平台并已经稳定运行多年,它提供了题库管理、作业提交、实验统计等基本功能。在专业课程在线实践公共平台中,我们引入Web服务技术,制定数据传输规范,把原有系统的业务逻辑接口改造为Web服务标准接口,并且按照以下系统结构重新划分系统功能,增强系统的模块化及扩展性。系统结构如图1所示。

在引入Web服务接口技术规范后,教师应着重设计系统的安全认证体系,学生必须经过登录认证后,才能调用系统各种接口。系统安全认证体系如图2所示。

在步骤1中,调用基础功能业务逻辑的登录接口,发送用户名、MD5处理后的密码字符串到服务器端。服务器接收信息后,判断用户名和密码是否合法,如果合法则返回一串包含用户信息和时间戳的Session字符串。此Session字符串就是用户后续调用服务器端的基础功能接口和扩展功能接口的钥匙,不需要再使用用户名和密码。

此外,在登录过程中加入安全机制。安全机制处理如下:①输入密码错误,等待30秒后再登录;②若相同IP登录,用户名和密码不正确,连续3次尝试错误后,锁定IP半小时;③若小同IP登录,用户名和密码不正确,连续5次尝试错误后,锁定用户半小时;④登录30分钟内,若没进行任何调用,Session失效,需要重新登录。

通过以上规则,客户端可在保证安全的前提下与服务器端进行高效的通信。

3 基于开放实践平台的课程实验没汁

3.1 开放的接口列表

平台目前向学生开放的基本接口及扩展功能见表1。

3.2 实验设计

1) Web服务调用基础实验。

该实验要求学生选定一种语言(如C#、Java、Object C等),选定一个平台(Windows、Android、iOS、Windows Phone等),在此平台卜进行实验,构建应用程序。在应用程序中,通过Web服务连接服务器,调用获取服务器时问接口,获取返回值。通过该实验,学生可以r解什么是Web服务,如何在对应平台上调用Web服务并连接到本平台上取得数据。

2)“我的作业”应用实验。

该实验要求学生调用“我的作业”相关接口,从提交系统中获取作业的相关信息。通过该实验,学生可以深入了解本系统的相关接口并编写一套作业系统相关应用,及时了解本人在系统中提交作业的情况。

3)LBS应用实验。

该实验是针对智能手机的软件开发实验,要求学生首先从手机端获取GPS定位情况,然后调用平台LBS相关接口,把对应的经度、纬度数据保存到平台中;也可以调用接口,获取最后一次定位数据,和手机地图应用结合在一起,把历史位置显示在手机地图上。通过该实验,学生能够熟悉本系统的各种扩展模块,了解手机端的LBS软件开发。

4)云存储应用实验。

该实验要求学生调用平台的云存储扩展相关接口,使用接口上传、下载和查询云端文件。本系统扩展为每位学生提供200 M永久免费的云存储空间,并鼓励学生在日常使用。该实验可使学生构建基于实践平台的应用客户端,熟悉并使用本系统的各种扩展模块,通过校内免费空间依赖本实践平台。

5)综合应用实验。

该实验要求使用实践平台提供的接口,自由组合,编写一套应用。例如,在智能手机端开发时,在调用智能手机电话本API基础上,通过接口获取同班同学电话号码,就可把全班同学的电话号码同步更新到手机电话本中;调用智能手机的闹钟API,通过获取作业提交时限,就可以在在作业提交时限前通过闹钟进行提醒。此外,学生通过该实验还可以深入拓展云存储应用,如编写完整的云存储客户端或在线办公空间、自动判断和上传新修改的文件、保持云端文件为最新版本、通过可视化界面对云存储空间进行管理等。

通过该实验的设计,学生调用相关接口就可以在短时间内实现复杂并且实用的应用程序,训练系统设计能力,把精力放在实现软件功能上。

4 平台使用效果

系统首先在嵌入式软件开发技术课程中推广,本课程为选修课程,主要讲授智能手机应用程序开发。在2013年,选修本门课程的学生共374人,其中iOS开发方向约占15%,Android开发方向约占53%,Windows Phone开发方向约占30%,其他方向(如Linux)约占2%。本平台的接口在课程讲授期间分批开放给学生,以实验的方式让学生完成以上应用开发。

经过一个学期的训练,在学期末的课程调查中,约90%以上的学生认为通过平台中的实验掌握了智能手机软件相关开发技术,通过平台提供的接口快速搭建了有意义的智能手机端应用,可以把精力放在软件功能的设计中。通过本平台的应用,不少独具匠心的应用程序也涌现出来,同时课程教学达到了良好的效果。

5 结语

我们构建了一套以在线实验提交系统为核心的平台,通过Web服务标准接口规范开放一系列接口,让学生在此平台上快速搭建有意义的应用。开放平台一方面可为教师提供一套开发标准,使其在平台中添加扩展应用,参与平台建设;另一方面可使学生专注应用程序的业务逻辑开发和关键技术点实现,从而做出更有特色的程序。通过该开放实践平台,学生、教师及平台开发者的角色互相融合,大家可以通过统一的标准共同使用和建设该平台。

猜你喜欢
WEB服务实践平台
基于Web服务的SPSS与.NET系统集成开发
软件(2016年4期)2017-01-20 09:28:12
基于线性回归的航班延误预测研究与系统开发
基于技术融合的卓越型电力信息工程教育研究
中职电子电工课程实践平台建设之我见
高职院校服务类专业职业能力及实践平台构建因素分析
企业导报(2016年14期)2016-07-18 20:03:46
教学工作量管理系统的设计与实现
企业经营模拟实践平台的应用与创新研究
企业导报(2016年10期)2016-06-04 11:50:29
构建多元化实践平台促进大学生创新素质提高
科技视界(2016年2期)2016-03-30 21:06:06
一种基于SOA的web异构数据集成方法研究
吉林省高校创业教育实践平台构建研究
考试周刊(2016年6期)2016-03-11 09:43:12