前言:中文期刊网精心挑选了软件测试培训总结范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。
软件测试培训总结范文1
北京测试空间科技发展有限公司(简称测试空间)成立于2003年,是注册于北京市海淀区高新技术园的软件企业。测试空间总部位于北京,在国内多个省份,以及加拿大、英国两国设有办事机构。测试空间以成为全球专业的软件测试外包服务供应商为发展目标,为国内外的各企事业客户提供专业的、高质量的ITO、BPO外包服务和人才派遣服务(人才外包),服务内容包括软件测试、系统集成、企业应用平台建设与维护、IT服务外包和业务流程外包等。
帮客户告别软件缺陷
在快速开发软件产品的同时,组织要依靠提高开发质量和测试来缩短开发周期,降低缺陷率。随着成本的螺旋式上升,软件开发周期的缩短,以及应用程序复杂度的增加,选择合适的外包合作伙伴有助于组织大大提高项目的成功概率。测试空间能够针对组织的业务需求,为组织提供定制的综合的手动和自动测试服务。测试空间凭借在高科技、金融服务、制造、零售与分销和电信等行业所积累的丰富的多领域经验,按照GB/T25000和ISO9001标准为组织提供高效的针对特定环境的改进型解决方案。
应用程序缺陷轻者会令人陷于困窘,重者会导致软件质量下降,无法按时交付。测试空间能帮助客户杜绝这种情况的发生。测试空间采用优秀的测试技术,注重投资回报率,以及基于风险的优化测试策略,可为用户带来很多价值。
具体来说,测试空间能够提供专业化、规范化的软件测试技术服务,科学公正的CNAS第三方软件测评实验室,值得信赖的软件测试专业技术人才派遣服务,以及能与客户共享的软件测试技术培训平台。
凭借自身在国内软件外包市场的领先地位及出色的软件外包交付能力,测试空间于2009年通过了软件企业ISO9001国际质量体系认证,并于2010年9月通过了证明软件测试企业实力的CNAS实验室认证。在此基础上,测试空间还通过项目管理实践,总结并提出了“测试空间外包服务体系”和“测试空间人才管理体系”。这两套体系经过多年的完善,已经发展成为业内客户认可的软件外包业务管理规范。
软件测试培训总结范文2
【关键词】软件测试 教学方法 实践 探索
【中图分类号】G623.58 【文献标识码】A 【文章编号】2095-3089(2012)11-0220-02
1.软件测试课程开设的背景
随着软件的规模和复杂性与日俱增,软件缺陷导致的各类损失不断增加,甚至带来灾难性的后果,软件质量问题已经成为所有软件使用者和开发者关注的焦点。作为软件质量保证和质量控制的有效手段,软件测试愈发体现出其自身的重要性,受到了越来越多的关注[1-2]。
国外的软件厂商极为重视软件测试,在欧美等软件产业发达国家的软件企业中,测试人员与开发人员的配置比例一般已达到或超过1:1,而在国内被调查软件企业中,能够基本达到该比例的企业仅占22%[3]。由于我国企业对于软件测试在软件质量保障中的重要作用认识较晚,导致软件测试人才的供需之间存在着巨大缺口。据国家权威部门统计,我国软件人才缺口超过100 万人,其中很大一部分为软件测试人才,缺口达到30~40万[4]。为缓解高端技能人才紧缺问题,原信息产业部将软件测试工程师列为国家紧缺型人才,并于2004年联合五部委颁布的124号文件中强调要“加快培养软件测试人才,开展软件评测技术的研究”,为软件测试人才的培养提供了政策支持。
2.软件测试课程的教学目的
我们是对计算机专业的学生进行软件测试课程的教学,而不是进行软件测试专业人才的培养,计算机专业的学生至少能熟练掌握一至两门软件开发语言,熟悉计算机网络、操作系统、数据库、中间件等的基本知识,能从事对应的程序开发工作。所以本课程教学的目标主要有三点:其一,帮助学生掌握规范化的软件开发流程,熟练掌握软件测试的基本理论;其二,能进行一般的软件测试,能设计测试方案,编写测试用例,至少能掌握一种软件测试自动化工具;其三,让学生了解软件测试行业的特点,了解软件测试职业和职位,培养学生的兴趣爱好,开拓就业方向,为有志于进入软件测试行业的学生提供一定基础。总的来说就是让学生成为初级软件测试人才,为学生进一步成为中、高级软件测试人才提供坚实基础。
该课程需掌握的知识主要包括:
1)掌握软件测试技术的基本理论、基本方法。包括熟悉黑盒测试技术、白盒测试技术、基于缺陷模式的测试技术等等,熟悉单元测试、集成测试、系统测试、回归测试、性能测试、功能测试等测试方法。
2)能进行测试方案的设计,测试计划、测试用例的编写。
3)至少掌握一种软件自动化测试工具的使用,能进行测试环境的配置,并能了解其它自动化测试工具。
4)能进行测试结果分析以及编写测试总结报告。
3.软件测试课程教学中目前存在的问题
(一)课程定位不明确
随着软件测试行业的兴起,许多高等院校认识到软件测试人才培养的重要性,纷纷开设软件测试专业或者软件测试课程,但是如何专业的培养软件测试人才还没有一个完整的体系。在我校,因为没有开设软件测试专业,软件测试课程应该作为专业必修课、限选课还是选修课一直存在争议。目前作为一门专业限选课程,授课内容和授课的形式也存在一些争议。在授课内容方面,目前的软件测试教材大都是近几年出版的,内容安排上基本是按照测试理论、测试技术、测试工具、测试实践、测试管理的顺序依次展开。内容上“面面俱到”,如何在教学过程中“面”与“面”之间取舍、平衡,使之达到软件测试课程设置的目的还不是特别明确。
(二)课程教学方法单一,缺乏教学互动
虽然目前市面上已经有大量的软件测试教材,但是基本上以理论居多,教材中案例的例子也不多,导致教师在课堂教学过程中,通常只是凭自己以往的教学经验,利用传统方法简单地讲解,不能通过师生和谐的双边活动完成课堂教学任务或者达不到理想的教学效果。另外,由于是一门新兴的课程,既有深厚的理论功底又有丰富实践经验的教师非常缺乏,因此教学方法和手段难免因循守旧,教学过程开展得不够深入、彻底,存在大量的不规范性和随意性。高校中虽有讲授软件工程的主讲教师能很好的讲解软件测试理论和介绍软件测试方法,但缺乏较好的软件测试案例和一定的工作经验,因此很难出现生动活泼的教学场景,与学生的互动鲜有显现。
(三)课程实践环节薄弱
《软件测试技术》课程作为一门新兴课程,具有理论性抽象,实践性强的特点。为了更好地实现教学目标,这不仅要求讲授的教师具有深厚的理论功底,更要求教师具有丰富的实际软件项目测试经验,同时也需要学生具备一定的程序编写能力和严谨的逻辑思维能力。但现实中高等院校严重缺乏这类具有实践经验的教师,也缺乏对教师进行相关的培训工作,另外大多数学生的动手实践能力和编程能力也比较薄弱,这些都是实践教学中遇到的现实问题。除此之外,软件测试这门课需要适当的软硬件投入,尤其是软件,目前市面上比较好的测试软件都不是免费的,建一个专用实验室动辄就要几十万甚至几百万,普通高等院校很难有充足的经费专门为一门课程建立一个专用的实验室,这也是实践环节的现实问题,因此我们只能选择一些开源的免费测试软件进行教学工作。
4.教学方法探索与实践
(一)激发学生对本课程的兴趣
培养学生对软件测试课程的兴趣,是成功教学的第一步。课程的开始可以通过列举历史上许多经典案例,如“千年虫问题”、“美国火星登陆事故”、迪斯尼公司的“生病的狮子王”等等来说明软件测试的现实问题和重要性;然后介绍软件测试行业的发展,人才需求等情况,鼓励学生对软件测试行业的就业倾向。
(二)运用案例进行教学
在讲解理论知识的同时,使用案例来进行分析及表现理论知识的运用,可以很好地帮助学生获得感性认识。例如在讲解黑盒测试的等价类划分方法时,引用经典的三角形问题案例;在讲解边界值分析方法时,引用加法器案例;在讲解决策表方法时,引用NextDate函数案例等等。运用案例进行教学,学生一方面能够理解理论知识,另一方面能学习理论方法的具体运用,进一步加深对理论知识的掌握,同时也为学生进行测试用例的设计打下坚实的基础。进行案例教学时需要掌握一定的技巧,比如在课堂开始不要急于讲解理论知识,而是先引出案例需要解决的问题,引领学生去思考,带着问题去学习,这样可以取得事半功倍的效果。
(三)加强理论讲授与实践环节的互动
由于软件测试课程实践性强,在课程设置上采用理论授课与上机实践相结合的授课方式。在我校,采用2+2的教学模式,即每周2节理论课与2节实践课同时进行且必须是同一个教师授课。这样在讲解理论知识时,可以将学生在实践中使用的方法、步骤及遇到的问题拿到理论课中进行讲解,让学生知道为什么这样做,这样做的依据来源于哪些理论知识,如此可以使学生深刻理解理论知识的重点。另外在上实践课时,教师用约三分之一的实践时间先行讲解实验目的、内容、方法及步骤,讲解的过程中,教师不能只为做实验而实践,必须讲清楚这个实验来源于哪些理论知识,哪些已经学过,哪些还没有学,学过的知识需要再简单口述一遍,没有学过的也要简单的介绍一下知识要点,让学生有初步的了解。这样一来,理论课与实践课就可以形成良好的互动,知识要点有一定的重复率,学生也勤于思考,积极动手,学得明白,有很强的收获感,越学越有劲。
(四)开放自主互评式教学
为了让学生积极参与到本课程的教学与实践中,可以让教师与学生的角色在一定程度上进行互换,进行开放式学习实践,学生可以从探索知识的奥妙中获得成就感,同时还能培养学生的集体协作精神。
(五)适当进行阶段性考核
在一个学期的教学过程中,一般有18周,时间跨度比较长,而实时掌握每个学生的学习情况非常重要,一个重要的方式就是进行阶段性考核。约每隔6周进行一次阶段性考核,了解学生对前一阶段所学知识的掌握情况,同时还能了解学生前一阶段的知识难点、学习态度等问题,可以进行重点、个别指导。阶段性考核的次数不宜太多,一个学期大约进行两次。每次时间也不宜太长,一个课时的时间就可以了。主要考核学生对基础知识、基本理论的掌握情况,不宜考核一些偏、难、怪的内容。按照经验,进行阶段性考核,对学生的考核结果进行公开评价,可以发现学生之间的差距,让学生了解自己的学习状态,有效端正学生的学习态度,有力促进学生主动学习。
5.总结
软件测试在国内软件行业正越来越受到重视,社会需要大量的软件测试人才,许多高校因此开设了软件测试课程。但软件测试人才的培养才刚起步,需要学校、教师、学生和公司共同努力,才能培养出社会真正需要的软件测试人才。本文就我校开设的软件测试课程作为专业限选课,以拓展学生知识面为目的,对进行的教学活动做了一些有益的探索。从近三年的教学结果来看,经过不停的改进教学方式方法,在试卷难度相当的情况下,学生的平均成绩从最初的65.3分提高到83.4分,取得了一定成效。今后将进一步探索有效的教学方式方法,增强实践教学,不断提高教学水平,以期达到更好的效果。
参考文献:
[1]柳纯录,黄子河,陈渌萍.软件评测师教程[M].北京:清华大学出版社,2006.
[2]赵翀,孙宁.软件测试技术:基于案例的测试[M].北京:机械工业出版社,2011.
[3]武剑洁,石桂玲.软件质量与测试教学内容改革的探索[J].计算机教育,2010(20):30-37.
[4]宋建伟,刘小平.软件测试培训课程体系浅析[J].信息安全与技术,2010(10):94-96.
软件测试培训总结范文3
本文针对软件测试课程的教育现状,结合软件测试的课程特点和培养目标,从面向应用型人才的培养方式出发,提出了以案例式教学为主导,走教学产业化发展的软件测试改革方案。
关键词:
软件测试;应用型人才;案例式教学;教学产业化
随着我国IT行业的发展,越来越多的企业意识到软件测试的重要性,因此软件测试人员成为当前IT业界亟需的热门人才。面对软件测试人员紧迫的需求形势,应用型人才培养单位应该扩大软件测试人员的人才培养规模,提高培养质量。
一、《软件测试》课程教育现状
我国软件测试技术发展已有十余年,但IT市场对于测试人员仍然呈现出供不应求的势态。目前国内高校对软件工程专业几乎都会开设软件测试课程,甚至有些高校已经设置有软件测试专业。2011年11月,教育部主办了“2011年高等学校软件测试课程教学论坛”,对测试人才的培养及测试领域的全面发展起到了积极地推动作用[1]。高校系统化的专业教育体系为学生奠定了扎实而科学的学科基础,并对软件测试技术的理论化和系统化发展起到了不可替代的作用。利弊相依,传统的人才培养模式对软件测试课程设置和培养方案上还是会存在以下不足。
1.重理论轻实践在传统的软件测试课程设置中,大多采用教师在课堂上讲授理论知识,学生上机时完成实验操作的教学方式。实验的目的只是为了检查学生知识点的理解和掌握,实验题目大多比较陈旧,不能与时俱进地与当前的最新技术或最热门的应用相结合,使得学生的测试知识体系过于单薄。
2.重学生个体知识积累,轻团队协作能力培养团队协作在软件工程中的重要性无须多述。软件测试作为软件工程中重要一个环节,贯穿于整个软件生命周期,测试人员与系统分析员、软件设计师、程序员、维护人员之间的沟通必不可少,良好的团队协作才能有助于项目的进行,有助于高效、正确地开发出高质量的软件产品。传统的教学模式中,很少引入分组协作的环节去锻炼学生的沟通和交流能力,更不能设计出测试人员和开发人员的沟通场景,不能满足学生在项目中去加深理解、巩固提高的需求。
3.重即有知识,轻科学创新一直以来,软件测试课程在高校的课程体系中受到重视并不多,课程结束后并没有延续测试知识的后续课程。因此,学生不能在后面的学习和实践中进行总结提升。知识在母体中是要经过消化、适应、转化、演进、创新、融合、活化,而后才称为组织的“行动知识”,现有的教学模式不能很好的产生知识发酵效果。
二、《软件测试》课程特点和培养目标
软件测试是一门应用型较强的学科,应注重理论联系实践。一个合格的软件评测师除了要掌握即有的测试理论和软件知识外,还必须具备对软件测试行业的深刻理解,必须具备对计算机专业知识,包括编程技能、数据库、网络、中间件等知识的系统掌握,必须具备沟通能力、团队协作精神。软件测试是为了尽可能多地发现并排除软件中潜藏的错误,最终把一个高质量的软件交给用户,这并不是一项简单的工作。要做好软件测试,测试人员不仅需要站在客户的角度思考问题,真正理解客户的需求,具备良好的分析能力和创造性思维能力,完成功能测试和界面测试,而且要能理解软件系统的实现原理和各种使用场景,具备扎实的技术功底,能使用测试工具完成相应的性能测试、安全性测试、兼容性测试和可靠性测试等更具挑战性的任务[2]。从这个角度看,一个优秀的测试工程师需要掌握更多的知识和技能。
三、《软件测试》课程教学改革方案
以上可以看出,当前高校对于测试课程的不重视,以及当前的软硬件设施及教学方法都不能满足对应用型测试技术人才的培养要求。为了适应软件产业发展对测试人才的迫切需要,实现软件人才培养的持续性发展,针对软件测试课程调整培养方案,展开深入的教学改革和实践活动十分迫切和必要。
1.加大师资力量,构建完善的软硬件测试平台教师素养的提高是软件测试教学改革得以顺利开展的前提。此前,国内对软件测试并不重视,致使国内软件测试人才短缺,大部分高校内虽然有计算机系,但多以重开发轻测试,测试教师的专业素质和数量都远远不够。因此,不仅要重视对教师测试专业技术的培训,提供更多的学习机会,也应该认真开展软件测试教学研究,构造专业的软件测试教学团队。作为一门实践性较高的课程,软件测试必须建议专门的、完备的实验教学体系和环境。目前,高校普遍缺乏软件测试的软、硬件环境,致使学生无法通过项目实践来深入理解和提高测试相关知识和技能。
2.运用案例教学,丰富软件测试项目实战案例在教学活动中,学生总是对最新、最流行的项目和案例感兴趣,陈旧的案例既不能满足当前市场上对测试人才的技术需求,又不能很好的激起学生的兴趣。运用案例教学最重要的环节就是丰富案例素材,保持案例的“鲜活性”与“生命力”。高校可以采用历年本科毕业设计中运用了流行的技术、难度适中、功能较为完整的应用作为软件测试课程的测试案例,不但可以保证素材的延续性,也使得学生毕业设计完成的质量有所提高。
3.加强校企合作,走教学产业化发展之路[3]企业需要人才,高校为企业输送人才,校园中学习的技能最终要接收用人单位的考验。所以与软件企业合作,建立对口的学生实训基地,是应用型人才培养的重要途径。软件测试技术的掌握与提高离不开项目实战,让学生在真正的软件工程过程中从事测试工作,不仅能使学生深刻体会到软件测试在整个项目中的作用,掌握测试方法和技巧,对于学生的沟通交流能力、团队协作能力都有积极的促进作用。
四、小结
软件测试是保障软件质量,验证软件可靠性的重要环节,其重要性不言而喻。重视软件测试应从企业用人的实际需求出发,高校应加强面向企业需求的软件测试改革,切实培养学生的动手操作能力,使学生掌握最新的测试方法和技巧,让企业需求促进和推动高校教学发展。
参考文献:
[1]李静赵志升.软件测试专业课程体系建设和教学改革[J].教育与职业,2014(1):136-137.
[2]朱少民.软件测试方法和技术[M].北京清华大学出版社,2005.
软件测试培训总结范文4
【关键词】软件测试;应用型人才;培养模式;课程群
据前程无忧网数据显示,去年国内软件测试人才缺口高达20万,今年有望突破30万人。目前国内软件测试和开发人员比例大约在1:4-1:5,而国外测试和开发人员比例为1:1,微软测试人员和开发人员的比例已达到2:1。软件测试人才正在成为我国软件行业目前最紧缺的人才之一。随着我国软件产业的迅速发展,软件测试人才的地位正在逐年提升,这种供需矛盾将变得越发突出。
目前,国内软件测试人才的培训[1]主要有三种机构:企业、高等院校和IT培训机构。企业培养的人才大多是通过参与项目自己摸索的软件开发人员,由于缺乏对软件测试全面的认识,在测试思想、技能、思维方式、沟通能力等方面都需要进一步提高。高校培养出来的人才具备一定理论知识,但动手能力较差,进入企业后需要再培养,不能立即到岗。培训机构则能弥补前两种方式的不足,但价格昂贵。
一、软件测试课程教学现状
(一)学生学习枯燥,兴趣低
软件测试是计算机专业课,课程内容理论性和操作性都很强,并且需要学习了解的自动化测试工具种类繁多。目前各个高校在开设这门课程时,大多数还停留在理论教学阶段。教师准备好课件,学生拿着课本,首先给出书上官方的定义和自己的解释,然后结合一些课本上或自己参与的项目,给出实例证明这些理论。学生容易感到内容空洞、枯燥乏味,学习时就缺少主动性,难对这门课程产生兴趣。
(二)软件测试实验开展不充分,学生实践能力弱
软件测试知识点众多,理论内容的授课量占绝大部分[2],实验课时数仅占到四分之一左右。由于实验时间、实践环境有限,日常实验教学都是验证性的小实验。由于没有一个实际的面向企业的项目支撑,很多测试过程难以进行,比如集成测试、性能测试、验收测试等等。通过对从事软件测试方向工作的毕业生就业情况调查发现,软件企业认为软件测试课程理论丰富,但还存在学生实践能力不足、测试工程师职业素质有待进一步提高等诸多问题。
(三)教师缺乏实际软件测试经验
软件测试行业发展迅速,软件测试工具种类多,更新快。软件测试这门课程实践性较强,高校计算机教师大多数软件项目开发测试经验不足[3],对软件公司软件项目研发测试过程没有切身的体会。教师在讲授这门课程时没有实际的软件项目案例可以操作,实践教学显得吃力,很难给学生软件测试方面的经验知识。
面对软件测试人才的社会需求紧迫性和软件测试教学现状,人才培养单位应该扩大软件测试人才培养规模,总结软件测试知识点,改革教学方法,培养学生兴趣,提高教学质量。
二、软件测试工程师职业能力需求
为更好地培养学生的软件测试工程师职业素质[4][5] [6],提高学生的就业率和用人单位的满意度,充分分析软件测试工程师的职业能力要求。
(一)素质要求[4][5]
1、具有团队合作精神。
2、有较强的责任感及进取精神。
3、细心、耐心,具备逆向思维。
4、技术方面的基本素质,熟悉系统的应用,熟悉办公软件的应用,熟悉基本的测试流程;熟悉测试管理工具的应用。
5、具有测试人员的学习能力、领悟能力。
6、对行业具有信心,对测试的信心,相信软件一直存在BUG。
7、良好的英语阅读和写作。
8、良好的语言及文字表达。
9、较好的沟通技巧。
10、怀疑精神具有测试人员必须保持的怀疑态度。
11、捕获用户观点的能力,强烈的质量追求,对细节的关注。
(二)专业能力要求[6]
1、对Windows、Linux、Unix等大型主流操作系统的熟练掌握能力。
2、具备快速进行应用系统部署和测试环境搭建的能力。
3、测试人员必须掌握目前主流的程序设计语言,比如C、C++、JAVA、C#、VB等多种平台下的一种或者多种语言,具备进行简单应用开发的能力。
4、熟练掌握SQL Server、Oracle、DB2等一种或多种数据库系统的使用,熟悉使用SQL语言。
5、对信息安全知识的基本掌握。
6、必须深刻理解和熟练掌握软件测试基础理论与技术。
7、精通各种测试技术,能够手工或利用相关工具进行单元测试。
8、能够进行测试用例设计、测试执行、编写缺陷报告。
9、熟悉软件测试流程和测试过程管理,能够编写测试计划,具备组织测试工作的能力。
10、掌握测试管理相关知识和软件。
11、掌握和熟练使用当前主流的功能、性能自动化测试工具以及测试管理工具,具备编写测试脚本、进行功能和性能测试自动化测试的能力。
(三)知识结构要求
1、软件知识:数据结构、操作系统、面向对象程序设计、数据库原理、C程序设计语言、WEB技术、数据仓库与数据挖掘、软件工程。
2、硬件知识:数字逻辑、微机原理与接口、计算机组成原理、计算机系统结构。
3、网络知识:计算机网络技术、计算机网络安全。
4、人文、社会学基础:原理、道德与法律、中华民族历史、大学语文、大学英语。
5、数学基础:高等数学、线性代数、概率统计。
三、软件测试课程设计理念和思路
根据软件测试工程的职业能力要求,对软件测试课程我们重新把握课程的设计理念和思路。
(一)课程设计理念
1、与企业共建基于工作过程的课程体系
根据专业办学的定位及特色,《软件测试》课程的设计理念是以软件测试员/测试工程师岗位需求为依据,以培养学生使用自动化测试技术进行软件测试的职业能力为主要目标,以测试工作的典型工作任务为导向,坚持以能力为本位的设计原则,制定突出企业应用能力和素养的课程标准,构建基于工作过程的系统化课程体系。课程组通过开展课程标准研讨会和技术培训会等形式,听取企业专家的建议,修订软件测试课程的内容,保证课程内容与企业用人需求同步;在课程功能上注重学生应用能力的培养,构建以掌握软件测试应用能力为特征的理实一体化的教学内容,做到强化技能、提升业务素质,提高学生的就业竞争力和实际工作能力。
2、和相关课程构成课程群,实现企业应用项目开发过程的案例教学环境
立足于培养满足企业应用的软件项目开发需要的应用型人才,本课程以真实的软件实例项目测试任务和过程为依据,以现代教学理念为指导,精心进行教学设计。
在构建课程体系[7]时,由专业建设及教学指导委员会,充分调查分析不断变化的市场,以企业应用软件项目开发为切入点,构建基于软件项目开发过程平台。将《Java面向对象程序设计》、《数据库原理及应用》、《软件工程》、《软件测试》、《软件项目综合实训》这5门课程,按照专业培养目标,掌握计算机软件技术所必需的理论知识和专业技能,具有较强实践能力,能在软件项目研发测试一线从事软件项目需求分析、设计、编程、测试和软件产品等工作的高素质应用型专业人才的要求,对应“软件工程师”、“软件测试师”“数据库工程师”等行业职业特征,以项目为载体,形成一个有机整体,整合成“基于企业应用软件项目开发过程”,组建了课程群。其中《Java面向对象程序设计》、《数据库原理及应用》是专业核心基础课程,《软件工程》、《软件测试》、《软件项目综合实训》是专业核心必修课。通过“软件项目的需求分析、设计、编程和测试技术”这个链将这五门课程紧紧联系在一起,并能带动软件技术、网络工程、计算机信息管理、计算机应用技术等几个专业的协调发展。
(二)设计思路
1、以软件测试工程师对软件测试的能力要求为主线,设计课程体系,强化“工程属性”,突出“项目色彩”。
在课程体系设计中,课程组以软件测试工程师对软件测试的能力要求为主线,整合“JAVA面向对象程序设计”、“数据库原理及应用”、“软件工程”并融合到以多种实际企业项目作为案例的“软件项目综合实训”实践课程中,经过优化,强化课程的“工程属性”和“企业项目开发色彩”,将原来在传统课堂教学中仅仅通过简单实验无法实现的“集成测试”、“性能测试”、“系统测试”、“验收测试”等环节在实际工程项目实训中得到实现,并努力培养学生岗位职业能力。在课程教学中,坚持以实际项目案例中的工作任务为目标,融理论教学与实践教学为一体,以案例教学为导向,结合学生考取软件测试工程师资格证书的实际需要,加强学生职业能力和综合素质的培养,提高学生就业竞争力。
2、以企业工程能力培养为重点,实行分阶段培养模式
根据企业工程能力的形成过程,课程组将教学内容划分为基础理论阶段、技术应用阶段、职业发展阶段三个阶段。其中,基础理论阶段包括测试基础理论模块,主要介绍软件测试的基本理论与技术,测试用例设计和软件测试流程,侧重培养学生的测试思维,了解并掌握软件产品质量保证的基本思想和基本测试流程,以及软件测试的方法、技术,使学生能够设计出测试案例并通过手动测试实现测试案例,为全面掌握软件测试技术,后续实施测试和测试项目管理打下坚实的基础。技术应用阶段包括测试技术应用模块,主要介绍主流的自动化测试工具,包括IBM系列测试工具、HP QTP、HP LoadRunner,企业级项目的测试实施,培养学生将测试知识和技术应用于自动化测试实施的能力。职业发展阶段包括测试项目管理和职业素质教育两个模块,主要介绍软件测试项目管理的相关技术和方法、运用工程项目方式管理软件测试过程、测试企业工作模式和软件测试人员必备素质,培养学生的项目管理能力、团队协作能力和求职应聘能力。
适当加入游戏测试、手机测试、笔记本测试等学生感兴趣的内容。我们了解到学生对游戏测试这部分内容很感兴趣,那些平时听课不太认真的学生在这个问题上都举手要说上几句,跃跃欲试,也都能说出一二。所以,课程组在软件测试这门课程中经常讨论一些游戏测试这部分内容,以引起学生的学习兴趣。
四、改革教学模式和教学方法
(一)教学模式
本着“教师为主导,学生为主体”的思想,采用双证培养、分阶段培养和教学做评一体化教学模式[8]。
1、双证培养教学模式
实行“双证培养”教学模式,将学历教育与技能学习无缝对接,学生毕业后不仅能获得国家承认大学学历证书,同时还将获得国家劳动部高级职业技能认证证书。根据学生的能力特点,推荐学生考取软件测试助理工程师、软件测试工程师、软件质量管理工程师、注册软件质量保证师(国际认证)等资格证书。双证教育使学生专业能力更强、职业素养更高、综合素质更好、更符合企业用人标准。
2、教学做评一体化教学模式
将教学场所直接设在实训实验室,师生双方边教边学边做,理论和实践交替进行,把课堂教学转向工作情境,课堂由教师为主转向以学生为中心,突出学生动手能力和专业技能的培养,充分调动和激发学生学习兴趣。学生真正变成了学习的主人,而老师只是一个引导者或答疑解惑者,可以培养学生的终生学习能力,对加强学生的计算机动手操作能力和解决实际问题的能力也有很大好处。
最后教师跟大家一起对实验结果进行讲评,并对表现优秀的学生给予鼓励,同学们情绪高涨,学习积极性高。
(二)教学方法
根据学生的实际情况,综合采用多种教学方法[9][10]。
1、项目导向教学法
以从企业精选的项目为载体,在授课过程中对项目进行分解,根据学生的个性和他们的意愿分配不同的角色,并引导学生练习操作,体验项目流程,从而形成规范的开发意识和良好的IT职业素质。学生在校内所学习到的软件开发中的各类案例,在实际工作中能够及早地进行规划。
本课程以物流信息网这个项目为主线,把整个课程的教学演变成一系列的教学情境。按照实际工作中项目开发流程的顺序,依次展开,将“显性”的知识灌输,变为“隐性”的能力培养。通过具体项目的实施,引导学生在完成项目的过程中,掌握知识,培养能力。
2、任务驱动教学法
在课堂教学活动中,如果采用传统教学方法,很难激发学生学习兴趣。应该采用任务驱动教学方法,把一个项目分解为若干个大任务,每一个大任务,又分解为若干个小任务,将任务资料发给学生。学生在教师的引导下,课下先要进行消化,然后查阅各种必要的资料,理解知识并思考提出解决问题的方法。课上教师答复学生的问题,并引导学生更深层次的思考。通过这种方法充分调动学生的学习积极性,提高学习兴趣,使学生既学会理论知识又学会用理论知识解决实际工程中的问题。
3、启发式教学法
教师根据课程教学目的、内容、学生的知识水平和认知规律,采用启发诱导方法传授知识。该方法能够充分调动学生学习的积极性、主动性,促使学生独立思考、判断、归纳解答。能较好的培养学生学习能力,达到触类旁通的教学效果。
4、小组教学法
将班内学生分成若干个测试小组,每小组成员不超过7人,每组分配不同的软件项目任务。小组成员模拟与体验软件测试全过程工作职位和角色,使学生全过程适应工作职位的要求。
各项目小组在测试项目过程中,针对不同的开发阶段,撰写各开发阶段相应的文档,并制定相应的测试计划,设计典型测试用例,使用不同的软件测试技术和测试工具,完成不同的测试目标,并进行回归测试,以实现软件测试各单项专业知识与技能整合运用的目标。在整个测试过程可以体现“学以致用”的思想,实现理论与实践相结合。
通过演练项目开发测试,不仅让同学们切身体会到软件开发的整个过程,还让同学们对软件开发中各个角色有充分的了解,同时也更深刻的体会到团队合作的重要性。
五、教师队伍建设
加强双师队伍[11]建设,坚持“引进来,走出去”原则,积极引进具有企业开发经验的高素质人才进行课程教学和实验指导,同时注重本课题组青年教师队伍的培养。采用分批次选派青年教师参加山东大学齐鲁软件学院暑期实训和定期组织青年教师去软件公司实习等方式,将企业的软件测试经验直接带到教学中,提高教师的教学水平。
我们定期引进一些软件公司的软件测试人员或者聘请这方面的专业人士为教师、学生做定期讲座,以弥补我们在教学实践方面的缺陷。
六、实验实训条件建设
为培养应用型人才,本课程注重从不同侧面提高学生的实践能力。一方面,强化课内实验教学,在校内建有多个实训实验室,另一方面,与校外多家企业建立合作关系,为学生提供实训实习平台,开展产学研合作,构建校企合作培养人才的新模式。
本课程组注重密切与行业和企业的联系,与多家软件公司进行长期合作,建立了校外实习实训基地[12],为学生提供了生产性实训和顶岗实习的场所,在真实的职业环境中完成真实软件产品的开发,体验企业文化,培养职业态度和习惯。学生毕业后可成为这些公司的正式员工,真正实现了学校、企业、学生三方受益。
七、改革考核方式
大胆改革课程考核方式[13],采用30%平时成绩+30%实验成绩+10%项目考核成绩+30%期末考试成绩方式。平时成绩主要考核学生的课堂讨论情况、课后作业完成情况及课后自学情况。实验成绩根据学生在实验中的测试用例设计和操作情况,以及测试小组的分工合作情况给以评分。项目考核主要采用项目答辩的形式考核学生对基础知识的理解和掌握情况,由教师、行业专家、学生代表组成专家组给予评分。这种考核方式更注重的是对学生学习过程和实践操作水平的考核,避免学生为考试而学习,死记硬背现象。
八、小结
通过对基于工作过程的软件测试应用型人才培养模式的探索研究,学院已取得了实质性进展,建立了软件测试课程教学团队和软件测试实验实训基地。学生的软件测试综合应用能力有明显的提升,得到用人单位的好评,提高了学生的就业率。
参考文献:
[1]龚宇辉.软件测试课程教学改革研究[J].教育与职业,2010(24):130-131.
[2]温艳冬,石冬凌.软件测试课程三级项目教学实践[J].计算机教育,2010(22):77-79.
[3]胡宏银.软件测试课程教学方法探讨与实践[J].计算机教育,2007(03):11-13.
[4]http:///link?url=5xO-IodKMsEhsyUjQhIeqybDGR-8AypYffsnAnZdMWpLRpgEhLehfzGEROxq9fIC.
[5]孙金华.软件测试人才培养与课程构建的探索[J].计算机时代,2009(6):68-71.
[6]钟素芬,叶明芷.软件测试应用性人才培养模式的探索与实践[J].北京联合大学学报(自然科学版),2007(03) :89-92.
[7]田小霞.软件测试人才培养的探索[J].福建电脑,2013(02):181-182.
[8]刘育熙,耿雪春.面向应用的软件测试人才综合能力培养模式研究[J].教育与职业,2009(11):111-112.
[9]范洪辉,朱洪锦,朱广萍.“软件测试技术与软件质量”课程教学改革探索[J].江苏技术师范学院学报,2012(12):151-153.
[10]周改云,马丽.行动导向教学在软件测试技术课程中的应用[J].电子测试,2013(04):192-194.
[11]兰景英.构建应用型软件测试人才培养实践教学体系[J].黑龙江教育学院学报,2011,(05):78-80.
[12]兰景英.应用型软件测试人才培养模式探索与实践[J].潍坊教育学院学报, 2011,(04):78-80.
[13]叶振,杜斌.开放式软件测试教学实践探索[J].现代企业教育,2011(01):140-141.
基金项目:
山东协和学院教改项目(2012xh01)。
作者简介:
李兆翠(1980.1-),女,山东莒南人,硕士,讲师,研究方向:软件工程。
软件测试培训总结范文5
关键词: 软件测试; 案例教学; 实践教学; 案例库
中图分类号: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
软件测试培训总结范文6
关键词:软件质量;软件质量保证体系;软件测试与维护
中图分类号:
软件质量是贯穿软件生存期的一个极为重要的问题,是软件开发过程中所使用的各种开发技术和验证方法的最终体现。因此在软件生存期中要特别重视质量的保证,以生产出高质量的软件产品。软件质量保证的目标是开发出可接受的软件产品。这里所谓的可接受应是用户理解意义上的可接受,或者说应达到用户提出的质量要求。所以软件质量保证的任务自然就是保证软件质量。那么我们首先需要知道软件质量所包含的内容,才能明确软件质量保证的职责、内容、活动,从而进一步完善软件质量保证体系。
1 软件的质量包含
2 软件质量保证体系(SQA)的主要职责
我们总结出软件质量保证体系(SQA)的主要职责有以下三点:(1)向管理者提供正确的信息,以使软件开发正确地执行;(2)收集质量数据,确定和管理风险,促进和协助流程改进;(3)充当测试工作的监督者,测试工作是否按照既定的流程(测试计划、测试案例、测试执行)进行。
软件质量保证的主要内容包括:保障制度体系、促使过程改进、指导项目实施、评审项目活动、审核工作产品、协助问题解决、提供决策参考和进行缺陷预防。目前我们的软件质量保证体系是杂乱无章,有时甚至是混乱的,几乎没有定义过程的规则和步骤。软件保证工作完全依赖个人努力和杰出的专业人才,取决于超常的管理人员和杰出有效的软件开发人员。表现和成果都源于或者决定于个人的能力和他们先前的经验、知识以及他们的进取心和积极程度。一旦遇到软件质量危机就放弃原计划过程,反复编码和测试。这是非常危险的,直接阻碍了软件质量保证的有效进行。为了保证软件质量,我们需进行有条理有目的的软件质量保证工作。科学的软件质量保证过程一般包含以下几项活动:(1)首先,建立SQA组;(2)其次,选择和确定SQA活动,即选择SQA组所要进行的质量保证活动,这些SQA活动将作为SQA计划的输入;(3)然后,制定和维护SQA计划,这个计划明确了SQA活动与整个软件开发生命周期中各个阶段的关系;(4)SQA计划、对相关人员进行培训、选择与整个软件工程环境相适应的质量保证工具;最终,不断完善质量保证活动中存在的不足,改进项目的质量保证过程。
在软件质量保证的过程中,六西格玛是目前产业界应用最广泛的基于统计的保证策略。20世纪80年代在摩托罗拉公司最先普及,六格西玛策略“是严格且规范的方法学,它运用数据和统计分析,通过识别和消除制造以及服务相关过程中的缺陷来测量和改进企业的运转状况”。“六格西玛”一词来源于6个标准偏差――每百万个操作发生3.4个偏差(缺陷),它意味着非常高的质量标准。六格西玛方法有三个主要的核心步骤:
定义:通过与客户交流的方法来定义客户需求、可交付的产品及项目目标。
测量:测量现有的过程及其产品,以确定当前的质量状况(收集缺陷度量信息)。
分析:分析缺陷度量信息,并挑选出重要的少数原因。
如果某个现有软件过程是适当的,只是需要改进,六格西玛还需要另外两个核心步骤:
改进:通过消除缺陷根本原因的方式来改进过程。
控制:控制过程以保证以后的工作不会再引入缺陷原因。
以上3个步骤和另外两个附加步骤有时叫做DMAIC(定义、测量、分析、改进和控制)方法。
3 软件测试与软件维护
软件测试与软件维护是整个软件质量保证体系中重要的两个组成部分。软件测试的目标是确保创建的测试计划能够满足所有系统规格说明书的要求;确保经过测试和返工后软件与规格说明书保持一致。软件测试是软件质量保证工作中不可或缺的重要活动,软件测试与软件质量保证是软件质量工程中两个不同的层面工作。软件测试是对过程的产物开发出的软件进行剖析,找出软件运行时出现的问题,记录出错数据,从而达到保证软件质量的目的。可以说软件测试是软件质量保证的最关键的一项措施。建立独立的软件测试,选择好的测试方案,不但能有效地控制软件的风险、提高软件的质量,而且能有效地降低软件的质量成本。软件维护的目标是确保对已建立的变更控制过程进行检测,包括将变更集成到软件的产品版本中的过程;确保对代码的修改遵循编码标准,并且要对其进行评审,不要破坏整个代码结构。软件运行过程中难免出现问题,这不能完全归咎于软件质量,维护也是保证软件质量的一项措施。为了保证软件质量,我们需要对软件进行维护,在维护过程中发现不足,不断完善软件。
随着软件产业的发展,软件质量控制和软件质量评价越来越成为软件质量研究中的重要课题。软件的开发和使用的历史已经留给了我们很多由于软件缺陷而导致的巨大财力、物力损失的经验教训。这些经验教训迫使我们的工程师们必须采取强有力的措施来检测未发现的隐藏的软件缺陷。软件过程质量保证使每个工作者在一种开放式的环境中工作,吸取业界的成熟经验少走很多弯路,使工作有成效,让领导足够重视和坚定的支持,进而有效地确保软件项目的质量。
参考文献:
[1](美)Watts S.Humphrey.软件过程管理[M].北京:清华大学出版社,2002.
[2]波特,著.尤克滨,译.软件过程改进简明实践[M].北京:机械工业出版社.
[3]赵池龙.实用软件工程[M].北京:电子工业出版社.
[4](美)Paul C.Jorgensen.韩柯,译.软件测试[M].Software Testing A Craftsman's Approach(Second Edition)[M].北京:机械工业出版社(软件工程技术从书).