论文部分内容阅读
摘要:该文立足于当前IT企业对软件测试类人才的需求现状,分析了高校在开展软件测试实践课教学和人才培养方面存在的不足。就当前的软件测试课教学模式、方法和手段提出改进意见,提出了以就业为导向的实践课课程改革的思想,实现了实践教学与就业岗位的零距离,有效的弥补了毕业生没有工作经验的缺陷。最后就教学改革进行了分析和总结。
关键词:软件测试;实践课;就业
中图分类号:TP311文献标识码:A文章编号:1009-3044(2010)04-0999-02
Employment-oriented Software Testing Practical Course Reform
MA Min-sheng, MA You-zhong, REN Gang
(Information Engineering Department of Chenggong College, Gongyi 451200, China)
Abstract: Based on the current requirement situation of the IT companies for software testing talents, the paper analyzed the shortcomings of software testing practice teaching and training of personnel in colleges. Concerning the current software testing teaching model、methods and means, we proposed the employment-oriented practical course reform,achieved the “zero distance” between practical teaching and employment, effectively filled up the deficiencies of graduates without working experiences. Finally analyzed and summarized the teaching reform.
Key words: software testing; practical course; employment
软件测试课程是近年来才逐渐被社会广泛认同和重视的一门软件工程实践类课程。软件测试职业就业具有前景广泛,薪资待遇高,竞争相对较小,无性别歧视,多元化发展等特点,应成为今后相当时期内高校计算机类专业的一门重要课程。现阶段,我国软件测试人才缺口已经超过30万,供求矛盾较为突出,造成此缺口的最大原因就是我国软件测试人才培养途径单一、培养体制不健全。
本文立足于当前大学生的就业问题,调研了目前社会上对软件测试人才的需求情况,提出在高校中开展课程改革和人才培养方面的创新,着眼于学生毕业后能够满足各类IT企业对软件测试人才的要求,强调实践课要结合项目实战,运用教学案例,模拟实际的工作场景,锻炼学生的实践能力,为社会培养软件测试方面的高级专业技术人才。
1 软件测试实践课教学现状分析
国内外对软件测试人才的培养主要有三种模式:企业内部、高等院校和IT培训机构。企业培养的人才大多是通过参与项目自己摸索的软件开发人员,由于缺乏对软件测试全面的认识,在测试思想、技能、思维方式、沟通能力等方面都需要进一步提高。
高校培养模式弥补了IT培训机构功利性强、培养目标单一、费用较高等缺点,但主要的缺陷是学生因为没有实习机会而普遍缺乏工作经验,不能满足公司对测试人才的要求,在正式入职前还需要公司组织培训后才能上岗,这给企业带来了一定的风险和成本。
目前,大学软件测试教学中存在的问题有:对实践课程的重视程度不够,软件测试开展的不够深入、彻底。测试过程存在大量的不规范性和随意性。教材质量良莠不齐,教学上知识结构不合理,缺乏具体的实践和系统的培训指导。教师资源缺乏,教学方法和手段因循守旧。高校中有讲授软件工程的主讲教师能很好的讲解软件测试理论和介绍软件测试方法,但缺乏较好的软件测试案例和一定的工作经验。学生对软件测试职业存在一些错误的和片面的理解等。
2 以就业为导向的软件测试实践课课程改革
高校的软件测试教学改革的主要思路是,以学生就业为导向和中心目的,培养学生成为理论与实践并重,综合素质过硬的复合型应用型人才。主要内容和做法是:
2.1 建立软件开发全程测试的思想
1) 重视软件测试,规范化测试流程
主要内容是,参照测试公司对测试人员的岗位描述和任职要求,借鉴公司内部测试流程和测试方法,优化当前课程体系和知识结构,搭建软件测试工作环境和平台,构建测试实验室,模拟真实的工作场景,进行完整的软件测试流程实践。
2) 建立学生测试团队,模拟软件公司开展测试工作
在实验课教学中,教师合理分配各成员间的任务,培养学生岗位技能。测试实验采用分组的形式完成。每组由5~7名成员组成,指定一名学生为项目组长,其余学生为开发人员和测试人员。组长负责项目进展、分工协作、测试计划的制定等工作, 其他组员分别就相关模块进行各自的测试策略、测试用例设计以及完成测试报告等。然后通过角色交换,充分发挥学生的沟通能力。
3) 软件测试引领测试驱动开发
测试驱动开发实践来源于敏捷式开发思想,其核心就是在开发代码之前,先编写测试代码.也就是说明确开发某个功能后,首先思考如何对这个功能进行测试,并完成测试代码的编写,然后编写相关的代码满足这些测试用例,循环进行添加其他功能,直到完成这种思想让学生认识到测试是开发的重要组成部分,对于学生树立牢固的测试理念是必不可缺的。
2.2 多种教学实践综合运用
1) 循序渐进式的教学体系 根据学生能力水平的高低和实际的岗位需求,将教学目标定位进行划分。现有IT公司在招聘测试人员时根据技能要求分为初级测试工程师、中级测试工程师和高级测试工程师。进一步分析初级、中级测试工程师的工作内容和所需要的技能.将这些技能按照渐进的顺序分为不同的组,当掌握了该组所需要的技能之后,就可以认为达到了一个新的测试工程师等级。这样,在教学过程中可以循序渐进地让学生掌握不同的技能组,每完成一个技能组,都可以完成对应的实际工作。
2) 开展“五步教学法” 根据软件测试岗位实践性强的特点,在教学中结合实际项目、开展“五步教学法”,按照以下五个步骤来组织教学:布置问题、动手实践、分析和讨论问题、理论讲授、实践提高。通过动手实践,学生明确工作任务。通过教师的分析和学生的讨论.学生能认识到自己动手实践中存在的问题。经过前三个环节的铺垫,学生就比较容易接受理论讲授,并能在实践环节去消化、运用。
该教学法以完成职业培养为目标,并将目标细分为一个个渐进的具体目标,通过不断地设置问题、解决问题,学生最终掌握一系列实际工作技能,达成培养目标。“五步教学法”的开展,一方面通过先动手、后总结的方式,强调在实践中学习,使学生对理论知识的学习有更清楚的目的,提高了学生的学习兴趣;另一方面,通过个人思考和小组讨论.锻炼了学生的思维能力, 同时学生的自主学习能力得到进一步提升,而这也是学生从业后需要具备的基本素质。
3) 框架式教学方法 给出实验目的和简略的实验参考步骤,让学生使用学过的软件工程的方法来进行实验。实验过程中每一步的具体内容需要学生自己完成,为学生充分发挥主观能动性创造了条件,留下了思考的空间。
4) 项目驱动下的案例教学 案例教学更有利于提高学生分析问题和解决问题的能力,促进学生学会学习以及沟通合作。在教学的过程中,应当以可操作的软件测试案例为中心,将测试理论贯穿开发全过程,指导软件开发。让学生能够真正地体会到实际的测试流程。鉴于软件测试由第三方进行的原则,可以由小组之间互相交换软件进行测试,学生之间可以进一步交流,互相督促,共同进步。
2.3 开发软件测试基线包用于教学
软件测试实践教学要借鉴IT公司开展测试项目的做法,面临的重要问题是项目案例的组织和规划,为此可以组织开发不同层次的软件测试基线包用于教学。
测试基线包和案例的收集主要通过以下途径:一是历年典型的学生开发项目案例、毕业设计等;二是包含着人为设置的软件缺陷的软件系列,所设置的缺陷代表着在实际软件开发过程中的典型问题;三是企业的项目资源,包括项目需求文档、项目设计文档以及项目软件的不同版本,这些资源能够让学生接触到完整的案例.并且由于基线包中包含了软件的不同版本,从这些版本中.可以清晰地发现软件缺陷是怎样被不断地发现和修复。此外,还可以从教材及参考书中收集、从互联网中收集。在测试案例的选取上,要遵循典型性、针对性和系统性原则,收集到的案例可以作为理论课讲解时的实例,也可以作为实验课的基本素材。
为了使软件测试基线包具有可移植性,可通过技术手段实现软件测试基线包的快速部署,使学生能快速便捷地完成测试环境及测试软件在不同场合的搭建。软件测试基线包的开发为教学和实践提供了有力保障.同时便于课程教学资源共享。
2.4 培养学生综合素质和职业技能
公司在招聘人才时,要求应聘者不仅要具有较强的理论知识和实践经验,也要具备良好的职业素质。由于软件测试职业的特殊性,后者显得尤为重要。目前的教学中,对于应试技巧的教学内容几乎没有,因此很有必要就这方面组织培训,使学生在入职前对软件测试职业有一定的了解,赢得面试官的青睐,获得更多的就业机会。
1) 加强学生面试技巧的锻炼,例如面试中的仪表风度、专业知识、工作实践经验、口头表达能力、综合分析能力、反应能力与应变能力、人际交往能力、工作态度、上进心与进取心、求职动机等方面。
2) 注重培养软件测试必需的沟通能力、责任心、怀疑精神、发散思维和反向思维能力。在学生中树立良好的测试团队意识,例如目标意识、团队意识、服务意识、竞争意识、危机意识等。
3) 搜集和整理一些知名软件公司(例如中兴、华为、IBM等)的软件测试工程师面试和笔试题,利用教学间隙组织模拟考试,进行讲解和点评。
4) 建立校外实训基地,与IT公司联合培养,通过企业实习提高学生的岗位技能,形成定向培养的长效机制,弥补大学毕业生没有工作经验的缺陷。聘请业界知名专家、IT公司经理来校讲座,了解测试行业最新动态,就相关问题答疑解惑,激发学生对软件测试学习的兴趣。
总之,软件测试教学应当与社会的真正需求相结合,实现就业岗位零距离。
3 总结和展望
以就业为导向的软件测试实践课教学改革改变了过去实践课流于形式,开展不到位的缺点,增强了学生的社会实践能力和岗位技能,实现了教学与就业的零距离,取得了一定的教学效果和社会效益。目前改革还未能形成完整的教学体系,在实践课的组织和实际操作上有一定的难度,实验形式的过于灵活会导致课堂教学效率降低。今后需要在目前的基础上作进一步完善,以适应当前IT企业不断变化的测试人才需求状况。
参考文献:
[1] 陈能技.软件测试技术大全-测试基础、流行工具、项目实战[M].北京:电子工业出版社,2008.
[2] 古乐,史九林.软件测试案例与实践教程[M].北京:清华大学出版社,2007.
[3] 朱少民.软件测试方法和技术[M].北京:清华大学出版社,2005.
[4] 刘德宝.软件测试工程师[M].北京:科学出版社,2009.
[5] 徐芳,戴坚锋.高职软件测试课程的改革与实践[J].职业教育研究,2008(6).
[6] 胡宏银.软件测试课程教学方法探讨与实践[J].计算机教育,2007(6).
关键词:软件测试;实践课;就业
中图分类号:TP311文献标识码:A文章编号:1009-3044(2010)04-0999-02
Employment-oriented Software Testing Practical Course Reform
MA Min-sheng, MA You-zhong, REN Gang
(Information Engineering Department of Chenggong College, Gongyi 451200, China)
Abstract: Based on the current requirement situation of the IT companies for software testing talents, the paper analyzed the shortcomings of software testing practice teaching and training of personnel in colleges. Concerning the current software testing teaching model、methods and means, we proposed the employment-oriented practical course reform,achieved the “zero distance” between practical teaching and employment, effectively filled up the deficiencies of graduates without working experiences. Finally analyzed and summarized the teaching reform.
Key words: software testing; practical course; employment
软件测试课程是近年来才逐渐被社会广泛认同和重视的一门软件工程实践类课程。软件测试职业就业具有前景广泛,薪资待遇高,竞争相对较小,无性别歧视,多元化发展等特点,应成为今后相当时期内高校计算机类专业的一门重要课程。现阶段,我国软件测试人才缺口已经超过30万,供求矛盾较为突出,造成此缺口的最大原因就是我国软件测试人才培养途径单一、培养体制不健全。
本文立足于当前大学生的就业问题,调研了目前社会上对软件测试人才的需求情况,提出在高校中开展课程改革和人才培养方面的创新,着眼于学生毕业后能够满足各类IT企业对软件测试人才的要求,强调实践课要结合项目实战,运用教学案例,模拟实际的工作场景,锻炼学生的实践能力,为社会培养软件测试方面的高级专业技术人才。
1 软件测试实践课教学现状分析
国内外对软件测试人才的培养主要有三种模式:企业内部、高等院校和IT培训机构。企业培养的人才大多是通过参与项目自己摸索的软件开发人员,由于缺乏对软件测试全面的认识,在测试思想、技能、思维方式、沟通能力等方面都需要进一步提高。
高校培养模式弥补了IT培训机构功利性强、培养目标单一、费用较高等缺点,但主要的缺陷是学生因为没有实习机会而普遍缺乏工作经验,不能满足公司对测试人才的要求,在正式入职前还需要公司组织培训后才能上岗,这给企业带来了一定的风险和成本。
目前,大学软件测试教学中存在的问题有:对实践课程的重视程度不够,软件测试开展的不够深入、彻底。测试过程存在大量的不规范性和随意性。教材质量良莠不齐,教学上知识结构不合理,缺乏具体的实践和系统的培训指导。教师资源缺乏,教学方法和手段因循守旧。高校中有讲授软件工程的主讲教师能很好的讲解软件测试理论和介绍软件测试方法,但缺乏较好的软件测试案例和一定的工作经验。学生对软件测试职业存在一些错误的和片面的理解等。
2 以就业为导向的软件测试实践课课程改革
高校的软件测试教学改革的主要思路是,以学生就业为导向和中心目的,培养学生成为理论与实践并重,综合素质过硬的复合型应用型人才。主要内容和做法是:
2.1 建立软件开发全程测试的思想
1) 重视软件测试,规范化测试流程
主要内容是,参照测试公司对测试人员的岗位描述和任职要求,借鉴公司内部测试流程和测试方法,优化当前课程体系和知识结构,搭建软件测试工作环境和平台,构建测试实验室,模拟真实的工作场景,进行完整的软件测试流程实践。
2) 建立学生测试团队,模拟软件公司开展测试工作
在实验课教学中,教师合理分配各成员间的任务,培养学生岗位技能。测试实验采用分组的形式完成。每组由5~7名成员组成,指定一名学生为项目组长,其余学生为开发人员和测试人员。组长负责项目进展、分工协作、测试计划的制定等工作, 其他组员分别就相关模块进行各自的测试策略、测试用例设计以及完成测试报告等。然后通过角色交换,充分发挥学生的沟通能力。
3) 软件测试引领测试驱动开发
测试驱动开发实践来源于敏捷式开发思想,其核心就是在开发代码之前,先编写测试代码.也就是说明确开发某个功能后,首先思考如何对这个功能进行测试,并完成测试代码的编写,然后编写相关的代码满足这些测试用例,循环进行添加其他功能,直到完成这种思想让学生认识到测试是开发的重要组成部分,对于学生树立牢固的测试理念是必不可缺的。
2.2 多种教学实践综合运用
1) 循序渐进式的教学体系 根据学生能力水平的高低和实际的岗位需求,将教学目标定位进行划分。现有IT公司在招聘测试人员时根据技能要求分为初级测试工程师、中级测试工程师和高级测试工程师。进一步分析初级、中级测试工程师的工作内容和所需要的技能.将这些技能按照渐进的顺序分为不同的组,当掌握了该组所需要的技能之后,就可以认为达到了一个新的测试工程师等级。这样,在教学过程中可以循序渐进地让学生掌握不同的技能组,每完成一个技能组,都可以完成对应的实际工作。
2) 开展“五步教学法” 根据软件测试岗位实践性强的特点,在教学中结合实际项目、开展“五步教学法”,按照以下五个步骤来组织教学:布置问题、动手实践、分析和讨论问题、理论讲授、实践提高。通过动手实践,学生明确工作任务。通过教师的分析和学生的讨论.学生能认识到自己动手实践中存在的问题。经过前三个环节的铺垫,学生就比较容易接受理论讲授,并能在实践环节去消化、运用。
该教学法以完成职业培养为目标,并将目标细分为一个个渐进的具体目标,通过不断地设置问题、解决问题,学生最终掌握一系列实际工作技能,达成培养目标。“五步教学法”的开展,一方面通过先动手、后总结的方式,强调在实践中学习,使学生对理论知识的学习有更清楚的目的,提高了学生的学习兴趣;另一方面,通过个人思考和小组讨论.锻炼了学生的思维能力, 同时学生的自主学习能力得到进一步提升,而这也是学生从业后需要具备的基本素质。
3) 框架式教学方法 给出实验目的和简略的实验参考步骤,让学生使用学过的软件工程的方法来进行实验。实验过程中每一步的具体内容需要学生自己完成,为学生充分发挥主观能动性创造了条件,留下了思考的空间。
4) 项目驱动下的案例教学 案例教学更有利于提高学生分析问题和解决问题的能力,促进学生学会学习以及沟通合作。在教学的过程中,应当以可操作的软件测试案例为中心,将测试理论贯穿开发全过程,指导软件开发。让学生能够真正地体会到实际的测试流程。鉴于软件测试由第三方进行的原则,可以由小组之间互相交换软件进行测试,学生之间可以进一步交流,互相督促,共同进步。
2.3 开发软件测试基线包用于教学
软件测试实践教学要借鉴IT公司开展测试项目的做法,面临的重要问题是项目案例的组织和规划,为此可以组织开发不同层次的软件测试基线包用于教学。
测试基线包和案例的收集主要通过以下途径:一是历年典型的学生开发项目案例、毕业设计等;二是包含着人为设置的软件缺陷的软件系列,所设置的缺陷代表着在实际软件开发过程中的典型问题;三是企业的项目资源,包括项目需求文档、项目设计文档以及项目软件的不同版本,这些资源能够让学生接触到完整的案例.并且由于基线包中包含了软件的不同版本,从这些版本中.可以清晰地发现软件缺陷是怎样被不断地发现和修复。此外,还可以从教材及参考书中收集、从互联网中收集。在测试案例的选取上,要遵循典型性、针对性和系统性原则,收集到的案例可以作为理论课讲解时的实例,也可以作为实验课的基本素材。
为了使软件测试基线包具有可移植性,可通过技术手段实现软件测试基线包的快速部署,使学生能快速便捷地完成测试环境及测试软件在不同场合的搭建。软件测试基线包的开发为教学和实践提供了有力保障.同时便于课程教学资源共享。
2.4 培养学生综合素质和职业技能
公司在招聘人才时,要求应聘者不仅要具有较强的理论知识和实践经验,也要具备良好的职业素质。由于软件测试职业的特殊性,后者显得尤为重要。目前的教学中,对于应试技巧的教学内容几乎没有,因此很有必要就这方面组织培训,使学生在入职前对软件测试职业有一定的了解,赢得面试官的青睐,获得更多的就业机会。
1) 加强学生面试技巧的锻炼,例如面试中的仪表风度、专业知识、工作实践经验、口头表达能力、综合分析能力、反应能力与应变能力、人际交往能力、工作态度、上进心与进取心、求职动机等方面。
2) 注重培养软件测试必需的沟通能力、责任心、怀疑精神、发散思维和反向思维能力。在学生中树立良好的测试团队意识,例如目标意识、团队意识、服务意识、竞争意识、危机意识等。
3) 搜集和整理一些知名软件公司(例如中兴、华为、IBM等)的软件测试工程师面试和笔试题,利用教学间隙组织模拟考试,进行讲解和点评。
4) 建立校外实训基地,与IT公司联合培养,通过企业实习提高学生的岗位技能,形成定向培养的长效机制,弥补大学毕业生没有工作经验的缺陷。聘请业界知名专家、IT公司经理来校讲座,了解测试行业最新动态,就相关问题答疑解惑,激发学生对软件测试学习的兴趣。
总之,软件测试教学应当与社会的真正需求相结合,实现就业岗位零距离。
3 总结和展望
以就业为导向的软件测试实践课教学改革改变了过去实践课流于形式,开展不到位的缺点,增强了学生的社会实践能力和岗位技能,实现了教学与就业的零距离,取得了一定的教学效果和社会效益。目前改革还未能形成完整的教学体系,在实践课的组织和实际操作上有一定的难度,实验形式的过于灵活会导致课堂教学效率降低。今后需要在目前的基础上作进一步完善,以适应当前IT企业不断变化的测试人才需求状况。
参考文献:
[1] 陈能技.软件测试技术大全-测试基础、流行工具、项目实战[M].北京:电子工业出版社,2008.
[2] 古乐,史九林.软件测试案例与实践教程[M].北京:清华大学出版社,2007.
[3] 朱少民.软件测试方法和技术[M].北京:清华大学出版社,2005.
[4] 刘德宝.软件测试工程师[M].北京:科学出版社,2009.
[5] 徐芳,戴坚锋.高职软件测试课程的改革与实践[J].职业教育研究,2008(6).
[6] 胡宏银.软件测试课程教学方法探讨与实践[J].计算机教育,2007(6).