黄淼+王魁祎
摘要:为了更好地达到培养工程应用型人才的目标,针对目前高校软件工程专业Java课程群课程教学中出现的问题,结合CDIO-OBE工程教育模式,对于Java课程群课程的教学方法、教学模式、教学案例、考核机制等方面进行梳理整合,形成成熟的教学模式和操作规范。从而提高学生的就业能力,满足企业的用人需求。
关键词:工程教育;CDIO 模式;OBE;Java课程群;教学改革
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)34-0169-02
Abstract: In order to better achieve the goal of cultivating application-oriented engineering, aiming at the software engineering Java problems appeared in the course of teaching, combining with the CDIO engineering education - OBE mode, for Java course group teaching methods, teaching mode, teaching case, evaluation mechanism, combing the formation of mature teaching mode and practice. So it can improve students' employability and meet the needs of enterprises.
Key words: Engineering Education; CDIO Mode; OBE. Java Class Group; Teaching Reform
1 概述
为了顺应国家在应用型人才培养方面的号召,大力发展工程教育是应用型本科院校转型发展、建设高水平应用型大学战略规划的重要内容,深化工程教育改革,推进新工科建设,是应用型本科高校适应区域经济转型升级需要、提升工程科技人才培养与社会需要对接面临的新机遇、新挑战。为了响应国家在工程教育方面的转型改革号召,也为了大力推进软件工程专业内涵式发展,在Java开发人才的培养过程中进行有益的探索和改革是非常有必要的。
软件工程专业Java方向的人才培养目标为:培养具有扎实的计算机知识基础、较高的文化修养、良好的职业道德和综合素质,具备良好的交流与组织协调能力,掌握软件工程领域的前沿技术和软件开发方法,具有较强的软件实践能力和创新精神,具备较强的软件项目的分析、设计、开发和维护能力,能够按照工程化的原则和方法从事软件开发和管理的应用型人才。为了达到这一目标,Java课程群相关课程的教学起着至关重要的作用,目前虽然我们在《Java程序设计》、《基于Web的Java开发设计》和《Java企业级开发》三门门核心课程上面进行了一体化教学改革。但是具体的改革过程和方案制定都是由各个教师自行制定和实施,由于Java课程群中每门课程的任课教师不同,造成了具体的改革内容和形式上也各不相同。在具体的教学改革实施过程中我们取得了一定的教学经验,但也发现了一些问题。如知识讲解或案例选取在各门课程中存在重复现象、综合案例缺乏、与企业实际要求的各项能力之间存在差距、教程内容未能紧跟时代发展进行更新、教学方法在引导学生积极思考、乐于实践上还有所不足。为了更好地达到培养工程应用型人才的目标,迫切需要查找缺陷,对于Java课程群课程的教学方法、教学模式、教学案例、考核机制、教学评价等方面进行梳理整合,形成成熟的教学模式和操作规范。
基于CDIO-OBE的工程教育模式借鉴产品开发中的从研发到产品运行的生命周期为载体 ,让学生以实践的、主动的、课程之间有机联系的方式学习工程,实现知识与技能、过程与方法、情感态度与价值观学习的统一。基于CDIO-OBE的Java课程群课程改革,根据行业企业发展需要和完成职业岗位实际工作任务所需要的知识、能力、素质要求,选取教学内容,让学生在工作之前就知道自己该学些什么、做些什么和怎样去做,为学生可持续发展奠定良好的基础。遵循学生职业能力培养的基本规律,以真实工作任务及其工作过程为依据整合、序化教学内容,科学设计学习性工作任务,教、学、做结合,理论与实践一体化,培養学生的职业能力,提高学生的就业能力,满足企业的人才需求。
2 Java课程群课程目标定位
2.1《Java程序设计》课程目标定位
在培养学生掌握基本理论的条件下,重点培养学生实际动手能力。通过Java课程的学习,达到培养学生建立与巩固面向对象的程序设计思想;了解Java程序的运行机制及Java虚拟机的体系结构;掌握Java语言中类、接口等面向对象的组件的使用,并重点理解Java语言对封装、继承、多态等面向对象程序设计特性的实现;掌握Java语言的异常处理机制,能够利用异常处理提高程序的稳定性和容错性;掌握Java语言的各种类型文档注释,学会在程序设计过程中正确书写文档注释的方法,并能够使用相应的工具程序自动创建帮助文件;掌握 Java 语言类库中关于输入输出、线程、集合类、泛型、网络编程、图形界面开发等部分,能够在程序设计中熟练使用,并能进行扩展。
2.2《基于Web的Java开发设计》课程目标定位
通过《基于Web的Java开发设计》课程学习,学生最终应该掌握使用Java技术开发Web应用的基本能力,主要包括:
1) Web界面设计。主要学习HTML、HTML5、CSS和JavaScript三方面内容。最终达到能够设计出带有表单验证功能、样式统一控制的Web应用界面。
2) JDBC数据访问。本模块主要学习如何使用Java技术完成对关系数据库的访问操作,为后续Web项目的数据访问奠定基础。
3) Servlet服务器端程序开发。本模块学习服务器端Java程序设计方法,主要包括Servlet创建与应用,监听技术、过滤器技术。学习后能够使用Servlet实现简单的Web应用。
4) JSP动态网页设计。本模块学习使用JSP技术实现动态网页开发,主要包括JSP语法、内置对象、JavaBean技术、EL表达式、JSTL标签库等几个部分,通过学习使学生掌握JSP技术实现Web应用。
5) MVC设计模式。本模块是前四个模块的综合应用,主要将前面学习的JavaBean、JSP和Servlet技术结合起来完成Web应用的开发。通过学习,使学生掌握ModelⅡ模式。
以上知识模块均是实践与理论相结合,且重在实践。通过实践体会理论知识,并最终应用知识。
2.3《JavaEE企业级开发》课程目标定位
通过《Java企业级开发》课程学习,学生最终应该掌握使用三大框架SSH开发企业级应用程序的基本技能。主要包括:
1) 《Hibernate》知识技能目标
掌握ORM与Hibernate的基本概念,了解常见的ORM中间件,掌握Hibernate的核心接口,学习Hibernate两级缓存。掌握Hibernate中对象/关系映射思想。学习映射文件的具体编写,学习多种常见的主键生成方式。重点掌握关联和继承关系映射、操纵持久化对象。掌握对象对于Hibernate的三种状态、Get与load方法、掌握延迟加载与脏检查、Hibernate一级缓存、批量插入与更新。了解事务与并发。掌握HQL高级查询特性。
2) 《Struts2》知识技能目标
掌握并灵活使用MVC模式,掌握Struts的概念、核心特性、工作流程。能够在Servlet平台中配置Struts、掌握Action与Result的配置及Struts2的全局配置。掌握Struts2标签库、OGNL表达式、拦截器的概念与使用。了解验证接口、验证框架、国际化等内容。
3) 《Spring》知识技能目标
理解应用软件分层的概念、学习Spring用途与特性。重点掌握Spring的IOC和AOP的配置。掌握Spring事务管理器,对JDBC编程的支持、对Hibernate编程的支持。
3 Java课程群的课程教学方案的制订
教学执行方案是实施教学的纲领,经过项目组成员共同探讨制定了教学实施方案的组成包括:课程性质,课程目标(技术目标),教学要求,考核方式,教学内容组织与安排,教学计划进度表,考核标准,教学中异常预案等内容。由于具体方案所占篇幅教长,此处不再一一展示。
4 教学案例选择标准
通过对Java课程群中相关课程前期教学中存在的问题进行梳理,特别是对各门课程中大量案例进行筛选比对,同时借鉴杰普公司的大量企業真实案例为依据,项目组成员经过精心研讨、论证。制定了如下案例选取标准。
1) 对于同一知识内容的讲解,案例数目选取适量,不可过多,也不能太少,结合学时多少,选择数量要恰到好处。
2) 多门课程案例尽量不重复,避免给学生造成缺乏新鲜感和学习兴趣。
3) 案例之间要环环相扣,由易到难。对于知识的讲解,既要安排能够说明该知识点的小案例,也要配套一个知识单元的综合案例,几个相关章节讲完之后,还要给出综合几个章节内容的相关综合案例,做到案例从简到繁,层层递进、逐步深入。
4) 正确安排课堂案例与课下扩展案例的关系。课堂上老师带着做一案例,课下布置相似案例让学生自己动手,给出一些参考资源,带动学生主动学习的积极性和探索精神。
5) 尽量将企业真实案例资源引入课堂教学中,为学生毕业后“零距离”就业打好基础。
5 探索有效的Java课程群课程考核方式
Java系列课程在授课方式上采用理论与实践相统一、教学做相结合的一体化教学方式。课堂组织形式为任务驱动方式,教师先讲解知识点,接着使用一到多个任务体现知识的应用,最后学生实践项目。在综合项目的实施上,采用“一多”学习模式,成立项目组,充分发挥每位学生的主观能动性,最终实现课程教学目标。
根据课程特点,在对Java相关课程进行一体化教学两年的实践过程中,对于学生的考核采用过程阶段性考核与期末综合考核结合的方式进行。这种考核方法经过实践检验,比较容易让学生接受,也能真正考核出学生的能力。但在考核标准的制定,具体的操作流程上各门课有所不同。也暴露出来一些问题,比如考核的细节繁琐,打分表格太过形式化。考核太细比较耗时,太粗又考核不出每个学生的真实水平。通过对前期考核过程中出现的这些问题,课题组成员经过认真分析总结,对于Java系列课程针对于项目、文档和答辩情况制定了相应的考核标准。
6 结束语
经过一年的研究与实践,课题组成员圆满地完成了预期制定的各项目标,重新梳理了Java系列各门课程的教学目标定位,结合体验企业真实教学获得的宝贵经验,对大量案例资源进行了整合剖析研究,并在实际课堂教学中采用基于CDIO-OBE的教学模式进行实践,制定了一体化课程的教学实施方案。对Java课程群课程的教学实施了统一的部署与管理,一方面实现了教学资源的充分共享,另一方面也提高了教师的教学工作效率。通过班级座谈、问卷调查、学生反馈、教学效果评价、毕业生就业情况分析、参加软件设计大赛等方面与以往进行比较,发现新方案的实施可以让学生在校不仅学到知识、技能,还能具有一定的项目开发经验,为毕业后与企业“零距离”就业打下了良好基础。
参考文献:
[1] 崔亚楠, 胡艳华, 张恒. 基于CDIO模式Java课程教学改革与实践[J]. 现代计算机, 2013(10):53-55.
[2] 刘建芳,郑浩.CDIO 理念下《Java程序设计》一体化课程教学改革研究[J].电脑知识与技术, 2016(12):70-71.
[3] 马海峰,宋井峰,袁海锋.基于CDIO模式下JavaEE课程教学改革探索[J].计算机教育, 2014(11):42-45.
[4] 周辉奎.基于CDIO的主动式项目驱动教学在Java程序设计课程教学中的研究与实践[J].电脑知识与技术,2015(11).