APP下载

项目驱动教学法在《软件测试》课程中的应用

2012-01-27

中国科技信息 2012年21期
关键词:软件测试测试方法驱动

郭 娟

安徽理工大学理学院,安徽 淮南 232001

项目驱动教学法在《软件测试》课程中的应用

郭 娟

安徽理工大学理学院,安徽 淮南 232001

在软件测试技术强调实践性和课时不足情况下,提出将项目驱动教学法应用于软件测试课程的思想。介绍了在软件测试课程中应用项目驱动教学法的基本思想、课程内容的划分和项目的设置以及项目实施效果评测等内容。项目驱动教学法不仅有效提高学生对知识的综合应用能力,也提高了教师对课程的掌控能力。

项目驱动;软件测试;教学法

引言

“软件测试”是进入2000年后才被国内逐渐关注的一门课程。2002年国家信息产业部在软件产业发展公报中列举了我国软件业发展的三大问题:“随着国内软件企业的发展壮大,国内软件企业也在开始开拓海外市场。但是由于缺乏有自主知识产权的拳头产品,同时又缺乏较强的项目分析和设计经验,对国际市场信息、先进软件的设计、开发方式缺乏了解,大多数没有完善的质量保障体系,对软件开发过程缺乏有效地管理体系,缺乏严格的质量认证和规范化管理,不能与国际标准接轨,这些都构成了软件出口的重要障碍”[1]。软件测试的根本任务是确保软件能够按时按质量提交,是软件质量保证的手段。随着政府和企业对软件测试重要性认识的逐步提高,软件测试从以往那种处于末端不为人知的状态,转而成为企业全部生命周期中的一个重要组成部分。市场对软件测试人才的需求量也很大。因此,广大高等院校的计算机相关专业普遍开设了“软件测试”这门课程。

“软件测试”课程的任务是使学生掌握软件测试相关测试方法和技术、软件测试的组织和管理以及软件测试团队的组成和建立。“软件测试”课程具有很强的实践性和灵活性,学生只有充分参与实践才能熟练掌握基本的测试方法,才能了解软件测试的具体流程,只有通过实践才能锻炼学生灵活应用知识和解决问题的能力。目前,课堂教学加上机实验仍是“软件测试”教学的主要手段,其中,课堂教学为主,上机实践为辅。随着教学改革的不断深入,“软件测试”课程的课时不断被压缩,导致的现状是:学生只是学习了基础理论,而缺乏对知识的综合应用,对软件测试流程和组织管理没有清楚的认识。项目驱动教学法,是德国职业教育在20世纪80年代开始大力推行的一种“行为引导式的教学形式”。项目驱动教学法

是通过组织学生参加项目设计(包括模拟项目)、履行和管理,在项目实施过程中完成教学任务的过程。它是一种以现代企业的行为为目标,强调对学生综合能力作全面培养的一种教学方式。项目驱动教学法显著的特点是“以项目为主线、教师为实践的向导、学生为实践的主体”。项目驱动教学法是随着建构主义思潮的兴起而发展起来的一种新型教学模式和学习方法,近几年逐渐被国内外教育领域所采用,对软件测试课程的教学实践具有一定的革新意义。

1 项目驱动教学法在软件测试课程中的实施

软件测试过程与软件开发过程是相互依赖,相辅相成,紧密联系的。通常的软件开发和软件测试周期都比较长,问题比较复杂,软件测试的项目教学不可能完全模拟这一过程。在具体的教学实践中,教师需要充分了解课程内容,以及内容之间的关联,将软件测试过程分解,根据不同阶段的任务,设计相应的项目教学方案。在不同项目方案实施的过程中,学生不但可以系统学习基础理论,将理论知识应用于实践,逐步提高学生自主学习知识和应用知识的能力,而且对软件测试过程有初步的了解和印象,体验团队协同工作,为将来正式的工作打下基础。由于软件测试周期性较长和课时的限制,项目驱动教学法的实施过程要设置详细的实施计划和标准。

1.1 软件测试课程内容的划分和项目的设置

项目的设计要结合具体的课程内容。内容划分得当,教师才能做到有的放矢,有效降低讲授时间,调动学生自主学习积极性并有针对性地掌握和实践相关知识。教师的主要任务是项目的准备,项目分析和知识点讲授。

软件测试相关教材版本繁多,每一版的内容组织不尽相同。由于软件测试不同阶段侧重的知识点有所不同,不同的软件测试目的也会涉及不同的内容,因此。软件测试内容可以依据软件测试的不同阶段和测试目的不同进行划分。总体上使学生先建立软件测试流程的框架,在各测试阶段的实践中逐渐丰富内容,加深理解。

软件测试的初始阶段,主要对需求分析和总体设计阶段的工作进行测试。包括内容有软件测试的必要性和基本概念、软件测试基本方法、软件测试依据和规范、软件测试流程、软件测试团队组建以及软件测试和质量分析报告等内容。教师重点强调软件测试依据和规范,软件测试的流程和本阶段使用测试技术的特点和测试方法。学生建立软件测试流程的总体印象,并有侧重的学习相关测试方法。由教师选择适当的开发项目,提出需求,学生进行相关测试计划制定和实施。

单元测试阶段,应用黑盒和白盒测试方法以及静态测试和动态测试技术对代码进行测试。包括内容有单元测试方法和相关技术,单元测试工具,面向对象的单元测试,软件测试报告与测试评测。教师重点讲授单元测试工具的使用以及软件测试报告和测试测评。在初始阶段的项目基础上,由教师或学生进行单元模块的编码,并由教师在代码中植入错误。重点考察基本测试方法的应用效果以及熟练使用测试工具的能力。

集成和系统测试阶段,对各模块接口的测试和系统功能测试。包括的内容有集成测试方法,系统测试功能性测试,回归测试,测试项目管理。教师在项目设计时负责错误植入,重点考察软件测试计划制定以及相关测试文档,测试用例的设计。

系统非功能性测试阶段,重点在非功能测试方法和软件应用。对于实践的软硬件环境要求较高,尽量模拟实际测试环境。主要内容有:非功能性测试分类、非功能性测试方法、非功能性测试工具,软件测试自动化。

验收测试阶段,用户对软件产品投入实际应用以前进行的质量检验活动[2]。主要内容有:验收测试,软件本地化测试,设计和维护测试用例,报告所发现的缺陷。教师和学生充当客户对软件产品进行功能正确性和需求的符合性验证。这一阶段教师检验学生前期的测试成果,对测试效果作出评价。

1.2 项目的设计原则

由于各种条件限制,合理设计测试项目才能够充分发挥项目驱动教学法的优势,真正使学生在项目中应用理论知识,提高实践水平。项目设计要符合如下原则:

教师针对展示中表现优秀的个人和小组进行表扬,对出现的问题进行讲解,对重难点进行补充。教师对任务展示实行激励制度,根据学生完成任务的表现量化成平时成绩的分数,并在学期末分别评出个人前三名和小组前三名,给予物质上的小奖励。

1)项目要有针对性

项目要针对不同测试阶段设置,可以做到重点突出,印象深刻。

2)项目规模、难度要适度

项目规模过大、过复杂不能在课时之内完成,容易造成虎头蛇尾,而且不易调动学生的积极性。

3)项目要有延续性

各个阶段设计的项目最好具备延续性,针对一个项目开展测试工作。使学生在逐步深入测试过程中加深对测试项目的了解程度,以便取得更好的效果。

将学生分成若干小组,确保每位同学亲自动手参与各个阶段的测试工作,体验团队协作。

1.3 项目效果评价

各阶段项目测试完毕,要对测试结果进行效果评价。评价内容包含:在测试项目中由教师植入错误的检出情况,相关测试用例设计文档,各个阶段测试报告。相关评价标准以及需要提交的文档,由教师在项目启动前制定。

2 结语

在项目驱动教学的实践中,教师要引导学生如何在实践中学习和掌握新知识以及应用新知识,帮助学生建立独立研究及解决问题的能力。学生成为学习实践的主体,通过参与项目实践,把理论和实践有机结合起来,在实践中综合应用知识解决问题。教师在这个过程中也充分锻炼了教学问题设计和决断能力以及教学问题解决能力。[3]总之,项目教学驱动法对于学生和教师都是有所裨益的,对于软件测试这种强调实践性的课程值得推广应用。

[1]朱少民.软件测试方法和技术(第2版)[M].北京:清华大学出版社,2010.7.

[2]佟伟光.软件测试技术(第2版)[M].北京:人民邮电出版社,2010.8.

[3]张朝珍.教师教学决策能力的构成与提高[J].教育理论与实际2009.1.

N41

A

10.3969/j.issn.1001-8972.2012.21.131

国家级特色专业建设(TS12142),安徽省省级教学研究项目(2008jyxm359)

郭娟(1980-),女,硕士,讲师,研究领域为:网络计算。

猜你喜欢

软件测试测试方法驱动
基于泊松对相关的伪随机数发生器的统计测试方法
基于模糊PI控制的驱动防滑仿真系统分析
屈宏斌:未来五年,双轮驱动,砥砺前行
基于OBE的软件测试课程教学改革探索
无线电发射设备杂散发射的测试方法探讨
航天软件测试模型构建与应用
轨旁ATC系统门控柜接收/驱动板改造
基于云计算的软件自动化测试方法
DLD-100C型雷达测试方法和应用
在808DA上使用WIFI进行驱动数据同步