前言:中文期刊网精心挑选了软件测试实训总结范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。
软件测试实训总结范文1
关键词:高职;软件测试;教学改革
软件测试是伴随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).
软件测试实训总结范文2
关键字:软件测试;实践课程体系;项目实训
0 引言
《软件测试技术》是软件工程本科专业的一门实践性很强的课程,适合采用讲练结合的方式开展相关教学,即让学生多上机操作,逐渐提高软件测试用例设计、开发能力以及软件测试的整体管理能力。然而在实际实践教学过程中,教师普遍感觉有不少不尽人意的地方,主要表现在理论与应用脱节,所学知识与社会需求差距较大,学生积极性不高等。
1 软件测试行业现状和学生认知水平
媒体报道,国内开发人员与测试人员的比例是8∶1,而国际公认的行业标准实际上是1∶1,这一点上国内测试行业与国外的差距比较大。随着软件行业的蓬勃发展,用户对软件的质量要求越来越高,导致软件开发企业软件测试的工作量也越来越大,因此自动化软件测试已经成为项目测试的一大趋势[3]。并受到原来越多的重视。
软件测试课程一般到大三才开设,而大学高年级学生往往偏重于对技术的学习,因为技术往往是可以现学现用的,对于理论性较强的软件工程知识反而不太感兴趣了。实际教学过程中关于软件测试流程、团队等工程化内容的描述往往让学生觉得比较抽象且教条化,然而这些工程化知识又是学生毕业后适应当下的软件行业需求所必要掌握的。
2 现有软件测试课程体系存在的问题
现有软件测试技术课程重点讲授的是理论基础知识,含离散数学、图论和测试基础知识以及测试用例,开发各阶段的具体应用往往被忽视,使用自动化测试工具方面的内容尤其缺乏。高校对实践课程的重视程度普遍不够,软件测试实践课开展不足且不规范。教师大量精力放在讲授测试用例设计方法上,实践中的使用这些测试用例却较少。实验案例通常有NextDate问题、三角形问题等,都是一些课本上常见的,设计也较单一,缺乏真实性,难以提升学生的技能,学生往往觉得枯燥乏味。毕业后学生普遍反映,软件测试工程理论知识教的很全,但就是不知道怎样灵活应用;相反,在企业经过一段时间的测试工作实践后发现,工作中真正需要的知识并未掌握。
目前,相关配套的软件测试实验教材比较缺乏,实验内容基本是由任课教师自行设计。这对于教学经验丰富的教师问题不是很大,但对于没有实际项目开发经验作为支撑的年轻教师,就无法把握如何采用恰当的用例来验证相关理论知识,也难以设计出实用的实验内容,学非所用,导致学生无法掌握今后实际工作所需的基本技能。即使是教学经验丰富的教师也大多缺乏实战,尽管能很好的教授理论知识,但由于缺乏合适的实践教材,加上实验条件等各种因素制约,也难以的对学生进行系统全面的实践培训,导致高校重理论轻实践成为普遍现象。因此,软件测试课程的教学顺应社会需求显得格外迫切,必须面向企业,了解岗位要求,而不是“闭门造车”。让学生能学到适合企业所需的技能,毕业后可以以一个“经验者”的身份进入人才市场。
3 《软件测试技术》实践课程体系研究
3.1 课程构建原则
高校应以软件测试所需的知识、技能为先导构建相应的课程体系,充分调研软件测试工作的具体内涵,仔细研究对应的知识、技能以及素质要求,课程内容也应强调当前以及未来就业所需掌握的基本知识、技能,体现知识、技能和素质三者的结合[6]。
根据该专业人才培养的定位以及行业内需求,在建设具有特色的软件测试课程时建立实验、实训和实习等不同层次的实践课,通过多项目的练习,提高学生专业技能及分析、解决问题的能力。
3.2 实践课程教学探究
在软件测试技术实践课程环节,引入具有企业背景项目的实训。通过这些真实测试案例的引入,结合人才市场的需求,充分体现出工学结合的特点。通过对实际项目的操作,使用相关测试工具,完成对各目标的测试,提升学生的测试能力同时积累相关工作经验。
我们可以在教学过程中引入一个贯穿整个教学过程的具体测试案例的教学法。首先,组织学生进行随机分组,每个小组5~6个人,给每个组起一个名称。要求每个小组在课程实施前完成同一个模拟软件“小区物业管理系统”的开发。模拟软件开发完成后,由各个小组交叉测试其它小组开发的软件。在测试课程中,要求学生对软件系统进行单元测试、功能测试、集成测试和系统测试,找出问题并解决问题。
该教学方法主要有以下明显的优点:
1)软件测试前期的课程有《基于Web的Java开发设计》,同步开设的课程有《J2EE企业级应用开发》,所以在实践环节我们选择“小区物业管理系统”作为测试对象,能让学生快速具备软件开发的能力,以及掌握软件系统测试所需的技术。
2)每个人都喜欢挑别人的错误,相互测试对方所开发的系统,可以形成竞赛,有利于发现问题,能发挥学生的积极性,提高效率。同时也便于组织课堂讨论以及对各小组实践结果的评价。
3)学生通过一整套测试课程的参与,能够了解一个具体项目的完整测试过程是个什么样子,真实展现了实际工作中软件测试的方法和要求。
但由于学时和学生能力的制约,在本实验课程中,主要针对还只是初、中级测试人员,主要是为了帮助毕业生在踏上岗位后可以顺利从事不太复杂的测试工作打下坚实的基础。对于高级别测试以及测试管理之类的工作,比如制定测试计划、各种设计的论证、测试结果的评估和总结,恐怕还需要经相当长时间的实战,累积足够的经验才能胜任。这些工作经历,仍然不是课堂所能提供的,我们的目标就要是培养出具备从事这项工作潜能的新手。有关这方面的内容,我们也只能够在理论教学中予以概述,不在实践课中安排具体实验。
为了适应实践课程需要,我们设计了8项实验内容,该设计旨在让学员通过实训,将来以一个“经验者”的身份进入人才市场。该项目模拟“企业项目管理者”培养“新人”的模式来安排实验进度和内容。虽然现实中软件测试是始终贯穿于软件生命周期中的,但对于未参加过工作的大学生来说,从培养人才的角度出发,模拟“企业项目管理者”通常还是按如下流程培养人才:单纯性测试的实施、测试环境建立、测试设计等等,按照单元测试集成测试系统测试的顺序逐步深入实践,并在提供的测试案例中人为的加入一些缺陷,以便学员在测试时去发现、分析、修改这些缺陷[7]。因此,我们专门设计了表1所示的实验内容。
通过以上8个实验内容的实践,可以让学员掌握单元测试以及集成测试的具体实现方法,熟悉各种测试工具的运用,了解系统测试的实施。经过这些实际训练,学生将来以初级测试工程师的身份投入到测试工作中。
4 总结分析
实践证明,软件测试技术实践课程体系研究针对软件测试行业及人才的特点要求,把行业、企业对人才的要求转化为教学中的具体目标。从知识、能力、素质多方面全方位提升学生的就业竞争力,设置合适的实践教学内容和方法,一定程度上改变了教师的教学状态和学生的学习状态,达到了预期目标。
参考文献
[1]2007首届中国软件测试从业人员调查报告[DB/0L],2007
[2] 钟素芬, 叶明芷. 软件测试应用性人才培养模式的探索与实践[J]. 北京联合大学学报(自然科学版),2007(9).
[3] 钟元生. 软件测试实践教学特色的构建实践[J]. 电化教育研究,2006(10):62-65.
[4] 胡宏银. 软件测试课程教学方法探讨与实践[J]. 计算机教育,2007(6):11-12.
[5] 李绘卓,唐峻,范勇.基于案例的软件测试实验教学[J].电脑知识与技术,2009,27(5):7820-7821.
软件测试实训总结范文3
关键词:高职;软件测试;隐性知识;协同学习;项目实战
中图分类号:G642 文献标识码:B
文章编号:1672-5913(2007)18-0028-02
1引言
软件测试作为软件产业的重要门类发展迅速,其专业岗位迅速扩大、人才需求旺盛、职业价值日益提升。然而,由于行业内的软件测试人才严重短缺,企业对软件测试人才有大量需求但苦于招不到合适的人;另一方面,很多高职应届软件专业毕业生因为没有软件测试经验而被拒之门外。产生这种矛盾的原因是,对于众多的高职院校来说,软件测试教学处于起步阶段,经验和积累不足,尤其是高职的软件测试课程和教学特点尚未形成,需加以改进完善。
2市场需求和现状分析
随着IT技术应用的发展,国内软件行业对软件测试工程师的需求将超过20万人。[1]
我国大学本科课程中普遍不设专门的软件测试课程,软件测试仅作为软件工程课中的一个章节被提到,学生在认识上多为重开发、轻测试,毕业后直接进入测试行业的为数不多。
高职院校软件专业一般在第三学年单独开设一门软件测试课程,限于学时,总体来说,学生通过课程的学习,能掌握软件测试的基本概念和基本理论、基本测试技术和方法,但真正运用软件测试技术分析和解决实际岗位的能力还不够[2]。我国50人以下的软件企业占了70%以上,一般都没有建立软件测试部门[3],这部分的中小企业希望具有工作经历的软件测试员直接上手开展工作。
社会培训机构比较重视市场经济,他们一般开设约210学时的课程,学员来自尚未找到工作的往届毕业生和应届生,主讲教师曾在电信、证券、金融领域担任过软件测试项目负责人,课程结束后承诺推荐就业,中小企业也愿意接受这批学生中的优秀者。但培训价格不菲,而且培训机构众多,质量也难免良莠不齐。
3存在问题和应对措施
高职“软件测试技术”课程面临的主要问题分析如下。
3.1教材建设
国内面向高职的软件测试教材不多,近来出版的几本教材对软件测试所涉及的基本概念、基本工作过程的理论知识和应用知识阐述虽然很系统详尽,但还是存在共同的问题:
1) 缺少大型集中项目功能测试、性能测试实例的全过程,即没能把比较分散的知识点和技能点进行综合分析。
2) 重技术实现、轻文档工作,建议增加如何编写“测试计划”和“测试报告”,给出测试记录、测试日志的模板。同时,可列出软件测试行业中长期积累的经验,例如软件测试的10大原则、10大最佳实践等,这些内容很实用,学生走上工作岗位就马上能用到。
3) 教材中的“测试工具使用”流于产品使用说明书,难以引起学习兴趣,要站在学生学习和认知的立场上来考虑,花时间写实训指导,使学生在最短时间内对这一专项技能掌握和熟练。
4) 测试工具要采用中小IT企业流行的软件,例如功能测试采用Mercury QuickTest Professional (QTP) ,性能测试采用Mercury LoadRunner,测试管理工具可用开源的并行版本控制工具CVS,采用Test Director或同类新版Quality Center (QC) 。要注意防止两个极端:一是避免教市场已经不使用的测试工具;二是避免教价格昂贵的软件,如IBM Rational的ClearCase、ClearQuest、Functional Tester、Performance Tester,尽管功能优越,但市场占有率低,只有软件成熟度能力CMM高的大型IT企业才会使用。
3.2师资队伍建设
1) 高职在软件测试教学的过程中,常采用案例教学与实际项目嵌入到课程教学和设计中,这种指导实际动手能力的经验和技艺性知识比重偏高,它是通过不断的积累和创新,主要蕴藏在个体头脑中的隐性知识。因此,提升教师自身的这种隐性知识显然比充实书本上的显性知识更为重要。
2) 促进教师隐性知识的先行化,实现教师的终身的专业成长。在教师教育和课程发展中,要特别重视教师的专业反省能力和教师专业经验、系统化的教育理论和方法,而且要求教师探索和学习处于隐性状态的专业知识。
由封闭型向开放型转变。在知识更新速度不断加快的今天,教师应深入软件企业第一线,了解行业发展的动态,将最新的技术、观念等带进课堂,使学生得到的知识与社会同步。教师的个体知识应该不断充实和提升,成为一种开放的、动态的知识,即知识自我调节、自我管理。教师到企业挂职顶岗、或参与IT企业科研项目、或取得行业资格证书,不失为隐性知识的先行化的有效途径。
3) 来自IT企业的软件测试工程师具有丰富的项目实战经验,是软件测试知识应用和创新最宝贵的资源,有条件的可邀请来校兼职授课。同时必须采取协同学习的有效措施充分挖掘其研究成果。协同学习是对现有学习技术系统框架的突破:在信息、知识、行动之间建立有机的、协同发展的联系;在交互层面,提供内容与学习者的深度互动;在通信结构层面,提供信息聚合机制;在信息加工层面构建群体学习机制。简而言之,归纳为“深度互动,信息汇聚,集体思维,合作建构,多场协调”[4],形成知识共享。
3.3教学方法的改进
课程应基于建立一个内容充实的职业技能实训体系,采用全新的“场景教学法”,以真实工作场景为核心,利用项目导向的角色模拟方式,提倡“以用为本、学以致用”的教学方法:以工程经验为指导,采用任务驱动法,强化实战技能,辅以实际企业测试项目,使用角色模拟的方式。
1) 工作场景。针对企业实际工作流程和工作场景,结合已经实际投入使用的软件项目的测试资料和软件代码,进行项目分析和任务分解,重现在企业中进行软件测试工作的任务环境。
2) 项目主导。所有知识点和技能都是通过一个或者几个项目来组织的,学生通过可扩展的项目案例来逐步学习知识和技能;所有的实践都是项目中的一个实际任务,熟悉项目测试过程中常见的技术、流程、人员协作问题,并掌握相关的解决方法。学生通过实践可具备完成一种任务的能力。
3) 角色模拟。学生在实际动手操作的课程和项目实训过程中,使用真实的企业项目,真实的企业工作流程和工具,模拟项目组中各种角色,协同完成项目和任务,体验和掌握各种角色的工作技能和工作经验。
4) 任务分解。在为完成整个项目而必须掌握的概念和知识环节的讲解上,将整个项目划分为多个子任务,再分析每个子任务需要的知识、技能、素质要求,并通过完成子任务的形式来组织学习内容、设计课程体系。
5) 六步教学。知识和技能的传授和自学都是从具体到抽象、从特殊到一般,按照以下6个步骤来组织的:提出问题、分析问题、解决问题、总结出一般规律和知识/技能、扩展知识/技能、解决更高级的类似问题。
6) 团队协作。在授课过程中,学生将被划分为几个团队,每个团队将根据课程内容和讲师的安排,通过技术研讨、实际操作等手段,合作完成一个任务和项目。
7) 动手能力。为了使学生的知识面和思路有所扩展,鼓励学生自己动手,通过实际操作课程中的实验和进行项目演练,培养学生举一反三的能力,从而帮助学生掌握重点技术的应用,为日后完成更大的项目积累经验。
4结束语
随着计算机技术发展,对软件功能提出的要求也越来越高,如何开发出高质量的软件已成为一个迫切需要解决的课题,因此软件测试的地位也得到了应有的重视,这是一个非常有利于提升个人职业发展空间的岗位,因为它刚刚处于起步发展阶段,对人才的需求量大,非常适合缺少工作经验的高职软件专业应届毕业生。因此,上好软件测试课程,制定与相应测试职业“接轨”的教材和教学方法,使学生能系统学习测试知识和掌握测试技能,落实“以就业为导向”的办学方向与策略,应该成为今天高职软件技术专业的选择。
参考文献
[1] 沈海娟. 高职软件测试课程构建设想[J].计算机教育,2006,(4).
[2] 杨鹏. 高职软件测试课程的教学探索与实践[J] . 番禺职业技术学院学报,2005,(4).
[3] 杨根兴,宗宇伟. 软件测试不确定性研究及解决途径[J]. 计算机工程,2004,(4).
软件测试实训总结范文4
关键词: 软件测试; 案例教学; 实践教学; 案例库
中图分类号:G642 文献标志码:A 文章编号:1006-8228(2014)12-74-03
Research on case teaching in software testing course for higher vocational colleges
Zhang Xiaolan, Guo Jiandong
(Guangdong College of Industry and Commerce, Guangzhou, Guangdong 510510, China)
Abstract: Case teaching can not only fully mobilize the students' enthusiasm, but also improve their theoretical level and practical ability. Combined with teaching experience in software testing, the problems of the case teaching in software testing course are analyzed. In order to improve the teaching effect in software testing course, the case design method in theory teaching and practice teaching is proposed. The construction of teaching case library is given. The basis and premise of the implementation of case teaching are introduced.
Key words: software testing; case teaching; practice teaching; case library
0 引言
51testing公司的《2013年中国软件测试从业人员调查报告》显示[1],2013年中国软件企业软件测试人员与开发人员比例基本保持在1:3,相比之前的1:7比例虽有所下降,但仍与国外软件企业1:1的比例相差甚远,这表明国内软件测试人才市场需求仍会增长,其职业发展的潜力依然很大。正因为如此,很多高校相继开设软件测试专业或课程。在教学过程中,主讲教师一般讲解软件测试理论和介绍软件测试方法,但却缺乏较好的测试案例供学生测试,以验证所学的理论,故教学效果不佳。例如利用等价类划分法、边界值法设计测试用例,学生虽然能按要求做练习,能设计出测试用例,但是很多学生还是会疑惑设计出来的测试用例有何用、怎么用,学生缺乏实践环节的经验,当面对实际软件项目测试工作时,仍然无从下手。
目前,很多高职院校对“软件测试”这门课程进行了改革,并且取得了一定的成效。广东工贸职业技术学院(以下简称“我院”)计算机系从2009年开始开设软件测试课程,通过近五年的教学经验积累和总结,提出从构建软件测试课程的案例入手探讨该课程的案例教学方法。
1 软件测试案例教学所面临的问题
1.1 教材及教学资料缺乏
当前软件测试方面的教材很少,适应高职院校学生的教材更少。绝大部分教材只是阐述空洞的理论,附加简单而又陈旧的工具介绍,而这些理念和工具很多已经被业界淘汰或是被取代[2]。根据《2013年中国软件测试从业人员调查报告》显示,业界现在普遍采用的功能测试软件是QTP,而绝大部分教材中还停留在介绍Mercury Interactive公司的WinRunner工具,同时对于业界中性能测试龙头软件LoadRunner,很多教材并未涉及。绝大多数教材上所提到的自动化测试工具不多,而且讲解的也不是很详细,需要教师进行大量的补充。
1.2 案例缺乏
大多数软件测试教材都是理论内容过多,实践内容不足,甚至只有最后一章有测试案例。大多数高校软件测试课程的定位都是以讲解理论知识为主,实验教学只占很小一部分。高职院校定位于培养技能型人才,要求学生有较强的实际动手能力,这势必需要进行大量的测试实践,而实践需要大量的测试案例。同时,理论教学也需要运用典型案例,加深学生理解所学知识,培养其分析问题与解决问题的能力。
2 理论教学案例设计
教材及教学资料的缺乏势必需要软件测试主讲教师有针对性地扩充理论教学案例。
2.1 扩充教材中的教学案例
在软件测试的众多教材中,讲述软件测试方法的经典案例有三角形问题、日期问题、闰年问题等,但这些案例通常都是文字表述,缺乏具体的程序供学生测试。因此,首先要扩充教材中的案例,采用面向测试的软件设计方法将这些案例做成一个个小的被测系统,设一些缺陷,让学生沿着“测试―理论―进一步测试”的主线来学习。首先对这些案例系统进行测试体验,再系统学习理论,最后利用设计出的测试用例进一步测试,这不仅有利于加深学生对软件测试抽象理论的理解,也让学生更加深知在编程过程怎样避免缺陷,做到规范化编程,提高编程能力。
2.2 引导学生编写软件开发文档作为教学案例
在软件测试的理论教学中,经常会提到几个概念,如:黑盒测试是基于用户需求的测试,集成测试的测试依据是系统概要设计说明书,单元测试的测试依据是系统详细设计说明书等。学生通常会觉得很困惑:用户的需求到底是怎样的,系统概要设计说明书、详细设计说明书中分别包括什么内容,有何区别,对这些文档始终没有直观的认识。事实上,在企业的开发与测试工作中,文档都是很重要的一部分内容。软件开发企业在软件开发过程中会产生一系列的文档,如需求分析报告、详细设计报告、概要设计报告等等,但很少对外公布这些文档。就算能通过校企合作或项目合作的方式获得企业项目文档,缺乏项目业务背景的学生也很难弄清项目中的数据流程、工作流程等。所以通过与软件工程课程教师的沟通协调后,要求学生在软件工程课程设计中,按小组自选熟悉的项目系统,如:“学生成绩管理信息系统”、“图书管理系统”、“宿舍管理系统”等等,按照软件工程的原理编写相应需求说明书、概要设计说明书、详细设计说明书等,只有具备以上资料,才可真实地模拟实际工作模式。在软件测试课程中,延续使用这些案例系统,将对学生掌握软件测试的流程很有帮助。
3 实践教学案例设计
3.1 实践教学目标及工具选用
为了培养面向市场的合格测试人才,在教学过程中,除了理论知识外,还要求教师加强学生测试技能的培养。测试技能的培养是需要通过大量的实践练习来获得的[3]。
通过实践教学环节,加深学生对软件测试理论知识的理解,使学生能掌握软件测试的技术和方法,熟练主流自动化测试工具的使用,提高实际动手能力。51testing公司的《2013年第七届中国软件测试从业人员调查报告》中对软件测试从业人员常用的单元测试工具、功能测试工具、性能测试工具进行统计调查分析,得出在功能自动化测试工具中QTP使用最广泛,如图1所示。在性能测试工具中LoadRunner仍然稳居第一,LoadRunner在性能测试工具中的大哥地位无可动摇,Jmeter测试工具在今年来有小幅上升趋势,如图2所示。在单元测试工具中,软件测试从业人员最常用的单元测试工具是Junit,如图3所示。
图1 2013年调查中常用的功能自动化测试工具分布
图2 2013年调查中常用的性能测试工具分布
图3 2013年调查中常用的单元测试工具分布
注:以上图表数据均来自51testing公司的《2013年中国软件测试从业人员调查报告》
在我院软件技术专业的软件测试课程实践教学中选用的单元测试工具是基于Java开发软件的测试选择Eclipse+Junit;基于C++开发软件的测试选择了CppUnit;基于.NET开发软件的测试选择Nunit。另外,性能测试选择了LoadRunner试用版本,功能测试选用QTP,实践教学环节工具基本与当前主流工具平台相符。
3.2 实践教学案例来源
在软件测试的实践教学中,我们从以下几个方面来扩充教学案例。
⑴ 课程设计成果
我院计算机系软件技术专业在程序设计方面,前期开设了Java和.NET程序设计两个方向。在Java程序语言设计,C#程序语言设计、数据库设计课程结束后,通常会安排两周的课程实训,要求学生在教师的指导下完成课程设计作品。将程序语言设计作品用作单元测试的案例,学生间交叉进行测试,互相充当对方的测试员,这样不仅有利于将程序开发与软件测试结合起来,综合解决软件开发中的问题,而且交叉测试会极大地调动学生学习测试兴趣和积极性,课堂气氛活跃。
⑵ 毕业设计成果
在大三第二个学期,我院会安排12周的毕业综合实践周,由指导老师跟学生共同确定毕业设计题目,学生独立完成毕业设计。通过对以往选题汇总发现,绝大部分同学都是选择Windows程序开发和网站开发两个方面。从毕业设计作品中可选择一部分优秀的作品作为实践教学的案例。考虑到现有的网站如网易、搜狐前已经做足了测试,很难再发现其中的缺陷,所以在Web网站测试实践中,我们将学生的网站作品在机房的局域网内,学生在学生机进行测试,在这个过程中真正体会Web网站测试、Cookies测试、安全测试、目录测试等方面,找到测试成就感与自信。
⑶ 科研项目成果
我院一直鼓励教师多参与科研项目,教师参与开发的项目也可以用于实践教学案例。只有任课教师对所选的项目非常熟悉,甚至是亲自参与开发,才能对项目开发整个流程、可能遇到的问题有充分的认识与准备,为学生提供有力的帮助和准确及时的指导,为项目教学的顺利开展提供前提条件,使项目教学的整个实施过程都能在任课教师的良好掌控之下[4]。
⑷ 校企合作项目
目前我院已与部分企业签订了校企合作协议,在软件测试课程的综合性生产实习中,引入企业的实际项目作为案例。邀请校外实习基地企业的行业专家将实际工作项目带入实训室,学生3~5人为一组,按行业实际给他们分配角色,在该过程中强化学生的综合设计和运用能力,让学生掌握在实际项目应用中各种测试方法的使用,熟悉测试项目管理,感受大型测试项目工作流程。
4 案例教学的实施前提
4.1 跟前导课程的衔接
软件测试与软件开发有非常紧密的联系。要想成为一名优秀的测试人员,就必须会编写程序,至少精通一门程序开发语言才能胜任单元测试、集成测试、性能测试的工作,软件开发课程学习的好坏直接影响了软件测试能力。在软件测试单元测试、集成测试教学实践中,案例主要来源于程序设计语言课程的设计作品,这要求该课程主讲教师对学生严格要求,要求学生按小组保质保量完成小组作业,这些小组作品是软件测试课程中交叉测试的基础和前提。
同时,软件测试要用到一系列的文档,如需求分析说明书、概要设计和详细设计说明书、用户手册和安装使用说明等,这些也是软件工程课程设计上要学生完成的内容,课程设计对这些内容的要求严格与否,会对软件测试课程带来很大影响。通过这几年的教学发现,大多数学生对这些文档不甚了解,而且高职院校的学生普遍重技术轻理论,不愿意花时间去写文档。
4.2 教师自身素质的提高
为了顺利实施案例教学,主讲教师也需要不断提高自身素质。软件测试工具较多,范围广,不易把握重点,大部分测试工具如:LoadRunner、WinRunner、JUnit、Jmeter等都是英文版[5],参考资料少,这就要求教师通过主动学习、走进企业来提高自身素养。高职院校提倡“双师型”专业教师队伍建设,要求教师既要具备理论教学的素质,也应具备实践教学的素质,学校也可以派遣教师到软件测试培训机构进行培训,提高教师水平。只有这样,教师才能自如地将企业实际的测试流程、方法、技术带入案例教学实践中。
5 结束语
兴趣是最好的老师,在理论教学和实践教学中引入案例教学、建立测试案例库,使理论和实践过程更具直观性、生动性、说服力、吸引力,能有效调动学生的积极性和兴奋点,有助于学生掌握软件测试的基本理论和方法,加深对软件测试测试自动化工具的理解。同时随着教学的推进,教师可针对当前的测试工具,设计新的教学案例,扩充至教学案例库中,不断提高案例的针对性、实效性、鲜活性。
参考文献:
[1] 2013年第七届中国软件测试从业人员调查报告.http://
,2013.
[2] 钟久隆,路桂明.高职院校《软件测试》课程教学改革探索与实践[J].
教育教学论坛,2012.2:130-131
[3] 丁智国,吕振洪.软件测试课程实验教学探索[J].计算机教育,2012.3:
102-105
[4] 龚宇辉.基于项目驱动的软件测试人才培养模式[J].华章,2013.20:
199
软件测试实训总结范文5
关键词:调查问卷;教学效果;信息化;教学改革;高等职业教育
中图分类号: G712 文献标志码: B 文章编号:1673-8454(2014)04-0042-04
当前,教育信息化已列入《教育信息化十年发展规划(2011―2020年)》,成为一项国家战略,信息化教学已成为教学改革的主要目标。[1]教育信息化的理念不仅仅指学校的计算机与网络等硬件设施的完善,也绝非单纯以应用办公自动化软件应对学校事务性的日常工作为目标,更重要的是必须使用信息技术手段开发有针对性的应用软件以提高教学与科研质量,并以教学过程人力投入产出比的最优化为目标进行教改,以加速学生的能力培养过程。因此,在当前知识爆炸的背景下,教学的关键之重在于加速学生能力的培养,而培养过程首先依靠信息技术分析课程的教学效果,以更好地掌握学生能力培养与能力迁移过程的客观规律,最终遵循此客观规律开发更合适的课程。
信息技术在教学活动中的应用大体分三类:事务层应用,即使用办公自动化软件加速日常教学活动、收集反映教学效果的基础数据;分析层应用,其表现为事务层数据的归纳与分析,最终提取为信息;决策层应用,表现为智能专家系统通过分析上述信息,并基于专家系统的知识经验来辅助决策者确定进一步教改的具体措施。具体措施包括督导对教师的指导、教师对教学方法与教学内容的调整以及学生对自己的兴趣和课程的深入了解,这些具体措施能有效地提高教学质量。目前,国内大多数高校仅实现了事务层的信息化,与应用信息技术提高教学质量的目标相距较远。[2]
笔者于2012年底从某计算机工程研究所转入高校,开展软件相关课程的信息化建设。以2012-2013学年春季学期的《软件测试技术》课程为例,结合课程的特点开发了一个教学效果评价软件,能够自动完成事务层和分析层的大部分工作,将反映教学效果的数据加工为信息。该软件获得了很好的实际效果,有助于决策者的知识归纳与总结。
一、课程简介
《软件测试技术》是一门实践性非常强的课程,然而目前教学大纲却依然将其归为理论性课程,实训操作仅占总课时的20%。该课程传统授课方式的教学效果很差,学生普遍难以掌握相关的核心技能,原因在于以下几个方面:该课程概念很多而缺乏实训,学生难以生动地理解概念只能一味地应付考试;学生的编程能力普遍较弱,因而畏难心理抑制了学习的主动性;国内软件测试技术发展才刚刚起步,因而缺乏测试经验丰富的教师,也缺乏适合学生接受能力的教材。
本课程以笔者八年的全职软件开发与测试经验为基础,充分考虑该课程的学习规律,采用PBL教学模式开发实训题目:将PBL的三要素即问题、学习、指导与教学过程充分融合,保证了问题的多解性与真实性、面向问题的学生自主学习以及教师有启发性的指导。PBL课程的成功实施能有效提高学生的学习能力与解决实际问题的能力,国内外均有大量的应用报道。[3]
本课程共50学时,分11次课讲授,实训操作约占85%,课程以基于Linux脚本工具构建自动化测试工具及其在软件各阶段测试工作中的应用为主线,以生动的问题和巧妙的解决方法极大地激发了学生对软件测试的兴趣,学生通过实训加深了对问题的理解,加强了能力的锻炼。
二、教学效果的量化
获取并量化教学效果是将信息技术应用于提高教学质量的首要工作,常用的选项式或发散式调查问卷分别以客观和主观题目的形式呈现,[4],[5]这些问卷的数据量相对较少,因此,若要获得大量数据则需设计很大容量的调查问卷,势必加重问卷设计、问卷完成与数据收集的工作量,亟需应用信息手段改进。
笔者结合自己的经验提出了一种新颖的曲线式调查问卷,以11条曲线表征教学效果,每条曲线的横坐标代表课程的进度,纵坐标代表一种指标。
这11个指标分组为一个三层模型:第一层是兴趣指标,含对问题、对学习以及对实际操作的兴趣;第二层是PBL实施过程相关的能力指标,包括提出问题、独立学习、解决问题、表达以及团队合作的能力;第三层是性格指标,包括创造力、逻辑推理能力和耐久力。这种分层模型反映了学习过程的客观规律,即兴趣导致能力的逐渐增强,进而又逐渐强化为职业成功必需的性格品质。表1是为该课程编写的11个实训题目,获得了较好的教学效果。
这种曲线式调查问卷的优点比较明显:
首先,数据是动态的且容量较大,反映了课程全过程的教学效果,便于动态分析与回归分析;
其次,曲线图形的直观性使得问卷完成过程很有乐趣,学生不易产生厌倦感。笔者的实践经验是大多数学生耗费约45分钟完成11条曲线的绘制,因为他们会认真反复地琢磨自己在课程全过程的收获与表现;
此外,11条曲线分区域显示在一个位图文件中,利用宽屏显示器能够很方便地综合对比,而传统的调查问卷缺乏整体观,学生们也容易草率应付;
最后,这些曲线存储成Windows位图文件,便于问卷原始数据的数字化。
三、教学效果的信息化评价
信息化方法包括调查问卷数字化程序以及图形绘制与数据分析脚本,尤其值得指出的是,上述程序和脚本在最后一次课作为集成测试的实训题目,程序与若干脚本一键运行的真实演练有效地调动了学生的学习兴趣。
1.调查问卷数字化程序的设计与实现
首先要设计一个数字化程序,将曲线式调查问卷中的数据提取出来,程序的功能包括解析Windows位图文件的文件头,确定图片的尺寸,然后找到合适的像素位置进行逐列扫描,取出非白色像素的坐标位置,并将每个像素的坐标信息与学生姓名和曲线名打包成一条记录导入Mysql数据库,数据导入的关键技术是基于Mysql的命令行接口写的Linux脚本:mysql -e “LOAD DATA local INFILE 'z.txt' INTO TABLE poll LINES terminated by '\n' ”。
2.数据绘图展示脚本
为便于同类学生的特征提取,将22名学生分成三组,第一组到第三组依次代表优、良、中(n=8, 7, 7人),分组的实现是通过在数据库中建立一张姓名/组别的数据表。因为Mysql数据库本身欠缺绘图功能,所以我们选用Gnuplot软件绘图。该软件也提供命令行接口,方便用Linux脚本进行自动化集成。
3.数据分析脚本
R软件是数理统计专业的开源软件,也提供命令行接口,因此方便用Linux脚本集成,以实现对数据库中数据的自动抽取以及进行多元线性回归分析。数据分析的目的是找到每组学生的能力指标对兴趣指标以及性格指标对能力指标的依赖关系,这些依赖关系能够反映各组学生学习过程的特性,因此提供了数据背后隐藏的深层次信息。
4.教学效果的评价
最终,教师通过分析这11条曲线,并分析教学效果指标之间的依赖关系信息,再结合自身对教学过程的理解与相关知识的总结,以此为基础改进教学方法从而获得更好的教学效果。
四、结果示例
1.学习过程曲线
此处仅展示四个有代表性的教学效果指标的曲线,如图1所示。图1中的曲线是通过Gnuplot提供的“茎叶图”命令画出的每组学生相应曲线的均值与方差数据,横、纵坐标的数值是分别代表课程进度和指标高低的规一化的无量纲的量值。
可见,如果单从最终的性格指标即创造力和逻辑推理能力曲线来看,第三组最差,第二组相对是最好的。然而这一组的曲线在课程的中后期存在明显的小幅度波动,这一现象的解释是第二组学生对教师的指导有很强的依赖性,亦即该组学生在培养创造力和逻辑推理能力的过程中十分依赖教师的帮助,学习兴趣曲线也印证了这一点:该组学生在课程的后期兴趣明显下降,尤其在课程之末甚至都略低于第三组,这说明第二组学生的学习过程缺乏主动性和自我约束力。综合来看,第一组的综合学习效果是相对最理想的,因为学习兴趣曲线和解决问题的能力曲线在课程的全过程均有可观的增幅,尤其是在课程的中期,解决问题的能力陡然跃升,该组学生普遍反映当学过的脚本工具和正则表达式在课程中期真正开始用于解决软件测试问题时,他们的自信心有了很大的提升,自主学习与解决问题的能力得到了充分的锻炼。
综上所述,笔者通过分析这些曲线,并结合自身的教学实践提出了以下几个具体的教改措施:
(1)对于第一组学生,在课程的中后期增加他们的课后实训任务量,让他们的自我学习能力得以进一步发挥;
(2)对于第二组学生,一方面要在课堂实训过程中加紧对他们的督促,防止他们自我松懈而无法巩固已达到的教学效果。另一方面,要设计更能激发学生兴趣的实训题目,调动他们的积极性;
(3)对于第三组学生,再进一步放低实训题目的难度,调动他们的积极性。
2.数据分析结果
为进一步挖掘学习效果曲线背后的信息,在R软件中进行性格指标对能力指标的依赖关系的多元线性回归分析,结果见表2:其中各系数显著性sig值均小于0.001。正系数表示某性格指标对某能力指标的依赖关系是正向影响的,即随着该能力指标的增加,该性格指标亦增加。负系数则相反,依赖程度的高低由系数的绝对值确定。系数0表示依赖关系不显著,即不相关。
由表2的第二列和第三列可见,学习能力是唯一一项对三项性格指标均产生正向影响的能力指标,而解决问题的能力竟然对三项性格指标均没有正向影响,这直观地反映了学生们对考试的隐忧,即使对于学习效果最好的第一组学生也不例外。尽管笔者在课程伊始便指出考试题目大多数来自平时的实训题目,学生们内心对考试的焦虑仍无法彻底打消,这也反映了学生自信心的严重缺失。诸如此类的信息是从曲线上很难得出的,这也是数理统计应用于数据分析的价值所在。深层次的信息挖掘能够帮助决策者找到问题深层次的根源:例如只有考试制度的改革才能从根本上促使学生更看重能力的锻炼与提升。
五、下一步工作
考虑使用随堂的轻量级曲线式调查问卷,更快地得到学习效果的反馈,以建立以教师的指导为输入的控制模型,应用最优控制理论与方法获得最佳的教学效果。
考虑将教学效果评价软件与电子教案生成软件、演示文稿生成软件、实训题目生成软件集成在一个软件包里,抽取更多数据,更加自动化、系统化地分析教学数据,进而提升教育信息化水平。
此外,数据分析过程还要深入结合知识,组织相关的研究成果以挖掘出更多的信息。
本文提出的曲线式调查问卷及教学评价方法对其他课程也一样适用,只要相关课程的专业教师设置其关心的问卷指标,调查问卷数字化程序、绘图与数据分析脚本大部分均可重用。
参考文献:
[1]徐莉.应将教育信息化上升为国家战略[J].中国教育信息化, 2013(7): 6-10.
[2]罗念龙,佟秋利,马亮.聚焦“提高质量”,提升高校信息系统应用层次[J].中国教育信息化, 2013(7): 11-15.
[3]Mat, S., Yassin, R. M., Ishak, N., Mohammad, N., & Pandaragan, S. L. Model of problem-based learning using systems approach[J]. Procedia-Social and Behavioral Sciences, 2012: 541-545.
软件测试实训总结范文6
值。总结多年的人才培养与教学改革的经验,探索新形势下的高职软件外包人才培养模式和课程体系,为同类院校提供借鉴。
Abstract: The software industry has the important position in our country, higher vocational software outsourcing talents training mode and curriculum system construction research have a certain value to software talents training. Summarizes many years of experience in personnel training and teaching reform, explores higher vocational software outsourcing talents training mode and curriculum system in the new situation in order to provide reference for similar colleges and universities.
关键词: 高职软件外包;人才培养模式;课程体系
Key words: higher vocational software outsourcing;talent training model;curriculum system
中图分类号:G71 文献标识码:A 文章编号:1006-4311(2013)05-0254-02
0 引言
当前,我国的软件和服务外包主要面向日本市场,来自日本的服务外包业务约占60%。与国内其它城市相比,大连地理位置毗邻日本,与日本有着地缘、经济、文化等方面的深刻联系,与日韩等软件和动漫强国在文化背景、思维方式等方面都有很深的文化渊源。
1 大连软件外包企业人才需求现状
大连目前共有1200多家软件公司,世界500强软件企业60余家,软件从业人员超过12万人。来自大连IT技能标准及解决方案论坛上的数据显示,自2011年下半年以来,大连软件行业人才缺口达20%,其中,有相当一部分职位是高职类软件毕业生所能胜任的。
在软件企业中,绝大部分企业对于软件开发人员有比较大的需求;近一半的的企业对软件测试人员有需求,四分之一的企业对软件维护和项目管理人员有需求。
2 大连软件外包企业对高职层次人才的知识、能力与素质需求分析
企业所使用的操作系统开发平台主要有Windows、Linux、Unix和Android,其中Windows、Linux所占份额最大,随着移动互联网技术的迅猛发展,基于Android的开发业务需求越来越多。企业所使用的软件开发技术主要有Java、.NET、C\C++、COBOL;数据库技术主要有Oracle、MySQL、DB2;在企业级应用中涉及的技术主要有Struts、Spring、AJAX、Hibernate、MVC等。
企业在用人时,除了对技术有一定的要求,对专业能力和职业素质要求也很明确。在专业能力方面,要求能熟练搭建JAVA、.NET软件Web开发环境、熟悉IIS、TCP/IP等B/S结构相关的网络技术、能搭建软件测试环境进行测试、能达到英语4级或日语2级水平;在职业素质方面,要求具有较好的产权意识、良好的沟通能力、高度的责任感、自主再学习的精神和团队合作的意识。
3 高职软件外包人才岗位定位
面对企业对软件开发人员的大量需求,要把“软件开发人员”作为高职软件外包人才培养的首要岗位;软件测试人员的缺口接近开发人员的半数,故将“软件测试人员”作为次要岗位;另外,随着信息化网络化办公及业务需求,对软件维护和系统运行的技术支持需求也不容忽视,结合高职学生学习能力等客观条件,应将软件维护、项目助理等有重叠和交叉的职业岗位进行分析整合,并作为人才培养目标中的岗位目标之一。
因此,高职软件外包专业人才培养目标为:培养适应地区经济发展需要,德、智、体、美全面发展,具有良好职业道德修养和创新精神,掌握外包软件开发的基本工作过程及规范,具备程序代码编写、数据库应用开发、软件项目测试、文档编写等能力,能在项目工程师指导下,从事软件开发、软件测试和软件服务等相关职业岗位工作的高素质技能型专门人才。
4 高职软件外包人才培养模式及课程体系设计
高职软件外包人才的培养应趋向于选择“全程企业项目嵌入,高中低三层渐进”式工学结合的人才培养模式,分JAVA和.NET两个主要教学方向,辅以相关基础课程和三年外语全贯穿的课程体系。
理论教学的设计理念是以企业实际应用为核心,以知识够用为度,以可持续能力培养为目标。高职软件外包人才培养理论教学体系整体设计按基础入门、能力提升和实战拓展分3个级别设置,这3个级别是“层层递进”的关系。在JAVA方向,基础入门级要求能使用HTML、CSS技术实现静态页面的设计与制作,能使用JAVASCRIPT实现前后台的交互,能使用面向对象编程思想实现逻辑简单 的教学任务,能使用JSP和JDBC技术实现对Oracle、MySQL等数据库应用开发;能力提升级要求能使用Severlet、JavaBean、AJAX、Severlet过滤器、JSTL标签库、JSP EL表达式语言等相关技术和方法实现企业级WEB项目的开发;实战拓展级要求能使用J2EE体系架构、Struts2、Spring、Hibernate等技术和方法实现MVC设计模式下企业中型Web项目开发,团队合作完成大型项目的设计与开发,以及产品的测试与维护。在.NET方向,基础入门级要求能使用HTML、CSS技术实现静态页面的设计与制作,能使用JAVASCRIPT或VBSCRIPT实现前后台的交互,能使用面向对象编程思想实现逻辑简单的教学任务,能使用技术实现对MySQL或Oracle等数据库应用开发;能力提升级要求能使用、C#.NET、SOAP、WSDL、UDDI、WSC、WSP、WSB、异步调用、事务、缓存、WCF技术实现企业级WEB项目的开发;实战拓展级要求能使用XML、Ajax、Silverlight编程技术开发框架下的企业中型项目,团队合作完成大型项目的编程与测试,以及产品运行与维护。
实践教学的设计理念是,打破以知识传授为主要特征的传统学科课程模式,转变为“以企业项目导向、工作任务驱动为中心”的模式组织课程内容,并让学生在完成具体项目的过程中学会完成相应工作任务,并构建相关理论知识,发展职业能力;课程内容突出对学生的技能训练和职业素质养成;项目设计以学生专业技能的培养和专业素质的训练为主要目标。高职软件外包人才培养实践教学体系设计按照理实一体化课程、独立实训课程、专业顶岗实践课程3个层次设置。理实一体化课程整体采用“项目导向、任务驱动”的教学模式,围绕实现项目中任务的核心技术讲解理实一体教学内容;采用“虚拟企业、再现真实需求”的实践模式,围绕企业常用技术及企业应用项目实战开展独立实践教学内容。
综上,形成高职软件外包人才培养课程体系如图1所示。
5 结语
高职软件外包人才培养模式与课程体系的研究,是经过多年的实践探索提炼整合而来,其对于培养人才的岗位定位、岗位能力分析、知识与实践课程体系的设计可以为同类院校提供借鉴,为高职软件人才的培养提供参考。
参考文献:
[1]杨冬.高职服务外包专业人才培养模式探索[J].中国职业技术教育,2011年第20期:30.
[2]陈振东.高职院校软件服务外包人才培养模式的探索与实践[J].山东商业职业技术学院学报,2011年第06期.