论文部分内容阅读
【摘要】高职教育是一种以职业能力为核心的教育,以培养学生的职业能力和职业素养为主。本文以高职软件技术专业为例,根据高职培养目标的岗位指向——高级程序员、程序员和软件测试员等技术类岗位的特点,分析得出了9种核心能力。并以本专业一门核心课程——《Java企业技术》为例来阐述了以职业能力为核心的模块化课程设计与实现方法。
【关键词】职业能力 模块化 软件技术 高职教育
自我国启动实施“国家技能型紧缺人才培养工程”以来,尽管高等职业教育在培养目标与课程体系改革方面已经取得了诸多积极成果,但从目前软件技术人才就业情况来看,高职培养的人才与市场需求之间仍存在着较大的差距。这说明当前职业教育与企业需求发生了严重脱节。其主要原因是当前高职教育追求学科体系完整,忽视技术发展,课程设置重复,教学内容滞后,专业定位不清,缺少岗位技能的培养;而从本行业专业理论的深度、广度和专业技能的多样性等角度来看,要培养出具有高等教育层次、鲜明职业特色的技能型、应用型职业技术专门人才,其关键是要打破传统教学模式构建符合我国国情、以就业为导向、切实可行的教学模式。
以能力为基础是当今世界职业教育界的共识,而职业能力是职业教育理论和实践中的核心概念。高职教育是一种以职业能力为核心的教育,以培养学生的职业能力和职业素养为主。因此,教学模式的设计应按照职业岗位所需的职业能力模块组织教学,针对岗位对人才的要求,将专业细分为各种专项能力,并设置相应的课程模块。其中能力模块的划分,将是高职软件技术专业教学设计的关键。
1.职业岗位核心能力分析。从当前软件企业的开发流程来看,与软件技术开发有关岗位可分为:系统架构师、系统设计师、高级程序员、程序员、软件测试人员、系统管理员,如图1所示。其中需求量大,且层次相对较低的高级程序员、程序员和软件测试员等技术类岗位是本专业毕业生的主要就业目标岗位。
软件技术专业的能力分析是在对职业岗位能力分析的基础上,确立与岗位对应的专业能力,并对各专业能力的要求层次。而我们高职所培养的软件技术类人才主要从事的是程序员、高级程序员等岗位的工作,其关键核心能力由下面9项组成:
1.1 信息检索与分析能力。能熟练运用信息检索工具从互联网、相关书籍中检索与收集所需的信息;初步掌握整理和分析信息的方法和技巧;掌握书写信息检索与分析报告的方法和技巧。
1.2 沟通能力。能熟练掌握常用演讲技巧;熟练运用各种沟通工具实现沟通;熟悉社交礼仪。
1.3 计划和组织能力。能初步运用协作配置管理工具(如:VSS、CVS和SVN等)与组员协作完成指定的工作任务;具有较强的集体荣誉感;具备协调各部门的能力;有责任心、有较坚强的意志。
1.4 团队协作能力。熟悉项目组组织结构及运作流程;能自觉遵守各项组织纪律;初步具备项目计划、控制能力;能熟练编写项目小组工作计划;具备领导项目小组的能力。
1.5 解决问题能力。熟练掌握调试程序和追踪错误的方法和技巧;掌握分析程序业务处理错误的方法和技巧;掌握使用现有资源解决现场问题的方法和技巧。
1.6 语言能力。该项能力将根据学生选择就业领域的不同来进行设置:选择从事软件外包开发的行业则需要加强外语能力的培养,如:选择对日则要求日语通过三级考核;对欧美则要求英语达到四级以上;并能熟练掌握800~1200左右专业英语(对日外包则为日语)词汇;具备阅读专业外文技术文档;初步具备外语听说能力(对日为日语)。
1.7 持续学习能力。熟练掌握自主学习的方法和技巧;能自主学习课程中的扩展部分内容;具有吃苦精神和创业精神。
1.8 应用数学方法的能力。具备逻辑思维能力;熟练掌握各种算法和数据结构,并具备对中等复杂算法的分析和优化能力。
1.9 技术能力。熟练掌握操作系统原理中有关处理器调度算法、进程的同步与互斥算法以及存储器的管理方法;掌握基本的软件开发方法,初步具备中小型应用系统的设计能力;熟练常用的软件开发方法,如RUP等;了解数据库基本原理,掌握基本的数据库SQL语言;了解软件测试的基本原理,具备设计单元测试用例的能力;具备编写符合规范的技术文档;熟练掌握1~2门编程语言的基本语法,并能正确编写规模达到200行以上的简单程序,其中Bug率在每100行少于6个以上;熟练行业通用编码规范、流行的开发工具;熟练掌握编写多线程并发处理程序的能力;熟练掌握网络编程技术;至少熟练掌握一种流行的企业应用技术,并能獨立完成规范达到2000行以上业务模块的设计、编码任务,并且业务模块Bug率不超过6%;能运用工具对软件进行简单的建模;熟悉行业中流行各种应用服务器的使用;能编写软件开发过程中各种技术文档;熟练掌握单元测试技术,并能独立完成单元测试。
2.以职业能力为核心的模块化课程设计与实现。根据对职业岗位9项专项能力的分析,我们将以本专业一门核心课程——《Java企业技术》为例来讲述以职业能力为核心的模块化课程设计与实现方法。
2.1 课程在本专业中的地位。《Java企业技术》是软件技术专业的核心课程,具有承前启后的关键作用,不仅有助于学生理解、掌握企业级多层分布式应用的软件开发技术,也能为《JBuilder+WebLogic》、《Java开源框架》等后续课程的学习打下坚实的基础,并有利于增强学生的就业竞争能力和可持续发展能力。该课程在软件技术专业中的地位如图2所示。
2.2 设定课程目标。通过与企业合作、通过职业岗位调研、岗位分析,以职业岗位需求为根据确定本课程的课程目标,特别是学生的能力目标。
2.2.1 职业能力目标。通过本课程的学习,学生能用Java企业技术进行企业级分布式应用开发。
职业特定能力:
在理解J2EE框架的基础上进行企业级应用设计的能力;
使用主流的J2EE开发平台及开发工具进行企业级应用开发的能力;
对主流的J2EE服务器进行配置的能力;
使用JSP、Servlet进行Web应用开发的能力;
使用JavaBean、EJB进行业务层开发的能力;
使用JDBC进行访问数据库的能力。
行业通用能力:
应用软件工程的理念进行软件设计的能力;
应用Java进行编码的能力;
进行常用开发环境的配置及应用软件部署的能力;
进行访问数据库的能力;
良好的代码规范能力;
对应用进行测试的能力;
具备设计文档的编写能力。
核心能力:
团队合作能力;
良好的交流与沟通能力;
良好的英语阅读、书写能力;
较强的学习能力,具有可持续发展能力;
解决实际问题的能力和创新能力。
2.2.2 课程知识目标。通过本课程的学习使学生了解Java企业技术在软件技术中的地位和作用;加深对多层结构的企业级应用开发技术的理解;掌握Java企业技术的核心技术:JDBC、JavaBean、RMI、Servlet、JSP和EJB;理解J2EE框架。
2.3 教学内容遴选。本课程的教学内容紧紧围绕培养软件技术专业应用型人才这一中心目标,重点培养学生掌握企业级分布式应用的开发技能,同时注重设计能力和实践动手能力的培养。通过运用“逆向倒推法”对Java企业级应用开发人员职业岗位进行综合分析,确定岗位工作任务为:开发客户端应用来接收来自不同部门、不同业务取向的用户的请求信息及用户的输入信息,开发服务端应用响应不同用户的请求及输入,结合后台持久数据进行相应的处理,返回结果给客户端及维护后台数据。
我们知道企业级应用典型的三层分布式结构是由:表示层、业务逻辑层和数据层组成。如图3所示
图3中,表示层是用户和系统交互的接口,接收用户的请求信息,并显示由业务逻辑层处理数据的结果给用户;业务逻辑层进行业务处理,包括接收输入,处理、维护后台数据,应答客户请求等;数据层存储系统持久数据。
运用“逆向倒推法”对企业级应用开发各岗位工作任务进行分析,确定完成各岗位工作任务对知识、能力、素质的要求,选择相应的知识、技术作为课程的核心内容。岗位工作任务与所需要的知识、能力、素质对应关系如图4所示。
2.4 教学内容组织整体设计。根据课程内容遴选机制结果,将JDBC、JavaBean、RMI、Servlet、JSP和EJB等技术纳入到教学内容中,基于工作任务划分模块,建构模块化课程结构。
为提高学生的动手能力及学习积极性,强调任务、案例驱动教学模式,选用了“DUKE在线银行”典型案例为载体,并把整个案例分解成几个子项目恰当地分配到课程的各个模块中,对学生进行单项能力和职业岗位综合能力的训练。第一次课就给学生分析“DUKE在线银行”实例要达到的目标,后续的每一课完后,学生就能实现本实例的一部分功能,本课程学完后,一个完整的“DUKE在线银行”就完成了。通过学习本课程,学生不仅掌握了本课程的理论知识,还掌握了开发一个实际项目的技能。
课程安排综合实训项目——物流信息发布平台,让学生经历企业级分布式应用软件开发全过程,提高学生设计、编码、文档编写、团队合作、交流沟通等综合能力。
整个课程由七个教学模块和一个综合应用模块组成,分别是:JDBC模块、JavaBean模块、RMI模块、Servlet模块、JSP模块、会话Bean模块、实体Bean模块和物流信息发布平台综合应用模块。一个案例“DUKE在线银行”贯穿七个教学模块。课程模块化内容结构如下图5所示。
2.5 教学模块内容组织。每个教学模块由若干个子模块和一个独立实践案例组成。
每个子模块包含五个教学环节内容:任务陈述、知识点陈述、示范案例、指导练习、点评与扩展。
任务陈述:陈述子模块要完成的实际工作任务,要达到的预期教学目标和掌握的職业技能。
知识点陈述:陈述完成实际工作任务所要用到的新知识、新技术、新技能。
示范案例:能运用“知识点陈述环节”的知识解决的一个与本环节目标相似的案例。由教师来完成本案例。
指导练习:学生在教师指导下能运用“知识点讲解环节”的知识来解决前面提出的实际工作任务。
点评与扩展:教师根据学生的练习过程,对学生知识和技能的掌握情况进行点评,掌握不够的地方进行再讲解,陈述扩展的知识和技术。
独立实践案例:学生运用本教学模块中学到的知识和掌握的技能,独立完成与本模块教学中案例相似的工作任务,以训练学生的单项能力。
2.6 教学内容顺序与课时分配。《Java企业技术》总学时132课时,实践性教学占本课程的67%。课时分配及模块内容顺序如下表所示。本课程的教学内容和课程结构已初步完成从理论教学为主向培养学生技术应用能力为中心的转变。通过案例教学、课程项目实践、到软件企业顶岗实习等多种方式,初步实现了“工学结合”。
参考文献
1 全国高职高专校长联席会.点击核心——高等职业教育专业设置与课程开发导引[M].北京:高等教育出版社,2004.7.第1版
2 庞世俊.职业能力概念及相关问题研究综述[J].职业技术教育.2008(28):17~19
3 叶如意、许锁坤.面向中小企业信息化的高职人才培养模式研究[J].高等职业技术教育(天津职业大学学报).2008. 2.第17卷.第1期:29~31
4 曾宪章.论高等职业教育模块式教学模式的构建[J].教育与职业.2007(21):100~101
【关键词】职业能力 模块化 软件技术 高职教育
自我国启动实施“国家技能型紧缺人才培养工程”以来,尽管高等职业教育在培养目标与课程体系改革方面已经取得了诸多积极成果,但从目前软件技术人才就业情况来看,高职培养的人才与市场需求之间仍存在着较大的差距。这说明当前职业教育与企业需求发生了严重脱节。其主要原因是当前高职教育追求学科体系完整,忽视技术发展,课程设置重复,教学内容滞后,专业定位不清,缺少岗位技能的培养;而从本行业专业理论的深度、广度和专业技能的多样性等角度来看,要培养出具有高等教育层次、鲜明职业特色的技能型、应用型职业技术专门人才,其关键是要打破传统教学模式构建符合我国国情、以就业为导向、切实可行的教学模式。
以能力为基础是当今世界职业教育界的共识,而职业能力是职业教育理论和实践中的核心概念。高职教育是一种以职业能力为核心的教育,以培养学生的职业能力和职业素养为主。因此,教学模式的设计应按照职业岗位所需的职业能力模块组织教学,针对岗位对人才的要求,将专业细分为各种专项能力,并设置相应的课程模块。其中能力模块的划分,将是高职软件技术专业教学设计的关键。
1.职业岗位核心能力分析。从当前软件企业的开发流程来看,与软件技术开发有关岗位可分为:系统架构师、系统设计师、高级程序员、程序员、软件测试人员、系统管理员,如图1所示。其中需求量大,且层次相对较低的高级程序员、程序员和软件测试员等技术类岗位是本专业毕业生的主要就业目标岗位。
软件技术专业的能力分析是在对职业岗位能力分析的基础上,确立与岗位对应的专业能力,并对各专业能力的要求层次。而我们高职所培养的软件技术类人才主要从事的是程序员、高级程序员等岗位的工作,其关键核心能力由下面9项组成:
1.1 信息检索与分析能力。能熟练运用信息检索工具从互联网、相关书籍中检索与收集所需的信息;初步掌握整理和分析信息的方法和技巧;掌握书写信息检索与分析报告的方法和技巧。
1.2 沟通能力。能熟练掌握常用演讲技巧;熟练运用各种沟通工具实现沟通;熟悉社交礼仪。
1.3 计划和组织能力。能初步运用协作配置管理工具(如:VSS、CVS和SVN等)与组员协作完成指定的工作任务;具有较强的集体荣誉感;具备协调各部门的能力;有责任心、有较坚强的意志。
1.4 团队协作能力。熟悉项目组组织结构及运作流程;能自觉遵守各项组织纪律;初步具备项目计划、控制能力;能熟练编写项目小组工作计划;具备领导项目小组的能力。
1.5 解决问题能力。熟练掌握调试程序和追踪错误的方法和技巧;掌握分析程序业务处理错误的方法和技巧;掌握使用现有资源解决现场问题的方法和技巧。
1.6 语言能力。该项能力将根据学生选择就业领域的不同来进行设置:选择从事软件外包开发的行业则需要加强外语能力的培养,如:选择对日则要求日语通过三级考核;对欧美则要求英语达到四级以上;并能熟练掌握800~1200左右专业英语(对日外包则为日语)词汇;具备阅读专业外文技术文档;初步具备外语听说能力(对日为日语)。
1.7 持续学习能力。熟练掌握自主学习的方法和技巧;能自主学习课程中的扩展部分内容;具有吃苦精神和创业精神。
1.8 应用数学方法的能力。具备逻辑思维能力;熟练掌握各种算法和数据结构,并具备对中等复杂算法的分析和优化能力。
1.9 技术能力。熟练掌握操作系统原理中有关处理器调度算法、进程的同步与互斥算法以及存储器的管理方法;掌握基本的软件开发方法,初步具备中小型应用系统的设计能力;熟练常用的软件开发方法,如RUP等;了解数据库基本原理,掌握基本的数据库SQL语言;了解软件测试的基本原理,具备设计单元测试用例的能力;具备编写符合规范的技术文档;熟练掌握1~2门编程语言的基本语法,并能正确编写规模达到200行以上的简单程序,其中Bug率在每100行少于6个以上;熟练行业通用编码规范、流行的开发工具;熟练掌握编写多线程并发处理程序的能力;熟练掌握网络编程技术;至少熟练掌握一种流行的企业应用技术,并能獨立完成规范达到2000行以上业务模块的设计、编码任务,并且业务模块Bug率不超过6%;能运用工具对软件进行简单的建模;熟悉行业中流行各种应用服务器的使用;能编写软件开发过程中各种技术文档;熟练掌握单元测试技术,并能独立完成单元测试。
2.以职业能力为核心的模块化课程设计与实现。根据对职业岗位9项专项能力的分析,我们将以本专业一门核心课程——《Java企业技术》为例来讲述以职业能力为核心的模块化课程设计与实现方法。
2.1 课程在本专业中的地位。《Java企业技术》是软件技术专业的核心课程,具有承前启后的关键作用,不仅有助于学生理解、掌握企业级多层分布式应用的软件开发技术,也能为《JBuilder+WebLogic》、《Java开源框架》等后续课程的学习打下坚实的基础,并有利于增强学生的就业竞争能力和可持续发展能力。该课程在软件技术专业中的地位如图2所示。
2.2 设定课程目标。通过与企业合作、通过职业岗位调研、岗位分析,以职业岗位需求为根据确定本课程的课程目标,特别是学生的能力目标。
2.2.1 职业能力目标。通过本课程的学习,学生能用Java企业技术进行企业级分布式应用开发。
职业特定能力:
在理解J2EE框架的基础上进行企业级应用设计的能力;
使用主流的J2EE开发平台及开发工具进行企业级应用开发的能力;
对主流的J2EE服务器进行配置的能力;
使用JSP、Servlet进行Web应用开发的能力;
使用JavaBean、EJB进行业务层开发的能力;
使用JDBC进行访问数据库的能力。
行业通用能力:
应用软件工程的理念进行软件设计的能力;
应用Java进行编码的能力;
进行常用开发环境的配置及应用软件部署的能力;
进行访问数据库的能力;
良好的代码规范能力;
对应用进行测试的能力;
具备设计文档的编写能力。
核心能力:
团队合作能力;
良好的交流与沟通能力;
良好的英语阅读、书写能力;
较强的学习能力,具有可持续发展能力;
解决实际问题的能力和创新能力。
2.2.2 课程知识目标。通过本课程的学习使学生了解Java企业技术在软件技术中的地位和作用;加深对多层结构的企业级应用开发技术的理解;掌握Java企业技术的核心技术:JDBC、JavaBean、RMI、Servlet、JSP和EJB;理解J2EE框架。
2.3 教学内容遴选。本课程的教学内容紧紧围绕培养软件技术专业应用型人才这一中心目标,重点培养学生掌握企业级分布式应用的开发技能,同时注重设计能力和实践动手能力的培养。通过运用“逆向倒推法”对Java企业级应用开发人员职业岗位进行综合分析,确定岗位工作任务为:开发客户端应用来接收来自不同部门、不同业务取向的用户的请求信息及用户的输入信息,开发服务端应用响应不同用户的请求及输入,结合后台持久数据进行相应的处理,返回结果给客户端及维护后台数据。
我们知道企业级应用典型的三层分布式结构是由:表示层、业务逻辑层和数据层组成。如图3所示
图3中,表示层是用户和系统交互的接口,接收用户的请求信息,并显示由业务逻辑层处理数据的结果给用户;业务逻辑层进行业务处理,包括接收输入,处理、维护后台数据,应答客户请求等;数据层存储系统持久数据。
运用“逆向倒推法”对企业级应用开发各岗位工作任务进行分析,确定完成各岗位工作任务对知识、能力、素质的要求,选择相应的知识、技术作为课程的核心内容。岗位工作任务与所需要的知识、能力、素质对应关系如图4所示。
2.4 教学内容组织整体设计。根据课程内容遴选机制结果,将JDBC、JavaBean、RMI、Servlet、JSP和EJB等技术纳入到教学内容中,基于工作任务划分模块,建构模块化课程结构。
为提高学生的动手能力及学习积极性,强调任务、案例驱动教学模式,选用了“DUKE在线银行”典型案例为载体,并把整个案例分解成几个子项目恰当地分配到课程的各个模块中,对学生进行单项能力和职业岗位综合能力的训练。第一次课就给学生分析“DUKE在线银行”实例要达到的目标,后续的每一课完后,学生就能实现本实例的一部分功能,本课程学完后,一个完整的“DUKE在线银行”就完成了。通过学习本课程,学生不仅掌握了本课程的理论知识,还掌握了开发一个实际项目的技能。
课程安排综合实训项目——物流信息发布平台,让学生经历企业级分布式应用软件开发全过程,提高学生设计、编码、文档编写、团队合作、交流沟通等综合能力。
整个课程由七个教学模块和一个综合应用模块组成,分别是:JDBC模块、JavaBean模块、RMI模块、Servlet模块、JSP模块、会话Bean模块、实体Bean模块和物流信息发布平台综合应用模块。一个案例“DUKE在线银行”贯穿七个教学模块。课程模块化内容结构如下图5所示。
2.5 教学模块内容组织。每个教学模块由若干个子模块和一个独立实践案例组成。
每个子模块包含五个教学环节内容:任务陈述、知识点陈述、示范案例、指导练习、点评与扩展。
任务陈述:陈述子模块要完成的实际工作任务,要达到的预期教学目标和掌握的職业技能。
知识点陈述:陈述完成实际工作任务所要用到的新知识、新技术、新技能。
示范案例:能运用“知识点陈述环节”的知识解决的一个与本环节目标相似的案例。由教师来完成本案例。
指导练习:学生在教师指导下能运用“知识点讲解环节”的知识来解决前面提出的实际工作任务。
点评与扩展:教师根据学生的练习过程,对学生知识和技能的掌握情况进行点评,掌握不够的地方进行再讲解,陈述扩展的知识和技术。
独立实践案例:学生运用本教学模块中学到的知识和掌握的技能,独立完成与本模块教学中案例相似的工作任务,以训练学生的单项能力。
2.6 教学内容顺序与课时分配。《Java企业技术》总学时132课时,实践性教学占本课程的67%。课时分配及模块内容顺序如下表所示。本课程的教学内容和课程结构已初步完成从理论教学为主向培养学生技术应用能力为中心的转变。通过案例教学、课程项目实践、到软件企业顶岗实习等多种方式,初步实现了“工学结合”。
参考文献
1 全国高职高专校长联席会.点击核心——高等职业教育专业设置与课程开发导引[M].北京:高等教育出版社,2004.7.第1版
2 庞世俊.职业能力概念及相关问题研究综述[J].职业技术教育.2008(28):17~19
3 叶如意、许锁坤.面向中小企业信息化的高职人才培养模式研究[J].高等职业技术教育(天津职业大学学报).2008. 2.第17卷.第1期:29~31
4 曾宪章.论高等职业教育模块式教学模式的构建[J].教育与职业.2007(21):100~101