软件测试课程总结范例6篇

软件测试课程总结

软件测试课程总结范文1

【关键词】软件测试;工作过程;课程设计

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).

软件测试课程总结范文2

关键词:软件测试;测试工具;测试管理;企业需求

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2014)32-7664-02

Abstract: In order to reverse the misunderstanding in College of Software Testing Talents Training, through explains the intension of software testing,proposes the teaching was in the software testing course necessary and feasible, as long as the change of thoughts, simulation test case of enterprises in the process of teaching, students' comprehensive quality training, can cultivatecomprehensive talent of software testing by enterprise love.

Key words: Software testing; test tool; test management; enterprise demand

自上世纪80年代,伴随着软件行业的发展需要,软件测试的基础理论和实用技术开始形成,经过三十多年的发展,软件测试在软件开发行业中的角色越来越重要,我们目前评价软件测试,它即需要工具和技术的支持,更需要有科学的管理体制,它既要保证软件能够健壮运行,又要保证软件的功能完全符合客户的需求,一个好的测试队伍,是软件开发必不可少的依靠,尤其是复杂的软件项目,开发和测试要亲如手足,才能保证项目的顺利进行。

目前高校的软件相关专业的毕业生,大约有1/5的人在5年之内从事过或最终从事软件测试相关的职业,这是一个相当大的比重,同时也反应出社会上对软件测试职业的缺口很大,众所周知,高等教育往往落后于企业的实际发展,这种“厚基础,宽口径”的办学宗旨已经盛行了很多年,当然,在许多专业领域,这种以不变应万变的培养体系是最明智的选择,但在计算机软件教学领域,因为这个学科的发展速度几乎超乎人类的想象,因此我们必须让学生在校园里感受到计算机企业中对计算机技术的需求方向,这样才不至于在学生走出校园时无所适从。软件测试职业的职位待遇稳步提升,而且其职业寿命要远远长于软件开发,从学生的职业规划角度来看,在高校进行软件测试中高级人才的培养是一条可行之路。

1 高校开设软件测试课程的必要性

事实上,在高校计算机教学体系中开设软件测试课程,并不单单是为了迎合企业的需求,软件测试是软件工程课程的延伸,是软件开发课程的补充,是软件管理课程的实践。

软件测试课程的基础学科涉及数学、计算机导论、软件工程、计算机组成、管理学和信息技术等,如果没有这些学科的支撑,软件测试无法深入学习。

软件测试课程的开设,对高校计算机软件专业的学生来讲,是有着非常大的意义的,目前很多大型的软件企业并不担心开发人员的招聘,而对熟练掌握软件测试技术和管理方法的高级测试人员求贤若渴,这一方向的职业缺口确实非常之大,究其原因就是目前几乎所有高校的软件相关专业都开设了软件开发从技术到管理的全套课程,而软件测试的相关课程几乎为零,这样的学生走出去,很难迅速掌握测试的理念,也无力制定宏观测试计划,不得不从测试行业最低端的测试员开始做起,这对于高校毕业生来讲这是一种人才的浪费,在高校的计算机课程体系加入软件测试内容已经迫在眉睫。

在任何一个行业,从业人员对行业的成熟度区分,是企业招聘首先要考虑的问题,我们经常在招聘信息中看到“有工作经验”这样的条款,在软件测试行业也是如此,一般给出5种分级:1级我们称之为用户级测试人员,这一级别的测试人员直接扮演客户的角色来使用软件,看是否能发现问题;2级是软件测试操作员,这类人群受过一定程度软件测试的专门训练,可以执行上级下达的具体测试任务;3级是软件测试技术员,这一职位人群有很多软件测试的经验,能够非常熟练的使用某些软件测试专门技术,能够设计测试用例;4级是软件测试系统工程师,他们具有相当广泛的计算机相关专业知识,熟悉软件开发,熟练掌握所有软件测试技术,并具有项目管理经验;5级是软件测试总工程师,总工程师负责管理整个软件测试项目,具有掌控全局的能力和技术。

高校软件测试人才的培养,其目标要向3级人才靠近,并且这些人才有向4级或5级成长的持续发展能力。

2 软件测试教学中需要重视的两个问题

2.1扭转重开发,轻测试的偏见思想

很多人轻视软件测试,认为软件测试无需具备很高的技能,是没有前途的工作,缺乏创造性,很多高校也存在重开发,轻测试的思想,学生在这种观点的熏陶下,也对测试工作存在偏见,其中对软件测试工作有三个认识误区尤为突出:首先,软件测试是软件开发完成之后才进行的,只是软件编码的最后一个阶段,其地位可有可无。其次,软件测试不需要具备很高的专业技能,工作乏味枯燥,不具创造性,最后,软件投入使用后一旦出现BUG,测试人员要负主要责任。

事实上,首先,一个好的软件测试团队,在软件需求分析阶段就已经开始测试了,开发人员理解的客户需求是否正确,要由测试人员监控和保证,测试工作和开发工作是并行的,尤其在软件项目开始的时候,监控和防范一个微小的问题或隐患,是为了防止软件成型后出现无法挽回的缺陷。其次,软件测试是一项综合技能能强的工作,运用测试工具的能力,与人沟通的能力,有效管理的能力,书写文案的能力等等,做好软件测试工作绝对不是想象的那么简单,而且一旦具备了综合测试的素质,将是受用终身的资本。最后,软件测试规范实施后,软件仍然可能出现BUG,这是开发和测试人员应该共同面对的现实问题,测试人员只能保证BUG越来越少,越来越不影响系统的健壮运行。

2.2强调管理与技术并重

软件测试的规范实施需要测试技术和管理方法两方面的支撑,如果不具备专业的测试技术,只能做一些简单的功能测试,如果不具备宏观管理计划的能力,只能处于被指挥状态进行片面测试的实施,现在软件测试真正缺少的是技术和管理兼备的人才,高校的学生素质非常适合软件测试高端人才的培养。高校的培养中,要让学生深刻理解,我们培养的学生不是只能低头做测试任务,而是要能指挥测试工作,这绝对不是件简单的工作,需要全面的技能和完善的人格,只有这样的人才,才能带领出出色的测试队伍。

教学中,增加实训环节,给学生安排丰富的实例和习题,最好采用实际软件项目的测试案例,让学生在学校感受到企业中一样的工作环境,并安排和企业中一样的测试岗位,让学生体会沟通和管理的必要,在独立处理问题的过程中激发学生的学习兴趣,促进理论和实践教学的结合,把对学生的应用能力的培养融汇于教学中。

3 软件测试专业课程设计的目标和原则

软件测试专业要全方位的培养和提高学生的基础理论、实践能力、设计能力、实践训练等综合素质。重视管理、人文、经济等知识的学习。

3.1软件测试专业课程设计的目标

高校软件测试培养目标要以市场为导向,培养具有一定的设计测试计划方案的、具有管理能力,能平衡整个测试项目各方面因素的软件人才,这些人才要具备软件开发的整体认识,能制定和执行测试,能利用测试工具完成一定测试任务。

本专业课程的重点包括:软件缺陷生命周期管理;软件测试基本概念的内涵;主流测试工具的应用;进行全面的系统测试的方法;注课程以实训为主,重动手能力的培养等。 具体课程要涵盖:熟练掌握至少一种数据库应用技术及一门软件开发语言;了解软件开发过程中软件测试的重要性;掌握主流的自动化测试工具;科学管理测试队伍。

3.2软件测试专业课程设计的原则

课程的设计要体现与时俱进的精神,以企业的实际项目为依托,主要原则包括:

1)开展项目教学,项目教学具有针对性、研究性、启发性和实践性等。项目的选择要知识涵盖全面,要能够激起学生的学习兴趣。

2)制定专业课程计划、课程大纲和教学方案等,课程计划提倡电子化、网络化和课堂教学并用,建设校企合作的专兼结合的教学团队,开设以项目为载体的教育大纲,用以指导课程教学工作的开展。

3)建立测试工程内容的课程结构模式,把真正的测试项目开展到课堂上来,或者让学生在学习期间进入企业进行岗前培训,充分安排工程实践,引进软件测试的工程师资格认证,同时逐步建立科学的工程教育检验和质量评估体系。

理论与实践并重,课程需要涵盖单元测试、集成测试、性能测试、功能测试与系统测试。注重设计和管理的执行过程。为学生创造可自由而主动的学习氛围。以学生为出发点,在软件测试中融会贯通大学里学习的软件相关课程,在项目驱使下培养主动学习的能力。采用分组讨论学习方式,结合实际项目,把学生组织为若干小组,在教师指导下完成工作。不断提升学校教师的专能,提供系统学习和阶段性培训机制。

4 总结

软件测试课程在高校的教学中,没有现成的经验和模式,需要我们根据行业的发展随时调整,以社会需求为导向,以培养行业

中高级人才为目标,以项目实训教学为依托,边进行边思考,逐步发展,逐步稳定,所以我们要以发展的眼光,灵活的策略来微调教学过程的细节,测试无处不在,高校进行软件测试的教学改革也是一种测试,只要我们采用严谨的工程控制策略,科学管理,总结规律,必然能取得高校进行软件测试课程探索的胜利。

参考文献:

[1] Ron Patton.软件测试[M].北京:机械工业出版社,2002.

[2] Myers G J.软件测试的艺术(中文版)[M].王峰,陈杰,译.北京:机械工业出版社,2006.

软件测试课程总结范文3

关键词:高等职业教育;课程设计;校企合作;软件测试

DOIDOI:10.11907/rjdk.162329

中图分类号:G434

文献标识码:A文章编号:1672-7800(2016)012-0197-03

0 引言

随着软件技术在社会各领域的广泛应用,人们开始越来越关注软件产品质量,软件测试作为软件质量保证的重要途径也因此受到行业领域的关注与重视,软件测试岗位的就业前景也变得越来越好。在《国务院关于加快发展现代职业教育的决定》中,提出“深化产教融合、校企合作”[1]。随着技术的发展、产业结构调整的不断加快,持久深入的校企合作已经逐渐成为高职院校课程开发质量的关键要素之一。

《软件测试基础》课程大多在高职院校的计算机类专业中开设,但是普遍存在着课程内容更新慢,教学方法、手段陈旧,课程评价考核单一的问题,导致学生学习兴趣不大,学习效果不佳。该课程在苏州健雄职业技术学院是软件技术专业的一门专业基础课,该院与上海博为峰软件技术股份有限公司、上海泽众软件科技有限公司等从事软件测试的IT企业紧密合作,对课程进行了一系列建设和改革,培养了一大批软件测试人才,受到企业的一致认可。

1 以工作过程为导向的课程设计

课程组成员结合计算机等级考试、计算机软件专业技术资格考试和国际软件测试资质认证(ISTQB)的考试大纲,以及行业、企业对软件测试员的人才需求,与企业专家共同确定本课程的目标为:使学生了解软件测试的发展前景,掌握测试的基础知识,了解测试用例的概念、意义;能够搭建测试环境,掌握常用的黑盒、白盒用例设计方法,能够进行简单的手动功能测试并撰写测试报告与缺陷报告;了解常用的自动化测试工具、性能测试工具,理解测试工具的原理,了解测试管理的概念与流程等。

本课程以软件测试工程师的工作过程为导向,按照软件技术专业培养目标与高职学生的特点,将测试基础知识、相关技术方法、测试管理贯穿在整个测试流程中,从而构建测试各阶段所需的知识与技能。在课程中以“虚拟公司”作为组织形式,在运作过程中充分体现职业教育行为导向和职业性原则。行为导向,即创造师生互动的仿真情境,使学生通过自主协作式学习方式,反复操练,从而形成符合企业要求的行为方式和职业能力。职业性原则,即要求实训目标和就业目标高度一致[2]。学院与企业共建实训平台,通过具体工程项目及案例素材,使用测试管理工具从测试需求建起,测试模块划分、测试用例设计、测试用例执行、缺陷管理,加强学生对测试管理工具的使用。

2 以工作项目为载体的学习情境创设

《软件测试基础》课程最好在第三学期开设,因为这时学生对软件行业已有一定了解,并已具备初步的编程经验,课程共计64学时。依据软件测试的工作过程可以将课程划分为6个学习情境,共15个工作任务,具体如表 1所示。

学习情境1中主要让学生认识缺陷并知道缺陷产生的原因,掌握软件测试的定义、目的、分类和原则,熟悉V模型、W模型、H模型等软件测试的常见模型;熟练掌握软件质量模型的分类和各个评价指标,并明确软件质量与软件测试之间的关系;会查询互联网中的招聘信息,分析软件测试工程师的岗位职责及发展路径,并尽早做好职业生涯规划。

学习情境2中让学生能够明确软件测试的依据,并阅读需求规格说明书,理解测试需求的概念,会对测试需求进行挖掘;能够理解测试计划的重要性,知道测试计划的一般组成要素。

学习情境3中让学生能够理解黑盒测试、白盒测试、灰盒测试的基本概念及它们之间的区别与联系;能够灵活地运用黑盒测试的常用方法,如等价类划分、边界值、决策表、因果图、场景法、正交表等来设计测试用例;能够灵活地运用白盒测试的常用方法,如逻辑覆盖法、基本路径法等设计测试用例。

学习情境4中让学生学会测试环境的搭建,如在虚拟机中部署PHP、JSP、.NET等应用程序;理解单元测试、集成测试、系统测试、验收测试的概念及基本流程,熟悉集成测试的策略,能够使用JUnit 等工具来开展单元测试;能够掌握缺陷的概念,会正确记录缺陷,掌握缺陷报告的基本格式与内容。

学习情境5中要让学生理解测试总结的意义和重要性,并了解测试总结报告的格式与内容。

学习情境6中能让学生掌握手动测试与自动化测试的区别,了解自动化测试、性能测试等工具的原理,初步掌握脚本的录制和参数的设定,为后续课程的学习奠定基础。

3 “互联网+教育”方式的课程改革深化

3.1 利用雨课堂平台实施线上线下混合教学

合理运用互联网新技术,由传统教学向线上线下混合式教学方式转变,打破以往学生学习时空的限制,按需学习,让教育教学资源得到最大化共享。由于本课程概念较多,课程学习后还需通过工信部的考证,线上教学教师通过清华大学研制的雨课堂平台将PPT课件、微课、测试等资料上传至云空间,并推送到学生的移动终端上,督促学生做好预习、复习工作,学生所有的学习行为数据均被自动完整采集,有助于量化了解学生学习效果并把握学生学习轨迹[3];传统的线下面授,则重点解决学生的疑难困惑问题,提高教学效率。

3.2 改进教学方法提高学生学习兴趣

软件测试课程总结范文4

Abstract: With the increasing complexity of software engineering, software engineering quality requirements continue to improve. The teaching of the traditional software testing course can't meet the needs of the times. From the traditional software testing experimental teaching, aiming at the existing problems and the overall objectives of the experimental teaching requirements, this paper explores the significance of project driven software testing and experimental teaching reform, which with reasonable distribution of the curriculum system, the distribution of appropriate experimental content, can meet the requirements of personnel training program.

关键词:软件测试;项目驱动;实验教学;教学改革

Key words: software testing;project driven;experimental teaching;teaching reform

中图分类号:G642.0 文献标识码:A 文章编号:1006-4311(2017)03-0226-03

0 引言

软件测试在很早以前就是软件工程里的一个课程。但近几年来才被国内的软件行业及软件公司所重视。因而出现需要大量软件测试人员的需求。所以国内的很多高校因市场的需求,开设了相关的软件测试专业或方向。但很多学校的开设的软件测试的课程只停留在基本理论的学习,或者测试工具的介绍上,以至于毕业出来的学生只能满足最底层的测试工作。而较高要求的测试岗位很难招到人。所以培养“高素质、复合型”的软件测试人才,是学校的当务之急,软件测试的教学改革势在必行[1]。

1 传统测试课程教学存在的问题

教学课时少,课程结构单一。传统软件测试是以软件工程原理的一个章节来讲的。讲课的课时也就4个学分。老师授课只是对测试基本的概念及流程作讲解,内容偏重理论且抽象。学生理解和掌握难度比较大,在实际测试工作中无法入手。现如今对软件测试的工作越来越重视,对软件测试的工作要求越来越高。如此单一教学内容,让学生今后胜任软件测试的相关工作是不现实的。

重理论,轻实践。传统软件测试课程的教学一直以任课老师讲授以主,学生被动接受知识,在理论的教学过程中,授课老师重点讲解软件测试的基本概念、原理及方法。但软件测试的相关课程在实践方面要求有较强的动手的实践能力。如在讲解黑盒测试、白盒测试中的测试方法来设计测试用例时,实际使用过程中需要结合多种方法来保证测试用例的完整性,这需要引入实际的生产案例来练习。再如在讲解单元测试、集成测试时,在讲解单一类的测试、容器内的测试、数据库持久层的测试时,如果老师在授课时只是讲理论,没有引入实际的生产案例,学生很难体会到课程的挑战和乐趣,缺少主观主动性,学习效果较差。这样的教学质量难以保证,学生很难学以致用。

2 项目驱动教学的内涵

“项目教学法”最早见于美国教育家凯兹和加拿大教育家查德合著的《项目教学法》。“项目教学法”的理论认为:知识可以在一定的条件下自主建构获得;学习是知识、技能与行为、态度与价值观等方面的长进;教育是满足长进需要的有意识、有系统、有组织的持续交流活动。教育家陶行知先生说过:教、学、做应是一体化的,教、学、做是一件事,不是三件事[2]。

项目教学法由以下内容组成:有一定的教学内容,具有实际应用价值;能将理论知识和实际岗位技能结合起来;与企业实际生产或商业经营等活动有关系;学生可以独立制定计划并实施;学生可以运用所学知识克服、处理在项目工作中出现的困难和问题;有一定的难度,学生在完成过程中能掌握和运用新的知识和技能;要渗透情感、态度、价值观的培养;有明确而具体的成果展示,师生能共同评价项目完成情况和工作成果[3][4]。

3 项目驱动的软件测试实验教学的意义

以软件行业发展需要为依托,面向软件开发(敏捷开发)过程中对软件测试人才的迫切需求,以提高教学质量为核心,以教学改革为动力,以实现软件开发与测试的学生知识、能力与素质协同发展为原则,以培养学生实践能力为目标,结合学科优势,以主干课程建设为突破点,开展项目驱动软件测试实验教学改革与研究,构建和实践面向应用型本科软件测试人才的专业实验教学体系。具体的意义可归纳为以下四点:

①优化测试相关专业主干课程体系,打造以项目驱动软件测试实验教学的专业特色。测试相关主干课程体系优化与专业课程实验教学改革是项目的核心。专业主干课程体系的建设能直接反映专业课程建设的目的和培养目标,是提高人才素质和保障教育质量的核心环节,也是衡量教学水平和教学质量的重要标志[5]。因此,面向软件工程和软件实践背景,开展“项目驱动软件测试实验教学”,对于丰富和完善软件测试课程教学改革,培养适应软件测试行业中“高素质,高要求”的复合型、应用型管理人才,打造学科专业特色,形成学科专业竞争力,具有重要价值。

②以主干课程教学组织与团队建设为着手点。制定主干课程建设的方案和措施,通过课程示范作用,带动本专业相关其他课程的建设与改革。狠抓主干课程教材的选用与编写、教学大纲的制定、应用案例的编写、教学内容的精选、教学手段与教学方法的改革等环节,夯实了主干课程建设的基础,并为该专业今后教学改革奠定基础。

③以点带面,扩展软件工程专业实验教学体系。通过在主干课程中适当引入综合性实验、设计性实验、软件工程案例分析,可加强学生的实践技能、创新意识和团队精神的培养,提高学生的综合运用能力和竞争力。从长远来讲,这项成果会进一步提高我校该专业的人才综合素质, 进一步提高该学科专业综合竞争力。

④扩大毕业生就业率及提高就业档次。通过该项目的建设,希望能推动该学科专业课程体系的优化,改善广州大学该专业本科学生的知识结构,提高软件测试学生的综合素质和专业技能,扩大毕业生就业率及提高就业档次。

不管是站在专业学科建设的角度,还是站在学生培养的角度,从培养“高素质、复合型”的软件测试人才、解决学生就业的目标来看,教学改革研究均具有重要的意义,有必要开展系统、深入的研究。

4 项目驱动的软件测试实验教学改革方案

以培养“高素质、复合型”的软件测试人才为目标,以专业主干课程体系优化主干课程教学团队,强化主干课程配套的实践教学环节,构建了理论教学和实践教学相结合的、 “测试理论+测试方法+测试工程”三位一体的主干课程培养体系,并开展长期的跟踪实践,努力在应用型创新人才培养模式上形成自身的专业特色,完善“强基础、重能力、多样性、个性化”的人才培养方案。

4.1 软件测试的课程体系的建立

随着软件行业对软件测试重视,软件测试对从业人员的要求也越来越高。传统的教学内容已经不能满足就业人员的需要。需对软件测试的课程体系进行扩展、优化。如图1软件测试教改实践课程体系所示。

软件测试基础:本课程从理论和实践两个层面引导学生学习软件测试的基础知识,涵盖软件测试的思想、流程和方法,主要内容包括软件测试的基本概念和基本原理、白盒测试方法、黑盒测试方法以及面向对象软件测试等知识点。

高效单元测试:课程以最典型的单元测试框架JUnit为例讲述了单元测试的方法和最佳实践,介绍了在java软件开发中使用junit进行测试的原则、技巧与实践,深入阐述如何编写自动测试。课程讨论了实践中的测试技术,主要内容包括:用mock objects进行隔离测试、用ant和maven进行自动构建、Cactus进行容器内测试的方法、对java应用程序、数据库应用程序等进行单元测试,以及Parasoft Jtest的使用。

WEB项目应用测试:由浅入深、全面、细致地阐述了如何使用开源测试工具来完成Web自动化测试,便于学生轻松掌握Web自动化测试的原理、方法和实际操作。课程将教如何使用Selenium、WebDriver、Jmeter、Badboy搭建起一整套稳定、高效、低成本的自动化测试平台。结合应用实例展示web应用项目测试的过程。

软件测试质量与保证:软件测试质量与保证是面向软件测试方向一门专业必修课,在学习软件测试基础理论与技术的基础上,加强对软件质量的认识及质量保证的重视,主要从软件质量的概述、软件质量工程体系、软件质量度量、软件可靠性测试、软件质量标准、全面质量控制等多方面展开对软件质量保证的深入学习。

性能测试与优化管理:从测试项目实战需求出发,讲述了性能测试技术和软件性能测试工具应用的实战知识。引入项目案例,详细讲述性能测试方案实施、性能测试计划制定、性能测试用例设计、性能测试脚本开发、性能总结、性能优化管理及相关交付文档。

软件测试综合项目实训:本课程综合应用软件测试方向各门专业课程,以一个实际案例贯穿整个教学过程,使学生对软件测试的过程有深刻地理解,包括测试需求的获取、制定测试计划,设计测试用例,测试执行、测试缺陷、测试评估及报告,并在实训过程中加强对团队协作的体会及文档的协作能力。

移动应用程序测试:本课程将从实际应用角度出发,以智能终端和4G业务规划为基础,介绍手机测试的方法和实践技术,主要内容;手机设备软硬件的现状与趋势,手机软件测试用例设计技术与方法,手机软件体系结构与手机软件测试技术和常用测试工具。

4.2 项目驱动实验教学的实施方针

由于课程深度的不同,项目驱动实验教学的方针与过程也不同。其主干课程项目驱动实验教学的实施方针如下:

《软件测试基础》由于是基础课程,课程涉及的基础概念比较多,且为低年级的学生。所以实验教学的案例要以单独、经典的小应用实例为主,以巩固和强化理论知识为目的。

《高效单元测试》软件测试专业课。课程涉及代码级软件测试方法与技术。课程从应用程序的角度可分为三个方面的单元测试:表示层单元测试、运用层单元测试、数据层单元测试。从这三个方面再拆散成若干个小实验以便对应相应的理论知识。在实验案例选择的原则要以高年级完成的课程设计或毕业设计为主,其原因是这样的项目实例学生能更好的理解,上课的更有效果。

《WEB应用项目测试》软件测试专业课。课程主要讲解Web自动化测试的原理、方法和实际操作及测试工具的使用。在项目驱动实验教学实例的选取了一些比较完善并同学比较熟悉的系统,比如学院的信息管理系统或学院的邮件系统。学生对这些系统的业务比较了解。做自动化测试比较容易上手。

《软件测试综合项目实训》是一个以实际案例贯穿整个教学过程,以学生为主,教师为辅的综合项目实训课程。在实验教学的实例选取上要求要接近企业的工作要求。所以项目组在设计用例时,直接向相关校企合作单位,要来需求和被测项目,并设计成实验教学,以便学生在最接近现实的环境中作项目实训。

《移动应用程序测试》软件测试选修课。课程主要讲解移动测试的原理、方法和实际操作及测试工具的使用。在项目驱动实验教学实例的选取上,把学校组织参加比赛的移动应用项目拿来测试,这个项目影响较广,学生对业务比较了解也比较。

5 小结

如何正确处理系统性理论知识体系与学生实际能力培养之间的矛盾?其解决的基本途径是:重视实际能力培养,强化软件测试工程案例教学,重视课程配套的课内课外各种实践教学,强化学生人文素质培养。只有这样,才能解决学生专业知识面过窄、适应能力差、满足不了高要求的根本问题。如何搞好主干课程体系建设和主干课程师资队伍建设,其解决的基本途径是:以测试相关主干课程和教学团队建设着手点,建立完善的主干课程体系,发挥主干课程的带动效应,可达到以点带面效果,解决课程教学内容不先进、教学方法单一、教学手段落后、教师业务能力不强等问题。

参考文献:

[1]宰光军,任两品,刘燕.复合型软件测试人才培养模式的探索与创新[J].计算机光盘软件与应用,2012(20).

[2]张世泽,刘同先,丁升选,吕淑敏.浅议项目教学法在我国的发展、应用和建议[J].教育教学论坛,2014(50):168-169.

[3]郑春瑛,郭伟青.项目教学法在管理信息系统课程中的应用探讨[J].中国职业技术教育,2007(22).

软件测试课程总结范文5

关键词:高职院校;软件测试;教学改革

中图分类号:G64 文献标识码:A 文章编号:1009-3044(2014)34-8215-02

软件企业已经逐步从“手工作坊”式的运作模式发展为工程化开发,企业的规模和管理水平不断提高。截至2014年9月底,累计信息产业部认定软件企业达到9968家,登记的软件产品达到20192个。目前,通过CMM2级以上的企业超过了100家。其中,通过3级的有50多家,通过4到5级的有9家[1]。基于面向产业化、规模化和标准化方向的转变,软件企业需要大量软件工作者从事基础工作。软件生产如同传统产业的流水线作业,需要大量软件测试人员按照规范测试整个工程。一名合格的软件测试工程师,不仅仅要有扎实的测试基础,更需要具备进行自动化测试的能力。针对这些第一线从事软件测试的应用型人才的培养,主要通过高职计算机专业教育。

在我国,大部分的高职院校都开设了计算机科学与技术专业,在这些高校的专业培养计划与方案中,基本都设置了《软件测试》课程[2]。通过《软件测试》课程的学习,使学生了解软件测试领域的基本职业活动,掌握软件测试的技能以及相应知识,培养学生较强的逻辑思维能力以及动手能力。对高职学生而言,这样的课程设置无疑明确定向未来的职业角色。然而目前,在软件测试教学开展中仍然面临大量实际问题需要相关教师来关注和解决。笔者结合近年来的教学实际,就高职院校《软件测试》课程的教学中存在的问题进行一些研究与探讨,提出了教改思路,并给出了一些实际的改革方案,以期提高软件测试的教学水平。

1 课程教学中存在的主要问题

对高职《软件测试》课程培养侧重,主要在于尽快让学生接触软件测试的基本职业活动,缩短了学生进入职业角色的适应期。然而,事与愿违,目前大学软件测试教学中存在很多问题:

1.1教材

目前市面上涉及软件测试方面的教材质量良莠不齐,种类繁多。大部分教材知识结构不够合理,偏重理论,测试工具方面实验指导内容普遍偏少,可操作性差。测试实例设计存在不规范性,测试项目多为简易应用程序,距离实际项目差距很大。

1.2重开发轻测试

软件测试课程多为计算机专业必修课,但是学生普遍存在重开发轻测试的偏见。很多学生认为软件测试就是简单的找茬,一项纯粹辅助软件开发的工作,技术要求低,内容简单重复,效率低。

1.3重理论轻实践

软件测试课程需要将理论和实践两个部分紧密结合起来,而且实践性较强。然而,教学过程中知识结构往往不够合理,对实践的重视程度不够,缺乏具体的实践操作指导。高校计算机教师通常侧重基础理论知识,忽视测试自动化和测试管理等相关高级层面知识,很少为学生提供较完整的测试项目实操方面的知识。

另外,课程最后的考核方式往往采用闭卷考试形式,考核内容侧重零散的基础理论知识点,而无法体现综合的测试实操能力。这样无疑导致学生对软件测试课程形成“重理论轻实践”的错误看法。

1.4测试案例单一,重功能测试轻其他种类测试

在实际课程教学过程中,测试系统简易单一,不是图书馆管理系统,就是学生作业难度的电子商务网站。学校往往缺乏时下的测试项目实例。测试项目大多属于公司内部资料,获取不易,不像通用应用程序一样可以随意搜索。

通常的软件系统测试不仅仅需要功能方面的测试,而且还需要很多其他种类的测试工作,比如性能测试、安全测试等,这类测试难度往往高于功能测试。然而,教学过程中的软件测试实验,往往集中在QTP等软件测试工具的简单录制层面,缺少系统的性能等其他种类测试的实操和分析能力,导致学生产生“软件测试等于功能测试”的错误认识。

1.5自动化程度低

一名合格的软件测试工程师,不仅需要掌握基本的软件测试技能,而且必须熟悉主流的自动化软件测试工具。然而在教学过程中,自动化测试工具往往作为锦上添花的教学内容,只教授简单的使用知识。学生对各类测试自动化工具明显掌握不够,测试脚本编写能力不足,测试自动化程度低,进而测试效率也必然很低。这样不具有分析能力和创新意识的学生,必然不具有职业竞争力。

由以上分析可见,我们必须对测试课程加以改进。只有这样,才能使得软件测试课程更加符合满足现实职业需求的发展需求,促进学校计算机相关专业的快速发展。

2 教学改革方案

多年来高职学生的软件测试课程现状不容乐观,各式各样的教学问题需要引起重视。针对我院学生的软件技术水平及现有教学存在的弊端,笔者根据多年教学实践和思考,就教学改革提出以下措施。

2.1 开课阶段选择

就原则而言,C语言、面向对象程序设计等编程课程是软件测试课程的先修课程。高职院校通常选择在第二学年开设该课程,这是因为学生已经经历过了相关程序设计课程,编程能力和专业理解能力已经有了一定的基础。建议根据学生的情况,提前对学生进行软件测试理念的灌输。例如在相关程序设计课程中,要求学生对教材程序示例和习题进行测试,并且对测试用例进行点评。同时即可挑选一些综合素质程度较好的学生提前学习。面向这些低年级学生,学习兴趣较浓厚,重点介绍软件测试入门知识,可以适当降低软件测试理论难度,引导进行自动化测试。

2.2教材选择

就高职学生而言,他们的计算机专业基础相对薄弱,很多同学对软件测试课程存在偏见。在教学过程中,建议选择使相对直观且简单、理论性略弱,操作性较强的教材,以便教学难度适中,提高教学的质量。另外,教材不要单纯是枯燥的理论阐述,最好搭配丰富的图表和多样的例题,激发学生的学习兴趣。

另外,建议不要恪守教材,应该尽量量体裁衣。根据专业培养方向的不同,选择不同的教材内容和授课方式。例如就软件方向学生而言,补充实用性的技术,例如强调一些针对某种具体语言的专业测试工具。

2.3引导学生正确认识软件测试

如前面所述,学生对软件测试职业存在很多偏见,需要教师对具体问题具体分析,给予学生正确引导。例如针对很多学生反映“软件测试不如软件开发”的问题。教师应将软件测试和软件开发职业现状进行对比分析。从事软件开发职位的人员往往需要某种具体编程技术,而且不轻易改变。发展趋势是要求人员技术逐步深而精。于此对照,软件测试职位则要求人员技术广而泛。测试人员往往需要完成产品线上多个子产品的测试工作,测试范围涉及文档、代码、平台环境等多个对象。后期,功能测试工作一般要求自动化,而且需要开展性能、安全等多种测试项目,工作挑战性和难度并不逊色于软件开发。

另外,教师可以授课过程中,适度介绍就业前景,引导学生多关注软件测试行业的发展动态,建议学生访问例如CSDN、51Testing技术论坛,使学生了解与国际前沿同步的知识。总之,让学生摒除偏见,明晰软件测试行业的职业要求和个人发展空间,进而激发学习主动性,提高职业认知程度。

2.4适度选择理论教学内容,合理安排实践教学进程

在软件测试课程授课过程中,我们探索应用型课程结构,使软件测试实现“理实一体化”课程。在教学内容上加以调整,适度选择理论教学内容,以软件测试基本理论为基础;与此同时,合理安排实践教学进程,重视培养学生实操能力。整个教学过程分为理论讲授、上机实验、实训三个部分。全课平时课时64学时,每周4课时,前两个课时授课,后两个课时上机,理论授课与上机实验穿插同步进行,两者相辅相成;学期期末设置为时一周的实训,以期达到理论与实践紧密结合的教学效果。

首先,课堂教学打好理论基础,主要介绍软件测试基本概念、各种测试技术和方法、测试用例的设计、软件测试项目的组织和管理等相关知识。讲授过程中,向学生案例教学,组织学生讨论测试方案;其他类型的测试,与功能测试并重。根据时下软件测试发展趋势,选择主流工具进行讲解,掌握软件的使用,简要介绍其他工具。整个软件测试课程分为10个学习单元,授课安排详见表1。

通过上机实践,重视实际操作能力的培养。首先,安排一些基础实验,仅限简单操作性范围,设计与教学相配套的上机实验内容,包括白盒测试、黑盒测试等。这样帮助学生掌握测试的基本方法,加深对相关基本概念的理解。之后,遵循尽量接近行业使用的原则,适度选择主流的自动化测试工具实验。另外,安排性能测试工具上机实验,引导学生分析测试结果,提高其解决性能问题高含金量技能。相关自动化测试工具和重点知识点的使用详见表2:

2.QTP检查点

3.QTP数据驱动\&2\&性能测试工具\&1.LoadRunner的使用

2.负载数据分析\&3\&C#程序单元测试\&1.VS2010环境下单元测试\&4\&Java程序单元测试\&1.Junit的使用\&5\&C程序单元测试\&1.Cunit的使用\&6\&Selenium的使用\&1.Selenium测试脚本的录制回放

2.Selenium+Junit的使用\&]

实习在学期末集中进行,为时一整周,培训学生对各知识点的综合应用。将学生编为几个小组,按行业实际将他们分配角色,选择一个实际的软件测试项目来开展测试工作。该过程中,强调学生的测试专业技能,让学生掌握各种测试方法的实施,熟悉测试项目的工作流程。另外,现在我国软件测试业务已经扩展到各个行业的软件系统,学生在校期间只能接触通用软件系统。未来能够通过校企合作,扩展测试对象,希望能够引进结合地方经济、具有行业特色的软件系统,让学生实操测试技术。

2.5作业和考核方式

软件测试课程实践性较强,为了更加明确学习目标,激发学生学习热情,建议采用更加灵活的作业,比如在课后设置思考题。课程考试方式可以改革为报告形式,要求学生对某项流行软件产品提供测评报告。

2.6 积极开发校外实习实训基地

为了增加学生的工作经验,我校积极开发与软件测试相关的校外实习实训基地。近些年来,高校计算机专业就业情势不容乐观,计算机相关校企合作工作难度不小。但是出于深化软件测试课程改革、切实提高学生就业率和测试行业相关率,在院系领导的努力下,与酷派、丝路等软件公司建立实习实训基地。学生通过进入工学交替的实习实训岗位,参与到企业项目测试实践过程中,切实提升学生实操能力,逐步成为技能型人才。

3 结束语

软件测试行业的发展,给软件测试课程带来了机遇和挑战。针对软件测试课程的现状进行了分析,提出了教改思路并给出了一些实际的改革方案,力求切实提高学生软件测试实操能力,以期提高软件测试的教学水平。

参考文献:

[1] 20年中国软件大盘点万家企业60万从业人员[EB/OL]. .

[2] 杨鹏. 高职软件测试课程的教学探索与实践[J]. 番禺职业技术学院学报,2005(2).

[3] 杨鹏,贺平. 高职软件测试专业的构件与探索[J]. 教育与教学研究,2008(2).

[4] 王利娥,朱新华,李智. 项目驱动下的《软件测试》课程立体教学模式的研究与实践[J]. 中国科教创新导刊,2013(1).

软件测试课程总结范文6

关键词:软件测试;专业课程;教学方法

中图分类号:G424.21 文献标识码:A 文章编号:

1、引言

软件测试是软件开发过程的重要组成部分,是用来验证一个程序的品质或性能是否符合开发之前所提出的一些要求。软件测试的目的有三个:一、确认软件的质量,一方面是确认软件是否做了你所期望的事情,另一方面是确认软件是否以正确的方式来做了这个事件;二、提供信息,包括提供给开发人员或程序经理的反馈信息以及为风险评估所准备的信息;软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。如果一个软件产品开发完成之后发现了很多问题,说明此软件开发过程很可能是有缺陷的。因此软件测试的第三个目的是保证整个软件开发过程是高质量的。

现在许多软件企业开始重视软件测试,越来越多的软件技术人员开始投身测试行业。在一些大型软件公司里,软件测试甚至比开发投入的资源还要多。目前,国内的软件测试人员大多数还停留在简单、重复的黑盒手动测试阶段,软件测试人员也常常觉得自己所从事的工作和计算机技术关系不大,只要了解产品的业务逻辑就可以完成工作。这也导致很多测试人员对本身的工作失去兴趣。近年来自动化测试技术逐渐进入软件测试人员的视野。通过对比,人们逐渐发现:软件测试和软件开发一样具有挑战性、有技术含量。开发人员有自己的开发工具,软件测试人员同样也有像QTP、LoadRunner、Rational Robot等测试工具;开发人员有例如Java、C#等语言来编写代码,测试人员也有测试专用的语法来编写脚本、调试脚本;开发人员生产出来的产品可以为企业直接创造效益,测试人员通过质量手段防止更多的缺陷遗留给客户。因此软件测试再也不是一般非专业人员所能够胜任的,而是和软件开发一样具有技术含量、前景美好的技术。

2、理解基本概念,理清知识脉络

软件测试的主要工作内容是验证和确认,在此要注意理解验证和确认的概念,验证是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。对于这个概念,可以举一些日常生活中的例子说明。确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程;程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程;评市、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。确认是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性,即保证软件以正确的方式来做了这个事件。其中静态确认,不在计算机上实际执行程序,通过人工或程序分析来证明软件的正确性;动态确认,通过执行程序做分析,测试程序的动态行为,以证实软件是否存在问题。

学习全面的软件自动化回归测试流程最好要有一定的开发基础,另外最好对软件工程中的质量体系、配置管理、度量管理有所了解和认识。例如理解回归测试,要懂得回归测试的策略,要知道为什么要进行回归测试,进行回归测试有什么好处等等,只有这样,才能真正理解回归测试的含义。

3、善于运用启发式教学

启发式教学是指教师在教学过程中根据教学任务和学习的客观规律,从学生的实际出发,采用多种方式,以启发学生的思维为核心,调动学生的学习主动性和积极性,促使他们生动活泼地学习的一种教学指导思想。这不仅是教学方法,更是教学理念。

运用启发式教学,要尽量引导学生主动学习,适当进行启发、指点,而不能简单地灌输。例如,在讲述商业案例中,首先讲解了商业案例的定义,确定业务的需要,然后讲述在成本和收益方面调整自动化,最后讲述评估ROI。紧接着是自动化测试的总节省,在此,我并没有马上展开讲述不同类型的时间节省,而是让同学们自己先想想,利用自己的知识展开讨论,可以进行3个同学分组讨论,然后分别叫不同的组回答讨论的结果,结果讨论的结果都不是很理想。这时,我继续讲解自动化测试的总节省,测试环境建立的时间节省以及测试开发的时间节省等等,学生通过听讲,他们感到印象特别深刻。另外,对于某些知识点,要采取对比的方法,以求消化。比如,测试开发的时间节省、测试执行时间的节省、测试评估/诊断的时间节省这三个时间节省的概念,有哪些相似点和不同点,通过对比学习,学生反映良好。最后,启发式教学离不开讨论,讨论可以加深对问题的理解,它不是简单告诉答案,而是指引他们往正确的方向思索。学生们反映交互式、讨论式与单向灌输式的教学方法最大的差别是“我们都很紧张,思想不敢开小差,不知道老师什么时候提问,不知道会问什么问题,不知道会不会问到自己。”

4、培养学生自学能力

法国教育家第斯多惠指出:“一个不好的教师奉送真理,一个好的教师则教人发现真理。”这句话足以说明老师不但要传授知识给学生,更重要的是让他们能自主学习。当我讲解测试自动化软件测试框架时候,我只是讲完了验证ASTF是否满足特定需求,功能是否表现如预期那样、对所有ASTF相关工作,包括设计、开发以及相关测试用例进行同级评审,还有作为软件开发生命周期一部分的同级评审以及评估所有ASTF软件时候,剩下的评审测试用例留给学生自己自学。刚开始时,学生还不习惯,部分人根本没有去自学,为了让他们养成这一良好习惯,上课时我经常会提问需要学生自学部分的问题,比如评审测试用例的概念和主要思想等,并把他们的回答作为平时成绩对待,结果,绝大多数学生开始重视,并按照老师的要求积极去图书馆或网上查阅资料。后来,学生们反映,其实测试用例中的内容并不是想象中的那样难。自学能加深他们对课本内容的理解,能开阔他们的视野,可以提高学生解决问题的能力,实现创新人才培养的教学目标。

5、结束语

本文从实际教学的角度出发,探讨了《软件测试自动化》课程的几点教学方法和体会,当前,除了课堂学习外,建议学生可以充分利用网络资源学习。另外我们要不断吸收其他优秀老师的教学经验,并注重个人平时的积累和创新,逐渐形成个性化的教学风格。我们相信,通过老师和学生的共同努力,《软件测试自动化》的课程一定能讲得更好,学生也一定能学得更好。

参考文献

[1] 张克东.软件工程与软件测试自动化教程[M].北京:电子工业出版社,2010

[2] 李秉德 教学论[M] 北京:人民教育出版社,2005

[3] 赵斌.软件测试技术经典教程[M].北京:科学出版社,2007

[4] 王立峰,延伟东等.软件工程理论与实践[M].北京:清华大学出版社,2010