APP下载

软件质量保证与测试课程教学探讨与实践

2015-11-25劳东青陈立平

中国现代教育装备 2015年7期
关键词:质量保证软件测试学时

劳东青 陈立平

塔里木大学信息工程学院 新疆阿拉尔 843300

软件质量保证与测试课程教学探讨与实践

劳东青 陈立平

塔里木大学信息工程学院 新疆阿拉尔 843300

针对软件质量保证与测试课程教学实践过程中发现的问题,以就业为导向,从教学内容安排、教学方法与手段等方面,对该课程进行了初步的探讨与实践,并对如何优化课程教学质量提出了一些可操作性强的建议。

软件测试;软件质量保证;教学内容;案例教学;讨论式教学

随着软件产业的发展及应用需求的不断提高,软件系统的规模和复杂性与日俱增,软件缺陷导致的各类损失不断增加,甚至带来灾难性的后果。目前,软件质量问题已成为政府相关部门、软件企业、软件用户关注的焦点,作为软件质量保证和控制的有效手段,软件测试受到了越来越多的关注。

国外的软件厂商极为重视软件测试。在欧美等软件产业发达的国家中,软件企业的测试人员与开发人员的配置比例一般已达到或超过1:1。[1]而我国企业对于软件测试在整个软件行业中的重要作用认识较晚,在国内被调查软件企业中,能够基本达到该比例的企业仅占22%。[1,2]随着国内大多企业的软件成熟度能力的不断提高,多数企业对于软件测试环节的要求大幅提升,产生了对软件测试人才的大量需求。[3]据前程无忧网数据显示,2011年国内软件测试人才缺口高达20万,2012 年缺口突破30万人。[4]造成软件测试人才供不应求的根本原因在于国内高等院校对测试行业的市场需求反应迟缓,应届毕业生的能力与企业需求脱节,直接使用很难;而社会培训机构举办的各类软件测试技术培训价格不菲,质量良莠不齐,难以缓解人才市场的紧缺状况。[1-4]作为人才培养的主要基地,高校成为企业挖掘软件测试人才的主要关注地。[4]如何解决计算机专业尤其是软件工程专业软件测试课程理论与实践严重脱节的问题,是高校亟需面对的重要挑战。[5]

为适应我国软件产业发展对人才的需求,提高毕业生就业率,我校信息工程学院于2011年在最新的本科生培养方案中,将计算机科学与技术专业细分为计算机工程、软件工程和网络技术三个方向,并将“软件质量保证与测试”课程列为软件工程方向的学生的专业必修课之一。以下结合市场需求,针对教学实践过程中发现的问题,从理论教学、实践教学、教学方法与手段等方面,对该课程的教学进行了初步的探讨与实践。

1 教学目标与教学内容

我校计算机科学与技术专业的学生多数来自疆内。经过四年专业学习后,从事软件开发或测试的学生人数约占当年毕业总人数的一半。结合生源、就业以及市场需求的特点,本校计算机科学与技术专业的软件质量保证与测试课程的教学目标定为:以就业为导向,培养应用型人才,使学生掌握软件质量保证与测试的基本概念和理论,了解软件质量保证与测试在整个软件开发过程的地位和重要程度,建立正确的质量文化和理念,掌握软件开发和维护过程中的质量保证措施和管理方法,为将来从事软件开发和软件测试工作打下坚实的基础;授课时间定为48学时,其中理论教学32学时,实践教学16学时。

软件质量保证与测试是一门理论与实践并重的课程,既需要深入的理论知识,又需要丰富的实践项目经验。[5]根据课程教学目标的定位特点与要求,可将该课程的教学按软件质量保证、软件测试基础、自动化测试技术和测试管理四部分组织。各部分的具体教学内容和学时安排见表1。实践教学的目的是巩固课堂所学,并引导学生扩展学习。为了使学生熟悉软件测试的流程,正确认识软件开发与软件测试的关系,“软件质量保证与测试”课程的实践教学以基于完整项目的形式开展,并在此基础上熟悉主流自动化功能测试工具的基本使用。具体的实践教学内容设计与学时安排见表2。

表1 软件质量保证与测试知识模块及学时安排

表1 (续)

表2 软件质量保证与测试实践内容及学时安排

表2 (续)

2 教学方法与手段

2.1 引导学生正确看待软件测试工作

要培养能够适应市场需求的优秀软件测试人才,首先必须引导学生正确看待软件测试工作,树立积极的学习观念。目前,国内的软件测试行业正处于起步阶段,还没有一个相对成熟的模式,对于测试究竟要做什么工作没有一个正确的认识。人们普遍认为“软件测试的技术含量不如软件开发”“软件测试工作是一种简单的、重复性的劳动”……这导致企业在招聘测试人员时,往往门槛较低;一些企业甚至因为追赶进度、节省资源等原因而忽略测试工作。[4]这样的大环境使得软件测试人员不能真正认同测试岗位,主动参与到产品改进、开发与测试流程改进等工作中,更多地发挥他们的作用。企业高层感觉不到测试人员的价值,就不会重视他们,从而使得软件测试进入了恶性循环的怪圈。要摆脱这样的恶性循环,必须纠正测试行业中的错误观念,正确看待测试工作。高校学生作为未来软件测试人员的主力后备军,引导他们正确看待测试工作尤为重要。在实际教学过程中,与学生讨论由于软件缺陷引发的质量事故,如“千年虫”问题、“7.23” 温州动车组列车追尾事故等,从软件测试角度分析避免事故发生的措施,可引起学生对软件质量问题的关注,让他们认识到软件测试的重要性,激发对“软件质量保证与测试”课程的学习兴趣。

2.2 讲述与案例教学并重

“软件质量保证与测试”课程讲解涉及许多基础理论知识,尤其是软件质量保证部分。脱离案例讲解基础概念和理论,不仅枯燥乏味,学生也难以消化、理解;而结合丰富的实际案例进行讲解,不仅可以激发学生的学习兴趣,加深学生对具体的质量保证概念、测试基础等认识,而且可以帮助学生完成初步的迁移。例如,在讲解能力成熟度模型集成CMMI时,可以引用业内比较流行的“吃饭CMMI”案例,帮助学生理解5个CMMI成熟度等级,使他们明白“为何CMMI”“怎样CMMI”。

2.3 以就业为导向 加强实践能力训练

理论教学脱离市场实际,不利于教学质量的提高,也影响高校学生就业工作。以“基于完整项目”和“小组工作”相结合的形式开展课程实践教学,一方面可以让学生正确认识软件开发与测试的关系,熟悉实际测试流程,另一方面可以增强学生的团队意识,提高学生的协作能力。据不完全调查,国内软件企业进行功能测试,常用自动化测试工具QTP或WinRunner。在实践教学中,增加对这二者之一的训练、学习,可以加深学生对自动化测试理论的理解与认识。而熟练使用自动化测试工具的一技之长,将为提高学生就业率添砖加瓦。

2.4 启发式教学

传统的填鸭式教学中,教师与学生之间缺乏互动,学生完全成为知识的被动接受者,缺乏主动的探索精神和独立思考能力,容易产生“高分低能”现象。启发式教学以启发学生的思维为核心,从学生的实际出发,调动学生的学习主动性与积极性,引导学生应用所学发现问题、解决问题,利于开发学生的智能。比如,在讲解“基于边界值分析的用例设计”时,可以通过“创建包含10个元素的数组”的简单代码分析,引导学生思考“如何验证代码的正确性”“如何设计用例以发现是否存在数组溢出”等问题,从而让学生明白基于边界值分析的用例设计既要考虑程序的功能正确性,又要考虑程序的健壮性,加深对边界值分析方法的认识和理解。

2.5 讨论式教学

讨论式教学由教师提出论题,学生以小组为单位,围绕论题进行调查研究,通过讨论或辩论活动获得知识或巩固知识。例如,在讲解“如何建立质量管理体系”时,可将学生分成若干小组,分组讨论“如何做好产品和客户调查分析”“如何策划、编制、试运行、审核质量管理体系”。在具体讨论某一个问题时,可抛出实际案例,引导学生进行问题分析、提出解决方案。例如,在讨论“如何做好产品和客户调查分析”时,可提出如下案例:“XX公司为了建立质量管理体系,由管理代表XX总经理亲自带队调查分析公司现状,他特别重视产品研发和生产过程质量分析,并为此更换了新设备,更改了生产工艺,结果体系建立完成并通过了认证后,客户投诉情况的改善却不明显,XX总感到十分纳闷”,让学生分析客户投诉情况得不到改善的原因,并提出可行的解决措施。最后由任课教师针对讨论中没有分析清楚或提到的部分进行补充。通过实际案例的讨论、分析,不仅可以提高学生的课堂参与度,增强学生的学习积极性,巩固理论学习,还可以提高学生分析问题、解决问题的能力。

3 结束语

兴趣是最好的老师。只要学生对课程产生了兴趣,就会积极主动地学习。作为教师,只有持续改进教学方式与方法,增强师生间的互动,才能长久地吸引学生,使学生主动地参与到课堂教学中,从而达到教书育人的目的。针对“软件质量保证与测试”课程教学中存在的问题,以就业为导向安排理论教学内容和实践教学内容,通过丰富的实际案例引起学生对该课程的重视,以启发式教学、讨论式教学等多种教学方法与手段相结合的方式提高学生的学习主动性与积极性,吸引学生对课堂教学的持续关注。实践证明,学生的学习兴趣与学习效果均得到了极大的提高。大多数的学生还能够学以致用,将所学应用到毕业设计当中,并取得良好的效果。

[1] 武剑洁,石桂玲.软件质量与测试教学内容改革的探索[J].计算机教育,2010(20):30-33.

[2] 杨晴虹,张莉.软件质量管理与测试专业课程体系构建[J].计算机教育,2013(9):47-49.

[3] 叶良,李金祥.软件测试课程体系的构建与创新[J].常州信息职业技术学院学报,2007,6(4):74-76.

[4] 穆海伦,李万清.面向企业的高校软件测试教学改革探索[J].计算机教育,2013(10):36-40.

[5] 叶德仕.软件质量保证与测试课程建设[J].计算机教育,2008(10):65-66.

Discussion and Practice on Teaching of Human-Computer Interaction Course

Lao Dongqing, Chen Liping
Tarim University, Alar, 843300, China

Aiming at the problems of software quality assurance and testing found in teaching practice, the paper orient at employment and make a discussion on teaching content and teaching methods of this course, and then throw out some feasible suggestions to optimize teaching quality.

software testing; software quality assurance; teaching content; case teaching; discussion teaching

2014-11-08

劳东青,硕士,讲师。

塔里木大学高教课题“计算机专业协同教学方法改革研究”(课题编号:TDGJ1334)、塔里木大学高教课题“计算机应用型人才实践能力培养研究”(课题编号:TDGJ1309)。

猜你喜欢

质量保证软件测试学时
田湾核电站运行阶段质量保证分级管理
田湾核电站运行阶段质量保证分级管理
第二课堂成绩单制度下的学时发放标准的探索
——以中国民用航空飞行学院为例
《诗词写作》课程教学大纲(节选)
关于如何做好水质环境监测的质量保证研究
教学大纲国画(工笔花鸟)
探索学时积分制 构建阶梯式成长激励体系
基于OBE的软件测试课程教学改革探索
软件质量保证与测试课程的课程思政建设
航天软件测试模型构建与应用