书城教材教辅西南民族大学学科建设探索
48538500000076

第76章 教学艺术探索(15)

3.课程跃上新台阶。在2007年上半年,“基础”课顺利通过学校教学管理委员会的评审,成为学校的精品课程,并在努力准备申报省级精品课程。

对“软件测试技术”课程教学的探讨

殷锋 雷开彬

摘要:随着软件工程的进一步发展,“软件测试技术”课程在各高校的软件工程专业课程的教学中越来越突显其重要性,因而受到众多大学的重视。本文在分析比较软件工程专业学生与计算机其他相关专业(如:计算机科学与技术专业、计算机应用技术等)学生培养目标及方向的异同点的基础上,阐明了“软件测试技术”课程教学的特点与提高教学质量的关键点。此外,本文还结合在实际教学中的心得体会,对软件工程专业学生的“软件测试技术”课程的各个教学环节作了相关探讨,以期对即将开设该课程的学校提供一点可以借鉴的经验。

关键词:软件工程专业,软件测试技术,教学

随着计算机应用领域的迅速扩大,人们对软件质量提出了新的更高的要求。而作为保证软件质量最有效手段的测试技术,已经越来越引起软件用户及开发人员的关注。但软件测试在国内仍处于起步阶段,各种软件测试的方法、技术和标准都还在探索阶段。可以说当今中国的软件测试行业正处于“春秋战国”时期,百家争鸣。一方面,这给行业的创新和发展提供了营养丰富的土壤;另一方面,在测试行业一派“欣欣向荣”的气象背后,也隐藏着巨大的危机。软件质量和测试观点“良莠不齐”,“泥沙俱下”。[殷锋(1972-),西南民族大学计算机科学与技术学院软件工程教研室主任,副教授,博士。研究方向:网格及其测试。][雷开彬(1961-),西南民族大学科学与技术学院副院长,教授。研究方向:计算机图形、图像处理。]

在这种情况下,很多高校为培养更多软件行业急需的软件测试人才,都开设了软件测试方面的课程。本文就如何对软件工程专业学生进行“软件测试技术”课程的各教学环节做相关探讨。

一、教学背景

目前,许多高校的计算机及软件工程相关专业并没有单独开设软件测试技术课程,软件测试技术仅只作为“软件工程”课程的一章进行介绍,并且没有作为重点内容来要求。软件测试技术方面的教材,近年来出现了一些,但质量良莠不齐。有的学校把软件测试技术作为选修课,课时比较少,大多注重软件测试理论的讲解和测试方法的介绍,忽视了极为重要的实践环节,而且缺乏系统的训练,离软件公司对测试人才的要求有较大差距。讲授软件测试技术课程的教师较缺乏也是亟待解决的问题之一。高校中有讲授软件工程的主讲教师,他们能很好地讲解软件测试理论和介绍软件测试方法,但缺乏较丰富的软件测试案例和软件测试经验,而这正是讲授好软件测试技术课程的关键所在。

二、教学目的定位

现以西南民族大学“软件测试技术”课程的教学培养计划为例,就软件工程专业在该课程上的教学特点进行分析,以更好地为软件工程专业的软件测试课程的教学目的定位。

软件工程专业的学生在开设“软件测试技术”课程之前大都开设了相关的专业课程。以学校的计算机科学与技术学院的软件工程专业为例,该专业的“软件测试技术”课程于第五学期开设,共50学时。相关前续课程为“C程序设计”、“数据结构”、“软件工程”等专业基础课程和“面向对象程序设计”的实践环节。同时,还可以通过“基于CMM的软件工程控制与质量保证”、“软件项目管理”等课程对“软件测试技术”从理论理解深度和应用实践深度等方面进行深入的学习。所以就其教学体系而言该门课程的整个教学过程系统性很强,学生可以从理论和应用两个方面来很好地掌握“软件测试技术”这门课程。

但就目前的学分分布而言,学校软件工程专业的“软件测试技术”课程的学时偏少,尤其是实践课时严重不足。同时,目前教学中尚存在:缺乏丰富的自动化测试工具软件、学生在先行课程中培养的动手能力有限等问题。因此,就目前而言,还不能期待他们在这方面有很深的研究,而只能将“软件测试技术”课程定位为培养他们专业能力的一门必备工具而已,其学习目的可简单归纳为以下几点:

(1)了解软件测试技术及书写各种测试文档的重要性。让学生了解测试的真正目的是通过对软件错误的原因和分布进行归纳,发现并排除当前软件产品的缺陷,对在需求和设计过程中存在的问题查缺补漏,从而确保软件产品的质量。

(2)了解软件测试技术的发展及应用领域。这是关于计算机软件测试的常识性知识,对它的掌握有利于从整体的角度来理解课程。

(3)最基本理论知识的铺垫,为以后的再学习创造条件。如:软件测试基础、自动化测试系统构建方法和面向对象软件测试基础知识等均属此类。

(4)学会使用一些较常用的、市面上流行自动化测试工具软件,如:Mercury公司出品的Astra Quicktest、WinRunner及LoadRunner和Segue公司的SilkTest、Silkperformer等黑盒测试工具;以及Compuware公司的Truetime、Jcheck、BoundsChecker和Parasoft公式的Jtest、Jcontract、C++Test、.test等白盒测试工具。由于近年来软件测试技术的较快发展,网上相关的信息也日渐丰富。学会充分利用互联网上的资源为专业知识的学习服务无论对在校还是将来走向工作岗位的学生来讲都是非常重要的。这部分在技术上没有难度,重要的是培养学生这方面的意识,自觉利用这一广袤的资源。通过对Web服务器、FTP服务器等简单Intranet技术的使用和测试,不仅能进一步加深学生对Internet技术的认识,也能为将来的测试工作打下良好的基础。

(5)掌握短小的简单测试程序、小型化测试软件的构建和编制方法。通过实际动手可消除学生对于软件测试的神秘感。实际上,学校的学生在学习本门课程时所有同学必须使用至少一种黑盒测试方法(如:等价类划分法)、一种白盒测试方法(如:基本路径法)分别去编写两个自动化测试程序。感兴趣的同学还可以鼓励和指导他们利用课余时间进行“学生创新活动”,继续编程实现更多的软件测试方法,并最终进行集成且完成对一个完整的、小型的软件测试系统的构建工作。

三、教材的选择

教材的选择是整个教学环节中最重要的一环,我们必须充分考虑学生的学习目的、学时数及前续课程的安排。实际上全国高等学校教学研究中心软件工程专业教学指导分委员会已经在这方面做了大量的探讨工作,也出版了相应的教材。确定了教材的选择方向之后,我们便可以做教材的具体确定工作了。在参考相关的此类教材后,我们最终选定了中国水利水电出版社于2006年8月出版的《软件测试技术》(作者:曲朝阳、刘志颖)。本书结构层次清晰,涵盖了初学者需要掌握与了解的知识点,并具有贯穿全书各章节的测试实例——电厂两票管理系统测试过程构建。这样能让学生很好地掌握软件测试技术的具体实施方法,同时便于他们更好地贴近当今软件测试技术的研究热点。该书以这样的方式采用理论与应用技能相结合的思路,使学生在掌握测试基本概念的基础上,较为容易地学习软件测试的基本技能。

四、日常教学

软件专业的同学在初学此门课程时,往往对本门课程在整个专业知识体系中的地位产生疑问。解决好这方面的问题,对于整个学期的学习乃是至关重要的。可以结合软件工程专业的特点及测试技术中比较有趣的一些实例来激发同学们的学习热情。教学中,最好采用多媒体教学,对一些经典测试模型可以采用图片的方式向同学展示,在条件允许的情况下对短小的测试程序进行分析、对一些常用的测试工具软件进行现场测试演示,力争使课堂教学生动、形象、不枯燥。

由于计算机相关专业的学生或多或少地都存在重上机实践、轻理论理解的问题,所以一些必要的理论知识的铺垫在整个学习过程中是必不可少的。而对相关理论知识的讲解也正是最容易让学生失去学习兴趣的地方,因此在整个课堂教学过程中要多收集学生掌握的情况、多沟通、多交流。

五、实验内容的选定

实验是对已学知识的进一步巩固,通常是为了让学生能更好地理解和掌握课堂上所讲授的相关理论知识。软件工程专业“软件测试技术”课程的实验学时数一般都比较少,合理安排实习的内容和难易程度对于充分利用有限的实验时间非常重要。在实验内容的安排上,学校既参考了许多院校较为成熟的经验,又结合自身的教学情况和实验环境。从而,安排了以下四个实验内容(可根据实际情况,酌情增删):

实验一:软件测试计划编制。让学生掌握符合国际标准的软件测试计划的具体内容、书写规范、编制方法等。

实验二:测试用例设计之“黑盒测试”。以等价类划分法为例,要求学生掌握等价类划分法的具体手工实施步骤,然后引导学生学习编写短小的自动生成测试用例的程序。以作业的形式填写“实验报告书”并将所编写的程序上传至FTP服务器。

实验三:测试用例设计之“白盒测试”。以基本路径法为例,要求学生掌握基本路径法的具体手工实施步骤,然后引导学生学习编写测试程序。且仍需填写“实验报告书”并将所编程序上传。

实验四:自动化测试软件的使用。由于目前学校尚未购买相应的教学用正版自动化测试工具软件,故教学中只能使用厂家免费为我们提供的“试用版QTP”软件作为让学生了解目前业界常用自动化测试工具软件的窗口。

六、结束语

软件测试课程是一门较为实用的软件工程专业学生必修的专业技术课程。其理论涉及面较广、学科参与多。软件工程专业学生在学习此门课程时,存在学时少、上机时数不足等问题。如何上好本门课程,对教师来讲,仍然是一个值得长期探讨和认真思考的问题。

参考文献

[1]严丽平.软件测试课程教学改革初探[J].科技广场,2008(4):223~224.

[2]殷锋,谈文蓉,李建阳.“自顶向下”的软件工程专业人才培养改革方案[J].西南民族大学学报(自然科学版),2007,33(7):29~31.

[3]曲朝阳,刘志颖.软件测试技术[M],北京:中国水利水电出版社,2006.

落实科学发展观推行研究式教学

李高平

摘要:科学发展观,第一要义是发展,核心是以人为本,基本要求是全面协调可持续发展,根本方法是统筹兼顾。按照科学发展观的这个要求,教学上要有所创新:一是教学形式、手段、方法的创新;二是对教学内容的创新性理解与分析。本文推行的研究式教学是从教学内容的创新性理解与分析角度,探讨它的特点及其在教学中的具体实施方式。研究式教学强调学习新知识时,让学生通过对来自实践的真实问题的思考,在接近真实的情境中学习,发现并掌握相应的概念和原理,知识的获取与传授只是在发现和研究过程中的一个自然而然的结果。

关键词:科学发展观,研究式教学,创新能力

党的十六届三中全会在总结我国20多年改革开放和现代化建设实践经验的基础上,提出了以人为本、全面、协调、可持续的科学发展观,标志我们党对社会主义市场经济条件下经济社会发展规律认识上的重要升华,是进一步指导我国现代化建设的新的治国纲领,也是我们党执政理念的一次飞跃,具有重要的现实意义和深远的历史意义。[李高平,西南民族大学计算机科学与技术学院教师。]

一、科学发展观在教学中的应用

科学发展观的核心是以人为本,基本要求是全面协调可持续发展,根本方法是统筹兼顾,着眼点就在于用新的发展思路实现更好更快的发展。纵观世界,人才的能力建设在综合国力竞争中越来越具有决定性意义。人类社会的发展对资源的认识经历了重视以土地、矿藏等为代表的自然资源、以钢铁等为代表的人化自然向重视人自身的能力、潜能转变的过程。随着社会的进步,以知识能力为核心的人力资源显示出越来越大的力量,人才已经成为知识经济时代的最重要的资源。作为承担人才培养任务的高校,就很有必要探究如何在教学中贯彻和落实科学发展观。我个人认为,应重点做好以下两点:

1.注重培养学生的创新精神和创新能力。人才的培养是一个长期的系统工程,需要一代又一代人的不懈努力,培养创新型人才应该贯彻到教学的全过程。在高等学府中求学的青年学子,恰同学少年,风华正茂,他们正处在最具活力、最有热情、最少保守思想的黄金时期,在这个时期抓紧对他们进行创新精神和创新能力的培养尤为关键,高等学校应义不容辞地承担起这个使命,造就一批站在世界科学技术前沿的学术带头人和尖子人才。