刘 爽,李锡祚,常洪强
(大连民族学院 计算机科学与工程学院,吉林 大连 116600)
软件工程课程是我校计算机科学与工程学院计算机科学与技术专业、网络工程专业、软件工程专业的专业必修课及2009培养方案中的通识课程[1],有效的双语教学能及时提升学生的专业能力和语言能力,适应应用型、复合型的专业双语国际性IT人才的培养需求[2]。但是课程内容理论阐述较多,要求学生掌握的知识点较多,学生上课时感觉枯燥,采用双语教学会进一步增大课程的难度。为此在有限的课堂理论教学基础上,必须借助网络自主学习平台,提供集声音、视频、图像、文字、动画于一体的课件和教学资料,激发学生自主学习的兴趣,同时支持同步测试与在线或离线答疑,为师生提供沟通交流的平台,实现专业课程教学和双语教学的最佳教学效果。
数字教学资源可以无损地任意复制和传播,这给人们的学习生活带来了极大的便利。然而,无偿下载、任意复制和随意传播数字教学资源也使数字教学资源所有者的版权利益受到损害。这样会挫伤版权所有者的积极性,使其不愿公开数字教学资源,影响整个数字教学资源共享的发展,因此,在现代教育中迫切需要先进的技术手段来保护数字教学资源的版权。
目前我校BB平台[3]或精品课网站中大部分课件资源是ppt格式的课件,用户下载后可以任意修改,在其他场合使用时可以不引著原作者,原作者的版权不能受到保护。
在课程平台制作过程中开发了教学资源格式转换系统,用户可以上传可编辑格式的ppt、word、excel之类的数字教学资源文件,调用iSpring软件[4]或是Macromedia Flash Paper软件[5]转换为不可编辑具有版权保护的flash格式文件,之后可以再发给学生或是共享资源。转换完的flash格式文件较小,只需标准IE浏览器即可查看,不需要客户端支持ppt播放或是word、excel办公软件。视频课件部分可以采用屏幕录播软件,同时录制音频的方式生成,方便学生查看自学。
国际化技术简称为 I18N[6],来源为“internationlization”单词的首末字符“i”和“n”之间的字符数为18。由于是双语教学平台,因此需要开发出支持至少两种语言、国际化的教学网站。这里采用Struts2框架开发实现应用的国际化,即服务器端应用程序在运行时能够根据客户端请求的语言来选择页面显示的语言及用户提示、错误信息提示等。Struts2对国际化的支持通过资源文件来实现,本例中使用的资源文件包括:
1)中文资源文件:applicationResource_zh_CN.properties
2)英文资源文件:applicationResource_en.properties
中英文资源包中定义了所有的页面显示元素、验证信息、错误提示等所有语言元素的键值对(key,value)内容。由于资源文件中内容较多,这里仅以用户名、密码为例说明:
表1 中英文资源文件内容Tab.1 Content of Chinese and English resource files
其中页面元素的国际化采用如下代码实现:
验证信息在配置文件中实现:
文中设计开发的软件工程双语教学网络平台选择XP操作系统下MyEclipse6.5作为开发平台,使用iSpring软件、Macromedia Flashpaper软件、Camtasia Studio 6屏幕录播软件把各种教学资源进行格式转换,业务逻辑、后台数据库操作采用 Struts2[6]和 Hibernate[7]框架开发,前台页面采用 JSP、JavaScript、CSS等编写制作,开发过程分层遵循JavaEE规范,灵活地提供声音、图像和动画来启发学生的形象思维,迅速准确地运用多媒体技术来指导学生的抽象思维,使教学做到形、声结合,使学生的知、情融为一体,更好地激发学生的自主学习。
制作基本过程如下:
1)素材准备:课件资料、视频资料均以提高学生学习兴趣为出发点,着重于知识点的讲解,浏览学习,界面美观,文字清晰,操作简单。内容设计以章节为单元,以重要概念为知识点,各章节知识节点被激活后,可以显示相应的课件信息或加入语音讲解的课件内容。所有课件资料均以falsh格式课件为主,不仅可以防止盗版侵权,而且可以随时控制课件的进度,查看所需页面内容。对文本性资源,如教学日历,教学大纲等直接转换为Flashpaper即可。对实践环节中的软件操作,如使用Visio如何画数据流图,可以采用录播软件,捕获屏幕操作辅助语音讲解的方式,保存为任意可以播放的格式供学生查看。
2)服务器端应用程序开发:采用Struts2框架和Hibernate3.5.6框架编写服务器端应用程序,其中Struts框架主要处理业务逻辑,Hibernate框架完成和数据库的相关操作。应用服务器选择开源软件Tomcat6.0。课件素材需要部署到服务器中发布,实现资源共享。其中的国际化部分基于Strtus2框架实现,服务器根据学生客户端浏览器的语言选项,可以相应调用中文学习界面或是英文学习界面,查看中英文教学资源文件。所有的教学资源可以在线查看,也可以下载到本地使用浏览器播放。
3)前台客户端页面开发:借助Struts2标签库及JavaScript、HTML、CSS、JSP 编写系统页面,所有页面均实现国际化功能,且参考国内优秀精品课程网站美化页面。
4)客户端访问:工程部署完的服务器启动后,客户端通过浏览器输入服务器网址即可访问使用。可以设置浏览器的语言选项来访问不同语言的资源,也可以直接点击前台页面的中英文语言超链接进行页面跳转。
系统分层遵循JavaEE规范,该规范是由国际上最权威的Java标准组织JCP(Java Community Process)倡导制定的[8]。其主要思想是在企业应用开发中采用分层的形式进行程序架构,以组件的形式来实现功能模块,将各种不同的应用组件分布在不同的层上。各层可以采用不同的技术和框架实现,这里采用Struts2框架和Hibernate框架。其中,Struts2框架是实现MVC模式的一个广泛应用的框架,Hibernate是一种实现对象和关系之间映射(Object Relation Mapping)的框架,对JDBC进行了轻量级的对象封装,可以使用面向对象编程思维来操作关系数据库,为应用程序提供数据持久化服务。本文系统分为4层,分别是:
1)客户层:浏览器客户端,用于与用户交互;
2)表示层:接受客户端请求,传递给业务逻辑层组件,再把服务器端处理完的结果提供给用户;
3)业务层:处理业务规则、数据访问、事务管理等。包含多个JavaBean组件,为用户提供各种查询、添加、修改、删除的接口。接口具体实现通过调用持久层完成。
4)数据持久层:负责应用到数据库的数据存储、检索和更新,实现数据的持久化。
基于Struts2框架与Hibernate框架实现的系统架构如图1所示。
图1 基于Struts2和Hibernate的系统框架图Fig.1 System framework based on Struts2 and Hibernate
整个系统工作流程如下:
第1步,客户端向服务器发送请求;
第2步,核心控制器FilterDispatcher根据请求决定调用合适的Action。
第3步,Struts2的拦截器链自动对请求应用通用功能,例如workflow、validation或文件上传等功能。
第4步,回调Action的execute方法,该 execute方法先获取用户请求参数,调用业务逻辑组件来处理用户的请求。
第5步,业务逻辑类根据需要调用持久化类与数据访问类,执行某种数据库操作,既可以将数据保存到数据库,也可以从数据库中检索信息。
第6步,Action的execute方法处理结果信息作为响应输出到浏览器中,可以是HTML页面、图像,也可以是PDF文档或者其他文档。
本双语教学网络平台为了方便学生学习,分为8个模块:课件资料、模版、课程信息(教案)、视频资料(教程)、下载、在线测试(试题)、学生作品、教学参考,下面分别加以介绍。
课程信息模块:课程信息模块以文本表格形式提供与课程相关的信息,如课程简介和教学日历、教学大纲。
课件资料模块:课件资料模块以提高学生学习兴趣为出发点,着重于知识点的讲解,浏览学习,界面美观,文字清晰,操作简单。该模块结构设计以章节为单元,以重要概念为知识点,各章节知识节点被激活后,可以显示相应的课件信息或加入语音讲解的课件内容。本模块中所有课件资料均为falsh格式课件,防止盗版侵权,可以随时控制课件的进度,查看所需页面内容。所有课件内容均为FlashPaper格式,仅需浏览器即可播放。
视频资料模块:查看导航栏中的“教程”或英文导航栏中的“Course”可以出现视频课件分章节导航链接。视频资料为iSpring转换的加入音频信息的flash格式课件或是屏幕录播视频形式视频文件。
下载模块:为了让学生能大大提高自学兴趣,而且在学习之余能够充分放松心情,不至于感到乏味,本平台设置了教学资源下载模块加以补充,通过下载教学资料,学生可以在课余时间巩固上课教学内容,复习重点难点,丰富知识,可以有效地提高学习积极性。
在线测试模块:在线测试模块侧重于对知识点的学习巩固,制作了涵盖课程内容的题库,学生通过课堂教学对知识点的学习,有机地进行练习、复习、自我检测。在每一章的学习结束时,学生可以随时从教学模块切换到练习模块,检查自己能否灵活并综合地运用本章的知识。在该软件中,选择了填空题、选择题、判断题和综合题4种类型。提交答案后,系统会自动给出参考答案信息。导航栏中的“试题”或英文导航栏中的“Questions”与之对应。
学生作品模块:该模块提供优秀学生作品文档,可以直接查看,也可以下载到本地查看。学生查看优秀学生作品文档,可以学习软件工程生命周期中各阶段规范化文档的撰写,也可以查找自己的不足,提高撰写科技文档的水平。导航条中的“学生作品”或英文导航条中的“S-work”与之对应。
教学参考模块:该模块提供教学网站、教材及相应的参考资料信息。
由于篇幅有限,这里节选英文课件中的一个课件显示页面和中文的章节信息导航页面演示项目的实际运行效果,如图2和图3所示。
图2 英文课件显示页面Fig.2 Page display of English courseware
图3 课程章节信息导航Fig.3 Chapter navigation for the course
为适应网络教学的需要,开发设计了软件工程双语教学网络平台,该平台教学内容科学规范、知识体系完整、逻辑性强、教学素材资源引用适当。所有教学资源均采用iSpring软件或Macromedia Flash Paper软件转换为Flash格式内容,不仅可以防止盗版,而且更方便用户查看浏览。同时采用国际化技术对双语教学提供有力支持,服务器会根据客户端环境不同选择显示相应的资源信息。该网教平台侧重于学生自主学习能力的培养,促进双语教学在专业课教学环节中的具体实施,探索了更为有效的软件工程双语教学模式。
[1]大连民族学院教务处.大连民族学院2009版培养方案[M].大连:大连民族学院,2009.
[2]SHUANG Liu, XI Zuo-Li, LI Zuo.Adopting communicative teaching method in computer major bilingual teaching[J].Theory and Practice in Language Studies, 2011, 1 (2):187-190.
[3]Dalian Nationalities University.Blackboard Academic Suite[EB/OL].(2009-03-03)[2011-05-10].http://bb.dlnu.edu.cn.
[4]iSpring Solutions,Inc.Download Powerpoint to flash and E-learning authoring tools free trials[EB/OL]. (2011-01-10)[2011-03-11].http://www.ispringsolutions.com/download.html.
[5]Adobe Systems Incorporated.Download FlashPaper2[EB/OL].(2010-10-03)[2011-03-15].https://www.adobe.com/c-fusion/tdrc/index.cfm?product=flashpaper.
[6]李刚.Struts 2.1权威指南—基于WebWork核心的MVC开发[M].北京:电子工业出版社,2009.
[7]孙卫琴.精通Hibernate:Java对象持久技术详解 [M].北京:电子工业出版社,2008.
[8]Oracle Corporation.Java EE reference[EB/OL].(2009-12-11)[2010-12-15].http://www.oracle.com/technetwork/java/javaee/d-ocumentation/index.html.