时间:2022-10-23 02:18:35
序论:在您撰写软件测试实训总结时,参考他人的优秀作品可以开阔视野,小编为您整理的7篇范文,希望这些建议能够激发您的创作热情,引导您走向新的创作高度。
作者简介:吴梦麟(1982-),男,江苏南京人,南京工业大学电子信息与工程学院,讲师。
中图分类号:G642.44 文献标识码:A 文章编号:1007-0079(2013)14-0126-02
近年来,随着中国内需市场的增长和国内外外包企业的合作加深,我国的软件外包行业得到了迅速发展。软件测试作为软件外包的主营业务之一,是加快软件企业与国际接轨,实现产品国际化的重要手段。随着软件开发流程的系统化和规范化,我国软件企业对软件测试的需求逐步增大,因此高校计算机专业中的软件测试人才具有良好的就业前景。
由于软件测试工作的特殊性,需要从业者不仅掌握一定的软件技术,同时也要对软件测试的方法和流程具备相当的经验。通过高校教育培养出来的计算机专业应届毕业生,虽然能够掌握基本的软件开发技术和软件测试理论,但是缺乏实际的测试经验和相应的行业背景知识,离企业的需求尚有一定的差距。目前高校计算机专业中软件测试教学仍以理论为主,实践动手能力和项目背景经验的培养相对不足,这些矛盾导致学生就业时很难适应企业的用人要求,企业也必须对招入的应届毕业生进行培训,花费相当的人力和物力。
项目实训是解决高校和企业之间供需矛盾的有效手段。在日常教学计划中引入项目实训,以实际测试任务为驱动,按照企业规范进行流程管理,让学生掌握测试过程中各阶段的技能,理论联系实践地接受企业化的锻炼。通过实训课程,使学生不但能够学习到实际测试经验,而且能够增强团队意识,进一步缩小毕业生与职业测试工程师之间的差距。
一、软件测试项目实施
1.测试项目简介
本文所述的软件测试实训项目是基于校企共建模式,由南京工业大学(以下简称“我校”)软件外包实验室提供软件测试的场所和专用的硬件设备,从合作的软件公司引入相应的测试平台、管理流程和测试报告文档的测试项目。
本项目的内容是针对前期开发的教师管理系统进行测试。该系统是教学部门的业务管理支撑系统,测试主要围绕教师信息的查询和更新操作的管理。通过对这些功能模块的测试,增强系统的易用性、稳定性、可配置性,消除信息孤岛,进一步提高数据信息的应用水平。
在测试环境搭建过程中,服务器的软硬件配置要与该系统的实际运行环境保持一致。对于测试计划、测试方案和测试用例等文档的修改、更新操作,则采用svn版本管理工具来进行控制。学生可以通过svn服务器平台,按照进度提交每日的测试用例文档,并填写日志记录测试进度和每天的测试工作。
2.实训计划和人员管理
软件测试实训安排在我校外包实验室中进行,采用与企业相同的管理模式集中训练,由相关教师和企业工程师来指导测试流程。测试团队的成员来自于我校电子与信息工程学院计算机专业的大三、大四学生,以及对软件测试感兴趣的相近专业的学生。这些学生具备基本的软件编程能力,并且对测试的基本理论有一定的了解。根据学生自身水平和对项目的熟悉程度,可以将其划分为不同角色,其中包括开发人员和测试人员。开发人员由原来参与系统开发的部分学生担任。测试人员可以分成不同的小组测试不同的模块,每个小组设置一个测试组长,负责测试项目管理,其余组员则负责执行测试用例,各小组都有一名教师作为指导教师,控制模块的测试进度。整个测试实训项目安排在假期进行,用时半个月,每天工作8小时。每天早晨由测试组长安排当天的测试任务,并对前一天的测试结果进行总结。在每个时间节点,由指导教师和小组成员对相关测试文档进行评审。
3.测试项目进程
本项目的实际流程图如图1所示,在项目初始阶段,担任开发人员角色的学生叙述产品需求和业务流程,为编写测试计划做准备。该测试项目主要分为5个阶段:测试计划制定、测试方案编写、测试用例设计、多轮系统测试和测试系统报告提交。每个阶段都力求达到规范化、细致化的测试目标,同时每个阶段都要经过教师和各个组员之间的评审,如果评审通过,可以开始下一阶段的工作;如果不通过,则需要完善后继续评审直到通过。
(1)测试计划制定。在了解了教师管理系统的需求以后,结合学生的基本情况、系统模块数量和测试的周期来制定测试计划。测试计划要涵盖测试的范围和环境、测试人员的管理和测试进度安排。考虑到参与实训项目的学生缺乏相关经验,因此测试计划要重点突出每个测试小组所对应的系统模块,以及测试流程中每个阶段所对应的完成日期。该测试计划由各组组长和指导教师制定,最后需各小组评审后通过。
(2)测试方案编写。测试方案是按照系统需求说明书详细的分析测试的模块,指导后续的测试用例的编写工作,重点在于对模块具体功能的理解和测试对象的分析。在这一阶段,首先由担任开发人员角色的学生来介绍系统模块的基本功能,并以文档的形式向对应测试组成员提交;然后由指导教师以具体测试点为例,介绍详细的测试用例写法;最后,由各组组长将测试任务分配给组员,各组员在理解的基础上开始测试用例的设计。测试方案完成以后由各组组长汇总,并在组内进行评审。
(3)测试用例设计。测试用例的编写是针对各功能模块测试而设计的一组测试输入、执行条件以及预期结果,也是本实训项目的重点内容。在对模块的特性和功能了解的基础上,设计系统的测试点,设计时应考虑角色权限、验证点和测试描述。在设计验证点的过程中,鼓励学生展开讨论,力求做到无疏漏;同时在测试描述时,可以将等价类划分、边界值、错误推测等常用方法与书本理论相结合,通过具体的实例加深学生对所学知识的理解。最终的测试用例以Excel表格形式列出,其中包括编号、重要级别、操作步骤、预期输出和实际测试结果等条目。
(4)多轮系统测试。按照测试用例的具体内容,可以进行多轮的系统测试。根据测试结果,扮演开发人员角色的学生对缺陷进行修改。通过这一过程,不但使学生认识到开发过程中存在的问题,而且积累了开发经验,为今后规范化的编程打下了基础。
(5)测试报告提交。通过半个月的实训,学生经历了规范化的测试流程,测试报告的编写是对测试内容的概括和总结。报告的内容主要有以下三个方面:通过对测试结果的分析,得到对软件质量的评价;总结本次的测试过程,为制定以后的测试计划提供参考;评估本次测试计划和测试执行是否符合规范。通过本次实训,学生普遍体会到从理论知识到实践的过程,明确了规范化的软件测试方法,同时对软件编写中隐含的错误和缺陷也有了一定的认识,为今后的软件开发打下一定的基础。
二、软件测试实训存在的问题和解决办法
本次软件测试实训基本达到了预期的效果,学生不但学到了规范化的测试流程,提高了职业软件素养,而且通过互动和交流,发现了教学中存在的一些需要解决的问题。首先,本次软件测试实训是针对上一次实训开发的系统,离企业的实际系统测试尚有一些差距;其次,参与的学生缺乏实际经验,对软件测试认识不足,导致测试方案和测试用例编写不够规范、完善;另外,相应的管理需要加强,在实训过程中存在迟到、早退以及缺席的现象,从而影响了测试进度。
针对以上问题,在今后的实训过程中,测试项目要尽量切合企业的实际需求,同时在测试方案和测试用例的评审中,要加强教师和学生的沟通,强调测试流程的规范性,可以多鼓励高水平的学生带低水平的学生。另外,可以采取企业现行管理方式对实训进行管理,如引入考勤制度、评审制度等。
三、结语
软件测试是我国软件产业高速发展中需求缺口较大的一个行业,培养具有相关经验和符合企业需求的软件测试人才是目前高校计算机专业需要解决的核心问题之一。本文通过研究软件测试实训项目,探索了软件测试专业人才的培训方式以及在此过程中遇到的问题,对研究校企联合的人才培养模式具有重要意义。
参考文献:
[1]徐瑾.中国软件外包业研究综述与展望[J].经济学动态,2010,(11):75-78.
【关键词】软件测试;工作过程;课程设计
1.课程的定位与教学设计
1.1 课程定位
《软件测试》课程作为软件专业二年级下学期的专业课,它的前导课程是《数据库设计》、《数据结构》、《软件工程实施》,后续课程是课程实训及毕业实习。通过本课程的学习,使学生加深对软件测试基本理论和基本方法的理解与应用,能熟练使用常用软件测试工具,并能运用软件测试工具完成应用软件的测试工作,提高学生对软件的测试与维护能力,并进一步培养学生的的团队协作能力。
1.2 课程设计思路
软件测试是高职计算机软件专业学生在以后的工作岗位上要用到的核心技能。因此,本课程应该作为专业必修课程和核心课程,重点培养学生在以后的工作岗位上所需的职业能力:白盒测试、黑盒测试、自动化功能测试与性能测试。
《软件测试》课程的总体设计思路是,转变传统的学科课程模式,不再以知识传授为主,构建以工作任务为中心的企业培训体系,引入企业项目,让学生在真实的企业项目中完成相应的工作任务,从而储备相关的专业知识,发展职业能力。授课内容重点突出对学生职业能力的培养。课堂上不再单纯地只讲授理论知识,而是围绕实际工作任务的需要来选取,这充分考虑了高职学生动手能力强,理论知识薄弱的特点。
2.教学设计
2.1 教学情境设计
本课程小组通过学院专业指导委员会、重庆亚德科技、重庆大佳、重庆港澳大家等软件公司的企业技术人员进行实际调查,制定了适合高职学生的软件测试课程体系与职业能力,确定了软件测试课程典型的教学情景与子情景,在教学情景中给出具体的工作任务、工作方法以及要求学生掌握的知识与技能等,在教学中贯彻理论实践一体化的教学模式,做到教、学、做三结合,充分体现工学结合的优势,培养学生的职业素质。本课程的5个工作过程及11个典型工作任务如表1所示。
2.2 教材设计
(1)教材应充分考虑软件测试的实践特性,以工作任务为导向,引入必须的软件测试理论知识,让学生在实际测试的过程中,循序渐进地掌握必要的理论知识。
(2)编写的内容要以项目驱动为原则,以企业的实际案例、场景模拟、工作过程录像为载体,增强课后的能力拓展,并根据高职学生的职业能力所需知识的深度和广度来编写,并在具体的工作任务中使学生逐渐形成团队协作意识。
(3)教材应突出软件测试技术的实用性、前瞻性和开放性,不能只是简单地介绍一些技术上的操作,而忽略了软件学生所需的职业能力,在教材中应融入软件测试技术中所用到的新规范、新技术、新标准、新工具、新知识,让学生能系统地掌握软件测试的前沿知识。
(4)教材应充分引领学生主动、积极地去学习,因此,文字表述要简明扼要,内容展现应图文并茂,内容应详略得到。
2.3 教学方法设计
由于本课程的主要教学内容涉及白盒测试、黑盒测试、自动化功能测试与性能测试等操作性很强的教学环节,必须通过课程实训才能达到对项目作规范需求分析的培养目标。具体教学方法设计如下:
(1)全班学生分为N个项目小组,3人一小组,1人任组长,组长要求协调沟通能力比较强。
(2)在教学过程中应加强学生对软件总体的测试能力,采用任务驱动教学,注重以任务引领,提高学生学习兴趣;
(3)组建软件外包中心,引进企业项目,让学生真实地体验在软件公司的测试流程。外包中心作为理论实践一体化教室,达到理论和实际不脱节。
(4)教学过程中可参考软件测试评师考试中规定的知识要求和技能等级职业标准。
(5)教师模拟企业的项目经理,必须具有开拓精神,带领团队完成工作任务,并在完成工作任务的过程中,探索基于工作过程的职业教育新模式,培养学生的软件测试能力,构建软件测试知识体系。
2.4 教学评价设计
(1)突出过程评价,结合课堂提问、实作测试、课后拓展、任务考核等手段,加强实训教学环节的考核,并注重平时考核。
(2)强调目标评价和理论与实践一体化评价,注重引导学生进行学习方式的改变。
(3)每个项目小组在完成课程后,要将所学的内容做ppt,汇报本小组项目完成的情况以及体会。
(4)实行学习过程的过程化考核。平时作业、期中与期末考试均采用上机实训的方式考核,对于不合格者,在团队的协作帮助下持续练习,直至过关。这样可以督促学生不断地练习,真正提高动手能力。
(5)课程的学期成绩=平时作业(10%)+上课考勤(10%)+小组项目测试情况(30%)+小组ppt总结情况(10%)+期末成绩(40%)
3.课程资源的开发与利用
(1)围绕软件测试课程,收集教师和学生必备的软件测试工具,制作适宜教学的多媒体教学课件。
(2)组建软件外包中心,搭建实训工作平台,为学生实训提供真实的工作环境,从而提高其职业素养。
(3)要充分开发网络课程,让学生在课余时间可以自主学习,弥补学生课本知识的不足。
(4)充分利用和开放实训中心,将教学与实训合一,将理论与实践合一,满足学生综合能力培养的要求。
(5)积极利用电子书籍、电子期刊、数字图书馆、校园网、各大网站等网络资源,使教学内容从单一化向多元化转变,通过企业技术人员的指导,课程教师的辅导,使学生知识和能力的拓展成为可能。
4.课程的实施效果
(1)基于项目化的授课内容
建立软件外包中心,引入企业项目内容,软件测试的授课内容紧紧围绕企业项目的典型工作任务开展,学生的能力与素质参照软件测试工程师的岗位要求,让学生真实感受企业环境,就业零距离上岗。
(2)基于过程化的授课方式
老师授课不再单纯地讲解理论,完全按照企业的软件测试流程开展,制定规范的软件测试计划、编写测试用例、利用测试工具测试、编制测试报告,有利于学生养成职业化的学习习惯与工作习惯。
(3)基于理论实践一体化的教学设备
学生在软件外包中心上课以及实验,真正实现了“做中学,学中做”的企业工作环境。
(4)基于能力化的学习评价
学生的评价不再单纯地以理论考试为依据,而是从学生的软件测试专业能力、利用软件测试工具的能力、团队沟通协调能力进行综合地评价。
参考文献
[1]郑泳.基于工作过程系统化的高职《软件测试》课程设计[J].漯河职业技术学院学院,2010(9).
[2]程茂,温静,吴玉洁.《软件测试》课程的教学研究[J].河北师范大学学报,2010(4).
[3]蔡建平.开源软件测试实践教学方案设计[J].计算机教育,2011(3).
关键词:软件测试;分阶段教学;案例驱动教学;双证教育;校企合作
中图分类号:G420 文献标识码:A 文章编号:1009-3044(2012)30-7258-02
近几年来,计算机信息技术发展迅速,我国的IT行业开始向国际化、规范化迈进。以往只重视软件开发而忽视软件测试的情况正在改变,软件测试行业开始迅速发展。
国外小一些的软件企业,软件开发与测试人员之比基本上是1:1,微软公司更是达到了1:2,软测试人员规模远超过开发人员的规模[1]。尽管一些国内大型软件企业开始重视软件人才的合理配置,但有的企业其比例也就只有10:1。软件测试工程师闹人才荒[2],中高级测试员紧缺的现象已十分明显。
据统计,国内软件测试工程师的缺口为20万人左右,这一点从51JOB的招聘信息中可见一斑。近两年,软件测试工程师的需求和待遇都达到了历史新高。
然而与当前软件测试行业如火如荼的现状极不协调的是当前软件测试培训领域的现状[3],从事软件测试工程师培训的专业机构寥寥无几,而且价格昂贵。大学里几乎没有软件测试专业,部分院校开设《软件测试》这门课程面临三方面的问题,一是软件测试教材知识片面。二是内容枯燥,学生不感兴趣。三是教师教学经验严重不足。面对软件测试人才的社会需求紧迫性,人才培养单位应该扩大软件测试人才培养规模,总结软件测试知识点,改革教学方法,培养学生兴趣,提高培养质量。
1 软件测试课程教学方法探讨
针对以上问题,在教学中应采取以下解决方法:
1.1 融合软件测试知识点,分阶段教学
目前,国内的软件测试教材只涉及了部分基本理论知识,不够全面,介绍的软件测试工具也相对落后一些。针对这种情况,任课教师首先要融合多本软件测试书籍内容,总结出软件测试所涵盖的知识点,更新软件测试发展情况。
其次,根据学生学习过程分阶段教学[4]。第一阶段是基础阶段,让学生掌握软件测试基础理论知识和软件测试核心技术,以及常用测试工具的操作。第二阶段是项目综合实训提高阶段,在掌握基础理论的前提下,加强综合测试技术在项目实训中的运用,针对不同的开发阶段,撰写各开发阶段相应的文档,并制定相应的测试计划,设计典型测试用例,使用不同的软件测试技术和测试工具,完成不同的测试目标。最后是培养学生自主学习阶段,介绍软件测试最新的技术与发展方向,引导学生对基本技术向纵深方向思考。同时向学生提供软件测试方面重要的会议、杂志、论坛、网站,引导学生课下查阅学习资料,鼓励学生自我学习。
1.2 改革教学方法,采用案例驱动教学
大部分高职院校学生基础差、学习积极性主动性不强、自制力不高。在课堂教学活动中,如果继续采用传统教学方法,很难激发学生学习兴趣。应该采用案例教学方法[5],将《手机信息管理系统》、《学生图书借阅系统》、《学生信息管理系统》等案例资料发给学生,学生拿到案例后,在教师的引导下,课下先要进行消化,然后查阅各种他认为必要的理论知识,理解知识并思考提出解决问题的方法。课上教师答复学生的问题,并引导学生更深层次的思考。通过这种方法充分调动学生的学习积极性,提高其学习兴趣,使学生既学会理论知识分析又学会用理论知识解决实际工程的问题。
1.3 采用软件测试项目综合实训的实验教学模式
开设综合性的软件测试课程实验,按软件企业项目管理和开发模式,进行软件测试项目实训[6],培养学生的创新意识与实践能力。将班内学生分成若干个测试小组,每小组成员不超过7人,每组分配不同的软件项目,如工资管理系统、图书管理系统、学生信息管理系统、酒店预订系统等。小组成员模拟与体验软件测试工程全过程工作职位和角色,使学生全过程适应工作职位的要求。
各项目小组在测试项目过程中,针对不同的开发阶段,撰写各开发阶段相应的文档,并制定相应的测试计划,设计典型测试用例,使用不同的软件测试技术和测试工具,完成不同的测试目标,并进行回归测试,以实现软件测试各单项专业知识与技能整合运用的目标。在整个测试过程可以体现“学以致用”的思想,实现理论与实践相结合。
各项目小组通过演练项目开发,不仅让同学们切身体会到软件开发的整个过程,还让同学们对软件开发中各个角色有充分的了解,同时也更深刻的体会到团队合作的重要性。
1.4 加强校企合作
坚持“走出去,引进来”的思想,经常邀请企事业、软件公司里一线软件测试人员或软件测试组长和项目经理,来学校为学生做定期讲座,或定期对教师进行培训。也可以利用假期或其他时间,安排教师学生进软件公司,一起跟进项目开发测试。目前本校已经连续两年安排教师学生去齐鲁软件园,进公司一起进行项目开发测试工作。效果不错,参加实训的软件项目综合实训的教师软件开发测试能力有较大提高,并且学到一些最新最实用的软件开发测试技术。
1.5 改革课程考核方法
软件测试这门课程兼具理论与操作,目前大部分院校考核方式与理论考试为主,这种考核方式会促使部分学生考前抱佛脚,考前死记硬背,降低学生学习的积极性。除了理论考核之外,还应注重学生综合知识和应用能力方面的考核。建议课程考核应该包含平时作业、课堂表现(发言与讨论)、实验、综合实训、理论考试这几部分。采用这种考核方式,促使学生加强对知识的理解和运用,课堂踊跃发言,提高学习的主动性和创造性,以及动手操作能力。
1.6 适当加入一些最新的游戏测试
高职院校学生大部分的课余时间都是泡在网吧里玩游戏,有很多同学一有时间就玩手机游戏。学生对最新的游戏内容比较感兴趣,游戏测试也是软件测试的一方面,教师可以在课堂教学中加入一些游戏测试内容,提高学生的学习兴趣。
1.7 采取双证教育
实行“双证教育”模式[7],将学历教育与技能学习无缝对接,学生毕业后不仅能获得国家劳动部高级职业技能认证证书、拥有扎实的操作技能,同时还将获得国家承认大学学历证书。双证教育使学生专业能力更强、职业素养更高、综合素质更好、更符合企业用人标准。
测试工程师有高级测试工程师、中级测试工程师、初级测试工程师。根据高职学生的能力特点,应该把高职学生定位在初级和准中级测试工程师,具有一定的设计方案的编写能力,能利用测试工具完成一定的测试任务,并能够执行功能测试。
2 总结
通过在本校近五六年的软件测试教学实践,发现软件测试教学方法需要不断改进,融合软件测试知识点分阶段教学,采用案例驱动和双证教育模式,加强校企合作和教学实践这些措施能较好地提高学生学习兴趣和动手操作能力,教学质量也有较大提高。软件测试人才培养刚刚起步,很多工作处于摸索阶段,需要学校、教师和学生的共同努力,为社会培养出大批合格的软件测试人才。
参考文献:
[1]程茂,温静,吴玉洁.《软件测试》课程的教学研究[J].河北师范大学学报/教育科学版,2010(4):117-120.
[2] .
[3]赵斌.软件测试技术经典教程[M].北京:科学出版社,2011(3).
[4]葛汉强.高职《软件测试》课程分层教学之实践[J].职业教育研究,2011(8):105-107.
[5]邵谨荣.高职院校《软件测试》课程的案例教学探讨[J].职教论坛,2011(4):53-54.
关键词 软件测试 服务外包 人才培养模式
中图分类号:G710 文献标识码:A
1 软件测试外包人才需求状况
当前,软件产业已经成为国际竞争的焦点和各国竞相发展的战略性先导产业。早在2007年,教育部等部门出台的《关于进一步加强国家重点领域紧缺人才培养工作的意见》,将软件等确定为12个国家重点领域紧缺人才培养。而在软件行业中,为了提高软件质量,降低软件开发成本,分散软件外包风险,软件测试就成为重要推动力。但软件测试业却面临着自身的严峻考验——人才紧缺。据前程无忧招聘网统计,国内120多万软件从业者中,真正能担当测试职位的不足5万,人才缺口已超20万并向30万大军挺进,并随需求逐年增长。在国外,一般软件测试人员与软件开发人员的岗位设置比例是1:1。软件测试人才需求量的加大,除了受产业先行的波及外,长期以来业界对软件测试的不重视,导致高校未有效开展软件测试人才的培养,出现教育滞后。教育滞后体现在多方面,包括专业设置、人才培养模式、人才培养方案的滞后与不协调等。
2 软件测试职业发展及能力需求分析
2.1 软件测试外包的特点
随着软件产业的发展,软件产品的质量控制与质量管理正逐渐成为软件企业生存与发展的核心。几乎每个大中型IT企业的软件产品在前都需要大量的质量控制、测试和文档工作,而这些工作必须依靠拥有娴熟技术的软件测试工程师这样专业的人士来完成。单独设立测试部门,对测试人才有强烈需求的企业大多是规模较大的一些IT企业,外资企业居多。而一些企业为了降低软件开发成本,专注于核心业务的发展,或因测试力量匮乏,往往会把软件测试工作外包给专业的测试机构来完成。软件测试外包的特点,一是涉及行业多,知识面广。二是测试团队比较大。三是接触到大项目的机会比较多,软件测试的类型包括行业应用软件的测试、本地化和国际化测试、嵌入式软件测试等。在行业软件中,以手机、家电嵌入式软件为代表的通信行业软件和汽车、电子行业的中间件成为具有潜力的软件外包领域。所以软件测试外包对测试人员的素质提出了更高的要求。
2.2 软件测试职业发展及能力需求分析
根据软件测试职业岗位与工作内容的分析,综合学院、企业、培训机构专家访谈结果,网络资料查询调研结果,不同行业、不同企业同一岗位,其岗位工作任务不同,职业能力需求的侧重点也不同。同一职业岗位在不同的行业领域对知识的要求也不同。按照软件测试为岗位主线,通过对不同行业企业所需人才岗位工作职责、能力知识需求进行系统的分析与研究,总结提炼出软件测试外包专业毕业生踏入工作岗位从初级测试工程师到成长为有丰富工作经验的测试项目经理所具有的能力与素质要求。
初级测试工程师的工作职责是按照软件测试方案和流程对产品进行功能测验;检查产品是否有缺陷;报告和跟踪缺陷及进行验证。其能力素质要求是熟悉常用的软件测试方法、软件工程知识;熟悉常用的软件开发环境,编程工具;有良好的英语阅读能力,具有良好的沟通能力。
中/高级测试工程师的工作职责是设计测试用例;搭建测试环境;根据测试设计对产品进行性能、功能等全面测试;测试工具等的开发、撰写测试报告。其能力素质要求是掌握软件测试原理流程、方法与规范;熟悉测试工具;熟练地编写测试脚本,能够进行缺陷分析及预防。具有较强的文档编写能力;较强的学习能力;高度的责任心,较强的沟通能力。
测试组长及测试主管:设计测试计划及进行测试项目的管理;项目及测试流程和工具的选择及优化;测试项目质量和进度控制。其能力素质要求是有一定的软件测试经验;能够独立完成各类测试任务;具有较好的解决问题的能力;有一定的分工协作能力。
软件测试项目经理:构建测试团队及进行测试团队的管理;制定项目测试方案和测试计划;协调测试资源,并对各种资源进行计划、分工和管理;测试项目的质量及控制。其能力素质要求精通软件测试理论、软件测试管理和自动化测试技术;熟悉软件测试开发和测试平台、自动化测试与性能测试工具;较强的测试组织管理能力、沟通协调能力;有流利的英语读写表达能力;善于团队合作,执行能力强。
3 构建并实施一站式人才培养模式
改革现有的软件外包测试人才培养落后状况,探索并实践新型人才培养模式成为软件测试外包人才培养的重中之重。烟台职业学院对此作了多方面的探索与实践,构建并实施一站式人才培养模式,为软件测试外包人才规模化培养积累经验。
3.1 软件测试外包专业人才培养目标
根据企业的人才需求特点,学院、培训机构、企业三方共同确定的高职软件测试外包专业的培养目标为:培养掌握计算机基础、软件测试专业知识、熟悉软件测试的基本方法、流程和规范,了解服务外包行业知识、发包方文化、商务礼仪,能利用测试工具对软件产品进行功能和性能测试,设计和维护测试系统,对测试方案可能出现的问题进行分析与评估,具有软件编程能力及软件工程应用能力,可从事软件外包及服务外包企业软件测试、运行、维护及质量管理等岗位工作,具有较强的外语应用能力,良好的沟通能力、协调能力和语言表达能力的技能型人才。
其岗位的主要业务范围是: 依据需求文档及设计文档,编写测试用例;依据测试用例执行测试,完成产品的手工测试、集成测试与系统测试,反馈跟踪产品BUG及用例缺陷;根据测试计划,搭建测试环境; 测试工具/系统的研究和应用。软件测试专业可考取的证书:计算机等级考试四级软件测试工程师、ISTQB国际软件测试工程师(初级)。
3.2 一站式人才培养模式内容
经过多年的实践与总结,构建了以政府为引导,实行与培训机构联姻、与企业合作的一站式人才培养模式,完成毕业即就业的角色转换。
政府引导:以我院牵头成立的烟台市服务外包职教集团为平台,与当地政府、服务外包园区建立框架性战略合作关系,根据政府出台的优惠政策,提供的各种信息资源,通过学院与企业及产业园区的互动,形成校企双方人力资源的可持续性需求供给与输出。由政府协调当地服务外包企业,与学院建立紧密型的人才培养合作联盟,联盟单位派员参与专业建设指导、人才培养,并作为学院学生的实习实训基地。
一站式培养的关键是学院通过与知名培训机构、与企业实行三方合作,通过协议等约定方式,按企业所需的人才数量与规格,采用“联合招生、委托培养、定向就业”的形式,实现人才培养的直接输入与对口输出。“联合招生”指三方共同协商确定学生来源、招生数量、招生方案;“委托培养”指招收的学员全部在学校学习、在培训机构实训,培养目标受企业委托进行;“定向就业”指学生培养结束经过综合考核评定,并参加由工信部全国注册服务外包专业认证中心设置的面向服务外包产业的专业认证项目,获得工信部相关技术等级认证,根据认证等级,由合作企业正式录用为公司员工,安排到合适的岗位就业,不能直接就业的可推荐安置到合作联盟单位或由合作企业、培训机构推荐到其他单位就业。
3.3 课程建设及实施路径
课程体系的构建和课程建设是人才培养中的关键因素。服务外包软件测试专业课程集服务外包知识课程群、信息技术专业课程群、软件测试专业课程群、管理课程、专业外语课程于一体,着力培养复合型软件测试外包人才。按照课程之间的逻辑顺序和人才职业成长规律安排课程。实施中采用分段式安排,教学团队专兼教师合作授课。部分课程安排成为选修课,学生可以根据自己的就业意向和兴趣选择学习。图1为主要课程框架体系图及实施路径。
技能储备阶段构建完整的工程知识体系。利用案例和项目强化学生对于各种知识点的理解,并通过实践训练达到一定熟练程度与规范性,完成基本知识的积累及基本技能的训练。校企各有侧重地承担教学任务,通用专业基础课程及其相关实践课程由校内专任教师承担。专业核心课程及相关实训由企业人员承担。时间安排为第一到第四个学期。
技能提升阶段主要是针对外包项目的仿真实训,建立学生的项目工程思想,根据项目分工完成工作任务,使学生充分演练项目中的多种职业角色,具备企业要求的基本职业素质。该阶段的教学任务主要由企业人员在校内实训基地完成,专任教师辅助教学。时间安排为第五学期的前半学期,同时开展软件测试等级认证培训。
岗位实训阶段,由仿真项目实训逐步向真实产业外包项目实训转变。此阶段根据学生的水平,将学生编入各项目组,参与到真实项目。通过完成外包项目,感知企业文化,熟悉工作环境,接受企业的管理,达到实战训练的岗位能力要求。这一阶段的培养任务主要由企业人员承担,专任教师协助辅导,企业工程师担任项目经理。该阶段的实训任务主要在培训机构完成,时间安排为第五学期下半学期。本阶段完成软件测试技术等级认证。
顶岗实习阶段是根据学生的职业特长及发展需求,安排学生到合作企业实习,根据学生的水平及实习企业的用人计划,成绩优秀者可直接与企业签约就业,学生的实践情况由专人跟踪帮助。对不合适的岗位,重新安排到其他企业实习就业。根据企业岗位标准的不同,时间安排为第六学期。
3.4 实行任务驱动、工学一体教学模式
树立学习就是工作,工作就是学习的理念,采用任务驱动、工学一体教学模式开展教学活动。精选典型项目或案例作为教学内容,每一项目安排1~5个不等的任务,每一任务有针对性地包括一个或几个必须掌握的知识点,学生的学习过程就是完成任务的过程,按照自主学习,仿真应用、工程应用的流程,完成学习任务。在自主学习阶段,先给学生布置任务,然后指导学生展开自主学习,根据班级人数情况,灵活选择以学生2~4人为一组的形式,进行咨询、讨论、制定工作计划、提出任务实施方案,再指导学生进行仿真设计和测试,最后在实训基地中指导学生进行工学结合实训。每一任务完成情况选2~3组有代表性的作品进行展示与答辩,然后由其他组学生进行评价,提出意见与建议。不同组完成同样的任务可能采用的方法不同。每一个项目完成后,提交项目报告,根据日常表现、实训情况、创新能力、报告的完整性与准确性,给出评价结果。
4 结束语
软件测试是一个新兴职业,其具有的就业竞争小、薪资水平高、职业发展多元化的特点,吸引越来越多的人从事软件测试工作,这为软件测试人才的培养提供了很好的发展机遇。学院与企业、培训机构合作,共同培养软件测试人才可以实现毕业即就业的一站式人才培养。这种模式,把学院的教育资源、生源优势,培训机构的教学内容,企业的实训优势及就业优势结合在一起,实现强强联合、三方共赢。但在合作中,合作的各方要加强沟通,通过一定的机制规范和约束合作行为,并通过一定的保障措施确保合作持续长久。
基金项目:中国高等职业技术教育研究会“十二五”规划项目 《基于校企合作服务外包人才培养模式的探索和实践》编号:GZYGH2011014 主持人:姜永华
参考文献
我院从2004年即开设了软件测试方向,在培养方案、课程体系、实践环节等方面作了大量的探索、研究和实践工作,取得了一些成效,也遇到了许多问题。本文对我院的软件测试技术人才的培养模式进行分析和总结,希望能抛砖引玉,与同行交流。
1两年制软件测试方向课程体系的特点
两年制软件测试人才培养的特点主要有:
(1) 学制短,只有两年;
(2) 目标是培养实用型软件测试技术人才;
(3) 要具备一定的编程能力。
上述特点决定了软件测试人才的课程体系的特点:
(1) 方向即专业由于学制短(两年),除了第四学期的毕业实训,实际上真正上课时间只有三个学期。所以软件职业技术人才不能像本科生培养一样,到大三才分方向,而必须从入校就开始分,所以软件测试方向实际上是按软件测试专业来培养。
(2) 开发与测试兼备一个合格的软件测试人员必须具备基本的编程能力和软件开发人才的基本素养。所以软件测试方向的课程除了测试课程外,还要掌握软件技术的基本课程,包括数据结构、数据库、计算机网络、软件工程,以及至少一门主流程序设计语言等。
(3) 课程紧凑、课时多由于相对于其他专业来讲,软件测试方向的学生要学习更多的课程,所以课时就多,课程安排紧凑。
(4) 实用性和实时性作为实用型软件测试人才,学生必须掌握当前主流的测试工具、实用测试技术和方法等。所以课程体系必须要具备实用性和实时性。
2课程的设置
在设置课程时,我们进行了大量的调研,经过2004级和2005级两届学生的培养实践,针对培养效果,进行了一些分析和课程改革。目前2006级的课程设置是在掌握基本的软件技术基础知识和一门主流程序设计语言的基础上,开设了“软件测试技术”、“功能测试与性能测试”、“测试管理”等软件测试专业课程。
主要专业课程设置见表1。
从功能上讲,课程的设置可以分成5个部分,对应学生不同层次能力的培养。
第一部分程序设计能力、工程化开发思想的培养。该部分的课程主要包括VB、Java、数据结构、计算机网络、数据库、软件工程等,主要是软件技术基础知识的学习,培养学生基本的程序设计能力,使之具备软件技术人才的基本素养,同时软件工程等培养学生工程化和规范化的软件开发思想。采用Java作为主要编程语言,将另一主流语言C#作为选修课,体现课程设置的灵活性。
在编程的课时和基础训练上和软件技术专业编码方向的学生一样,设置的原则:首先是一个软件测试人员必须具有基本的编程能力和经验,才能更好地搞好软件测试工作。第二是根据当前软件企业的人才需求考虑学生的就业,因为河南省绝大多数软件企业规模都较小,设置专职的软件测试岗位的较少,程序员通常又是测试员,所以使学生既能编程又能测试,拓宽就业渠道。
第二部分软件测试基础知识。主要是“软件测试技术”课程,侧重于测试理论和技术的掌握、搭建测试环境、测试工程师的基本职业素养培养。使学生在学习编程的同时,掌握对应的测试技术概念和基本知识。为进一步的实际项目测试打下基础。该部分对应有2周的一级集中实践课题,进行基本的测试训练。
第三部分主流测试技术和工具的掌握和使用、实际测试能力的强化和提高。对应的课程是“性能测试与功能测试”,该课程主要是结合实际的软件项目,介绍主流的测试技术和测试工具的使用,但并不只是性能测试与功能测试。该部分对应有3周的二级集中实践课题,分组进行实际的测试训练。
第四部分测试项目管理能力培养。主要课程为“软件测试管理”,培养学生工程化的测试思想,学习主流测试管理方法和工具的应用。该部分对应有3周的三级集中实践课题,训练项目的测试过程管理和测试管理工具的使用。
第五部分综合测试能力培养,即毕业实训。该实训为最后一个学期,学生到软件企业或实训基地参加实际的软件项目开发和测试,进行实境实习,综合地运用所学的测试和编程技术。
3实践环节
培养过程的实施可以归结为“夯实基础,强化训练”,夯实基础即培养基本的编程能力和掌握基本的测试技术。强化训练即强调实际能力的培养,通过对实际的软件项目进行测试训练,使学生熟练掌握主流的测试技术和测试工具的使用。
为了加强实际能力的培养,在正常教学的实践外,我们还在第1~3学期分别设置了一级、二级、三级集中实践课题,并要求软件测试方向的学生要与软件编码方向的学生组合协作进行,专门负责相应的软件测试工作。使学生感受到测试工作的重要性,同时培养其协作能力。一级和二级实践课题主要为验证型,三级实践课题则为设计型。
第4学期为毕业实训,采用实地场景教学,对实际的应用项目进行测试,角色模拟,项目驱动。该阶段从测试需求分析开始,一直到测试总结报告的撰写,贯穿一个完整项目的开发和测试整个过程。是对学生所学知识的一个总结和综合利用的强化。
各实践环节环环相扣,循序渐进,由易到难,由单一到综合,形成一个完整的实践体系。
集中实践环节安排见表2。
4测试工具的选择
由于软件测试工具较多,而两年制课时太紧张,所以只能学习常用测试工具的使用。我们选用的主要自动化测试工具见表3。
通过测试工具的使用,可以加深对测试原理和理论的理解,掌握主流的测试技术和方法。
5遇到的问题及采取的措施
软件测试人才作为刚兴起的职业技术人才,在培养过程中必然会遇到许多问题,相信这些问题也是其他院校在培养软件测试人才时遇到的共性问题,我们针对这些问题采取了许多有效的措施,不断改进。
(1) 对口就业较难
主要原因是我国“重开发,轻测试”的现象过于严重,很多软件公司没有专门的测试部门,测试工程师太少,开发人员兼作测试工作的现象十分普遍。但并不是说我们的培养方向不对,这正说明软件测试工程师职业还没形成规模,正在兴起时期。据2006年12月国家信产部“2006中国软件质量年会”公布,软件测试人才为2006年最紧缺的人才之一,在上海、北京等地,软件测试工程师已成为“地位高,待遇高”的“双高”人才。企业规范化需要规模和过程,软件质量问题将成为软件企业能否继续发展壮大的关键所在,越来越多的企业管理者意识到产品测试的重要性,所以软件测试工程师属于朝阳职业。
当然我们也采取了有效措施,如在前期强化基本的编程训练,使学生既能搞开发,也能搞测试,提高就业的灵活性。
(2) 教材少
软件测试作为一个新的专业(方向),目前还没有成体系的软件测试系列教材,所以在选教材时只能选与教学大纲内容相近的教材或技术书,或自己编写讲义。但给讲师授课带来许多困难。当然要很好地解决该问题需要教育管理部门和众多同行的共同努力。
(3) 测试项目实例缺乏
由于测试项目都属于公司内部资料,一般很难获得,不像通用应用程序模块一样在网上可随意找到。对此我们组织设计了一些测试案例,同时从合作的软件公司获取了一些实际项目案例,使学生能在实境中实践。毕业实训时大部分学生则直接到软件公司进行实地实习。
(4) 师资力量薄弱
师资是保证教学质量的关键,开始时师资力量较薄弱,我们采取的措施有:挑选有实际项目开发经验的老师来授课、从IT公司引进专业测试工程师、将有一定测试工作经验的老师送出去加强培训等。另外还不定期聘请IT公司的测试专家来做专业讲座,拓展学生的知识面。
关键词:高职;软件测试;教学改革
软件测试是伴随IT产业的发展而出现的新兴工作岗位。不论目前还是将来,人才市场对软件测试人才都有很大的需求量。《软件测试》课程是高职计算机软件专业的一门新课程。这门课程的实践性很强,如果没有实验、实训环节的支持,用传统的灌输式教学方式枯燥地讲解测试理论和测试方法,会使学生产生抵触和厌学情绪。《软件测试》课程使用的工具和测试的对象都是看不见、摸不着的软件产品,实验与实训课程的组织和实施有较大的难度,容易造成实验的随意性。我院在开设这门课程之初,按照学院确立的“针对市场设专业、针对企业定课程、针对岗位练技能”的办学思路,在办学模式、课程内容和教学方法上做出了一系列的改革,取得了良好的教学效果。
教学改革的措施
(一)与软件公司合作办学
经过调研发现,IBM软件学院推出的高校软件人才教育伙伴计划,旨在利用IBM公司在软件技术和开发工具上的优势与中国高校合作,培养软件人才。该计划中的《软件测试》课程是与高职院校合作,培养软件测试人才。经过沟通和协商,我们决定同IBM软件学院合作。我院通过选拔的方式对软件专业的学生组建软件测试班,IBM软件学院为我院提供师资培训、测试工具软件、课件和技术支持。通过这种合作,我们可以利用IBM公司在业界的领先地位,引进最先进、最实用的测试理论和方法,使用最流行的测试工具软件。软件测试班的学生除了系统地学习学校规定的公共基础课以及专业基础课和专业课,掌握软件开发的技能以外,还要学习软件测试理论和实践课程,掌握软件测试的岗位技能。学习结束之后参加IBM公司测试工程师的认证考试。这样,不仅拓宽了学生的专业口径,还可以使学生在毕业的同时获得学校的毕业证书和IBM公司颁发的测试工程师证书。
(二)改革教学内容,强化实践教学
在课程内容的安排上,我们摆脱了传统的重理论,轻实践的做法,将《软件测试》课程划分为四个模块分别组织教学。《测试理论》课程是理论模块,占64个学时,《功能测试》、《性能测试》和《测试管理》等课程是实践模块,各占32个学时。
其中,《测试理论》课程系统地讲解软件测试的理论和方法。为了验证理论,加深对理论的理解和掌握,安排了需求分析和软件设计的UML建模、白盒测试、黑盒测试、系统集成测试等五个实验。理论课以一个软件项目的开发和测试实践为主线进行讲解,实验课选取了开发和测试该软件项目中的关键实践部分展开,帮助学生从软件开发和测试的实践中理解和掌握理论。这种安排使所有的测试理论和方法都能找到实践的依据。理论指导实验,实验验证理论和方法,实验与理论在同一个软件项目中融为一体。《功能测试》、《性能测试》和《测试管理》等课程分别要求掌握IBM公司的功能测试软件(Rational Functional Tester)、性能测试软件(Rational Performance Tester)和测试管理软件(TestManager)三个软件测试工具的使用方法。这三种测试工具对应软件测试工作的三种重要岗位。通过学习和实训,学生将掌握如何录制、回放脚本,如何执行自动化测试和回归测试,如何设置和使用验证点,如何使用数据驱动,如何分析性能测试报告,如何设计测试用例以及如何管理测试过程等基本的软件测试岗位技能。
经过这种划分,理论模块集中讲解理论知识,为实践模块提供理论基础和依据;实践模块培养学生的岗位技能,是教学的主要目的;实践模块的课时超过了理论模块的课时,反映了“实践为重”的思路。
(三)建立软件测试实训基地,实验和实训课采用项目教学法
为了确保实验课和实践模块的教学效果,在IBM公司的帮助下,我院建立了软件测试实训基地。IBM公司为我院提供了UML建模软件(Rational Rose)、功能测试软件(Rational Functional Tester)、性能测试软件(Rational Performance Tester)、测试软件(Rational Robot)和测试管理软件(TestManager)等。我院安排了专用机房,所有计算机的内存升级到1G以上。实验课的教学和实践模块的教学实训全部安排在专用机房进行。除了建立完善的软、硬件环境之外,我院还组织专业教师按照项目教学法的要求编写了实验、实训指导教材。
为了确保项目教学法的效果,我们开发出一个简化的学生选课管理系统。作为贯穿理论和实践教学的实践项目,系统采用J2EE(Java 2 Enterprise Edition)标准技术,通过Web访问。按照软件工程的要求,我们编写、整理出开发过程的所有文档,包括用例图、用例描述文本、时序图、类图、源代码以及单元测试和系统测试的测试计划和测试用例等。由于学生熟悉选课管理系统的应用背景和业务流程,以该项目贯穿《软件测试》课程的教学过程,不仅指导、促进了理论和实践的教学,而且激发了学生的学习兴趣。转贴于
《测试理论》课程包括理论教学和实验两部分。理论教学以选课管理系统的项目开发和测试实践为主线。理论教学开始时安排两个关键的实验,指导学生对选课管理系统做出需求分析和软件设计的UML建模。学生通过这种开发实践,可分析、评估在开发模型过程中的错误,可以认识到软件测试在整个软件开发中的重要地位,从而避免对测试理论产生枯燥、反感和厌烦情绪。白盒测试、黑盒测试和系统集成测试实验都是针对选课管理系统或其中的子项目设计并执行测试用例。由于理论和实验在同一个项目中贯穿始终,理论和实验的教学自然得以统一。实践模块的教学目的是培养学生的岗位操作技能。我们安排选课管理系统作为《功能测试》和《性能测试》课程实训的测试对象,《测试管理》课程也以该软件系统作为实训项目。采用同一个软件项目贯穿理论和实践的教学,有利于学生灵活地应用理论知识分析和解决实际问题。
(四)建立校外实训基地,通过企业实习提高学生的岗位技能
学生企业实习是我院确立的BPMM(Basic Platform and Model Menu,即基础平台+模块化菜单)人才培养模式的重要组成部分。我院学生完成全部的文化基础课、专业课和校内技能训练之后,根据学生本人自愿,学校推荐,用人单位审查的原则,经三方认可后签订联合培养协议书,学生参加企业的工作实习,按照企业选定的模块或企业修正后的模块进行学习,培养岗位技能,实现人才的职业能力与企业工作岗位的“零距离”。在此期间,学生还要完成毕业设计任务。
我院先后与常州、苏州、南京、上海等地的软件园、中科院软件所、北京和佳软件技术有限公司、南京联创科技有限公司、常州富深协通软件技术有限公司、OKI冲电气(江苏)软件技术有限公司等企事业单位签订了合作办学协议,建立了学生实习基地。校外实训基地的建设为学生的企业实习提供了良好的实习环境。到目前为止,我院软件测试班2004级学生已经全部安排到软件公司实习。
教学改革的效果
充分发挥了项目教学法的优势,实现了理论和实践教学的统一选择合适的项目是实施项目教学法的关键。我们之所以选择选课管理系统是因为该项目来自学生的选课实践且具有较强的启发性,有足够的空间引导学生自主设计和运行测试用例,能够培养学生分析和解决实际问题的能力。在《测试理论》的教学中,以该项目的开发和测试过程为主线,一步步引导学生思索,探究软件开发和测试实践,在实践中理解并掌握知识。在《实践模块》的教学中,通过使用软件测试工具对该项目的软件进行测试,使学生掌握岗位操作技能。理论和实践教学在同一个项目上实现了统一,有利于学生自觉地应用理论知识解决实际问题,突出学生在教学过程中的主体地位。
强化了实践教学,调动了学生的学习积极性在课程改革以后,实验实训等实践课的课时超过了理论课的课时,理论课的教学过程也贯穿了软件开发和测试实践等内容,体现了“理论够用,实践为重”的原则。学生在学习理论的过程中,经历了软件系统从无到有的开发过程,领悟到软件测试在这个过程中的地位和作用。他们对这门课的理论和方法不再感到枯燥乏味,而是主动地思索、探究和应用这些理论和方法。三个实践模块的实训使用的是软件测试行业应用最广泛的测试工具,熟练使用这些工具可以大大增加就业的优势。学生通过认证考试之后,将获得IBM公司颁发的测试工程师证书。这些措施激发了学生的学习积极性和求知欲,使学生由“要我学”变为“我要学”。
培养了学生的岗位技能,实现了就业岗位“零距离”实行分模块教学,凸现了培养学生岗位技能的重要性。理论模块只讲解测试实践中实用的理论和方法,为实践模块提供了理论基础。而实践模块使用软件测试行业的主流测试工具,可使学生熟知的项目软件执行测试并使用测试管理软件对测试过程进行管理。这种实训是对真实软件测试工作的模拟,有利于学生全面掌握这三种测试工具的用法,也有利于培养学生的动手能力和解决实际问题的能力。到企业实训时,学生进入软件公司参加生产实习,在软件开发队伍中从事真正的软件测试工作。经过理论教学、实践教学、企业实习等一系列过程,可以帮助学生毕业之后不需要培训就能直接上岗。
深化了教学改革,为高职其他专业和课程的教学改革提供了经验通过与IBM软件学院的合作,我们在短时间内跟踪到了最先进的软件开发和软件测试技术,掌握了主流的软件测试工具的使用方法,并顺利地应用于教学实践中。成功地使用了项目教学法,在教学过程中把加强实践、培养学生的动手能力及岗位技能放在首位,取得了良好的教学效果。同学校周边的软件公司合作,建立了众多的校外实训基地,实现了学生的职业能力与企业工作岗位的“零距离”,密切加强了学校与企业的关系。这些改革措施为软件专业其他课程的教学改革提供了经验,对其他专业的教学改革也有一定的借鉴作用。
参考文献
[1]史国栋,等.BPMM人才培养模式教学改革与实践[J].常州信息职业技术学院学报,2004,(4).
关键词:高等职业院校; 软件测试; 实践性教学环节
中图分类号:G712,TP31 文献标识码:A 文章编号:1006-3315(2015)02-144-001
1.专业人才需求
我国软件产业被预测为21世纪拥有最大产业规模和最具广阔前景的新兴产业之一。按《湖北省中长期人才发展规划纲要(2010-2020年)》公布的全省经济重点领域急需紧缺人才开发一览表,软件工程师及测试人员2020年要达到9.3万人,我省软件测试专业人才缺口很大。
2.校企合作模式
学校2010年与企业合办软件测试专业。合作企业参与专业人才培养的全过程,提供真实项目资源、教学案例、兼职师资,并且参与专业教学、学生评价和学生就业,并承担相应的责任。双方共同申报科研课题、共同解决技术难题,共建共用课程资源、教材和实训实习基地等教学资源,实施校企合作的人才培养模式。
软件测试专业学生第五学期在合作企业进行为期6个月的顶岗实训。合作企业结合软件人才的实际岗位需求,将培训学生按照企业的真实环境,组织企业师资团队,按照企业软件开发的流程,为学生分组分配角色,对学生进行软件项目实训指导和技术培训,使同学们了解软件开发主流技术,理解现代软件开发的规范过程,并在项目经理的带领下,以开发团队的形式,进行高强度的全真项目开发实践。在实训过程中,通过进度压力、质量压力、团队氛围,激发同学们自身的潜能,使同学们得到了很好的锻炼,获取直接的软件开发技能,积累实战经验,为就业及日后可持续发展打好基础。
合作企业跟踪计算机技术的最新发展动态,分析现今主流的软件开发语言,按照中国软件行业对软件人才的需求标准,根据当前IT企业就业的热门方向,结合同学们的兴趣特长,将软件测试专业在职业技能学习上划分了三个方向:Java方向、PHP方向和Net方向。分方向教学,让学生在一个方向上学深、学专。通过分方向教学软件测试专业毕业生在专业知识和技能上更精、更专,满足了现今软件企业的人才要求。
3.实践教学环节探索
通过校企合作,在实践性教学环节做了以下的有益探索和实践。
一是校企合作双方提前布局、全面部署、计划周到。实训前,合作双方进行了沟通交流,就培训内容、目标要求与企业进行了充分协商,对学生进行了实训前的动员,提出了实习实训的具体要求,统一了思想认识。
二是实训目标明确、内容充实、过程扎实、收获颇丰。合作企业周密安排,从内容培训到项目制作进行了合理规划,教学内容充实、项目制作任务大、模块多、要求高,实习内容既有常用技能训练,又有新技能渗透,使学生真正学到了软件开发的关键技能和最新技术,从教学内容上保证了实训的质量。
三是制度保障、管理严格、全程跟进。实训过程中,企业方全程跟进,坚持课前有考勤、课中有检查、周末有小结,结果考核有答辩,坚持经常召开学生会议,强化实训制度与要求,并把学生的出勤、表现、技能掌握情况与答辩成绩纳入实习成绩评价范畴。除专业教员之外,企业还安排教学督导员,坚持对学生跟踪指导、坐班听课,做到管理到位,思想到家,关心到人,从措施与管理上保证了实训的有序性。
四是创建真实的企业环境,营造良好的学习氛围。软件测试专业实践环节按软件企业真实工作环境建设。位于合作企业实训基地完全按软件企业的功能布局和风格进行实训环境设计,学生实训期间,与企业员工要求一致,需要佩戴学员卡,并打卡记录考勤。
五是提供真实的实训项目,搭建专业的培训平台。将真实项目引入实践教学课堂,追踪技术潮流,有效提升了学生的工程实践能力,实现与企业无缝对接。
六是配备真实的项目经理,组成双师素质教学团队,他们参与过中、大型软件项目开发,具有丰富的项目开发和团队管理经验,同时还有较高的授课水平。
七是营造真实的工作压力,激发学生学习潜力。在企业实训中,企业会安排人员模拟客户代表给予项目组施加真实的项目压力,例如需求变更、新技术风险、工期变更、人员变动等问题,让实训学生来应对,从而培养学生承受工作压力的能力和应变能力,为以后踏入职场打下基础。
八是面向企业推荐符合条件的学生,解决学生就业问题。合作企业下设人力资源公司,该公司负责联络国内各大软件企业,了解用人需求,并根据培训学生的表现,选拔推荐同学到有关企业就业或组织招聘、面试,解决同学们就业需求。
通过企业顶岗实习、培训,学生普遍切身感受到企业文化和企业工作氛围的熏陶,受到了企业工程师严谨求实、刻苦攻关、爱岗敬业的精神教育,学到了软件设计与开发的基本技能、了解了软件产业的新近发展情况,增强了学好专业技能的紧迫感,培养了团队协作精神,提高了表达、沟通及自我管理能力,收获很大。
项目来源:武汉市市属高校教学研究重点项目《软件技术专业仿真式企业课堂与虚拟公司模式研究》(2013039)
参考文献:
[1]高志升.软件测试技术教学方法[J]电脑知识与技术,2010年09期
[2]程茂,温静,吴玉洁.《软件测试》课程的教学研究[J]河北师范大学学报(教育科学版),2010年04期
[3]胡宏银.软件测试课程教学方法探讨与实践[J]计算机教育,2007年12期