CDIO模式下的软件测试课程实践教学探究_第1页
CDIO模式下的软件测试课程实践教学探究_第2页
CDIO模式下的软件测试课程实践教学探究_第3页
CDIO模式下的软件测试课程实践教学探究_第4页
CDIO模式下的软件测试课程实践教学探究_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Computer Knowledge and Technology 电脑知识与技术信息技术与课程整合本栏目责任编辑:梁书第6卷第33期(2010年11月 CDIO 模式下的软件测试课程实践教学探究温艳冬,石冬凌(大连东软信息学院,辽宁大连116023)摘要:软件测试课程存在的主要问题之一是实践教学的薄弱,在分析课程现状的基础上,结合CDIO 教育模式,首先对课程内容进行合理的设计,然后介绍三级项目和四级项目的实践教学过程和教学方法。该改革方案能吸引学生主动学习,提高了学生软件测试的实践能力。关键词:CDIO; 项目; W 模型; 软件测试;实践教学中图分类号:G642.0文献标识码:A 文章编

2、号:1009-3044(201033-9569-03Research of Practical Teaching for Software Testing Course Based on CDIO ModeWEN Yan-dong ,SHI Dong-ling(Departmentof Computer Science &Technology, Dalian 116023, ChinaAbstract:One of the main problems existing in Software testing course is weak for practical teaching.

3、On the analysis of the present cur -riculum, based on CDIO education model, firstly, design the teaching content reasonable, then, introduce the teaching process and teaching methods of the third-projects and the forth -projects. This reform scheme can attract students' enthusiasm for studying s

4、oftware testing course. And it improves student's practical ability of software testing.Key words:CDIO; project; W model; software testing; practical teaching软件测试是保证软件产品质量的一种重要手段,随着软件产业的迅猛发展,软件质量问题已成为所有使用软件和开发软件的人们关注的焦点。企业对软件测试人才需求量逐渐增多,软件测试岗位迅速扩大、人才需求旺盛。然而行业内满足要求的软件测试人才却严重短缺。因此出现了企业对软件测试人才需求量较大

5、但难以找到合适人才的现象。产生这种矛盾的原因是多样的,但笔者认为,毕业生软件测试的实践动手能力较差和经验积累不足是其不能够从事软件测试工作的主要原因1。CDIO 工程教育模式是近年来国际工程教育改革的最新成果。从2000年起,麻省理工学院和瑞典皇家工学院等四所大学组成的跨国研究创立了CDIO 工程教育理念,并成立了以CDIO 命名的国际合作组织。CDIO 代表构思(Conceive )、设计(Design )、实现(Implement )和运作(Operate ), 它以产品研发到产品运行的生命周期为载体, 让学生以主动的、实践的、课程之间有机联系的方式学习工程。CDIO 培养大纲将工程毕业生

6、的能力分为工程基础知识、个人能力、人际团队能力和工程系统能力四个层面, 大纲要求以综合的培养方式使学生在这四个层面达到预定目标。按照学院建设基于CDIO 的软件人才培养目标,作者在软件测试课程中以CDIO 教育理念为指导,对软件测试课程的实践教学方法进行了一些探索,实践证明,基于CDIO 教育模式的软件测试实践教学确实提高了毕业生从事软件测试职业的就业率。1实践教学的现状软件测试课程已开设多年,通过对毕业生的就业调查和企业回访,发现软件测试课程存在如下问题:1 内容设计不完整。我院高职软件测试技术课程原来是32学时,重点讲授软件测试的理论基础,包含图论、离散数学和测试基础知识以及测试用例的设计

7、方法,忽视软件测试在开发各阶段的具体应用,尤其是缺少自动化测试工具的使用。2 知识缺少连贯性。虽然讲授大量测试用例设计方法,但是,缺少测试用例方法在实践中的运用环节。3 理论与实践脱离。毕业生普遍反映,前一部分的理论知识很深奥,在实际的工作中不知怎样应用;相反,通过在企业一段时间的测试实践发现,工作中真正用到的知识还没有掌握。4 实验案例不够理想。实验案例包括三角形问题,NextDate 问题等,大多是课本上常见的案例,其设计较单一,与真实工程相差较大,易失去学习兴趣。2TOPCARES-CDIO 项目分类大连东软信息学院基于“教育创造学生价值”的理念,在继承CDIO 的基础上,创造性地将CD

8、IO 中国化和本校化,在充分考虑学生、教师、产业和社会等利益相关者的需求基础上,结合中国高等教育的实际和IT 行业的人才需求标准,针对学院IT 专业的设置情况,对CDIO 能力培养大纲做了继承基础上的创新,构建了具有东软特色的TOPCARES-CDIO “八大能力”指标体系,其每一个字母代表一种能力,分别是:Technical knowledge and reasoning (技术知识与推理能力)、Open minded and innovation (开放式思维与创收稿日期:2010-10-07作者简介:温艳冬(1977-),女,辽宁凌源人,讲师,硕士,主要研究方向为软件测试与质量保证。IS

9、SN 1009-3044Computer Knowledge and Technology电脑知识与技术Vol.6,No.33, November 2010, pp.9569-9571,9576E-mail:kfyjTel:+86-551-569096356909649569Computer Knowledge and Technology 电脑知识与技术信息技术与课程整合本栏目责任编辑:梁书第6卷第33期(2010年11月 新)、Personal and professional skills (个人职业能力)、Communication and teamwork (沟通能力与团队工作)、A

10、ttitude and manner (态度与习惯)、Responsibility (责任感)、Ethical values (价值观)、Social contribution by application practice (应用创造社会价值)。将TOPCARES-CDIO 项目按项目规模和涉及的能力范围划分为五级:一级项目(综合项目):是指包含本专业主要核心课程和能力要求的综合项目。二级项目(课程群项目):是指基于多个课程、包含一组相关核心课程能力要求的课程项目。三级项目(课程项目):是指单门课程内为增强该门课程能力目标的实现而设的课程项目。四级项目(单元组项目):是指基于1门课程的2个以

11、上单元(模块)能力要求、为强化课程能力目标而设计的单元组项目。五级项目(单元项目):五级项目是基于1门课程的某1个单元(模块)内为增强能力培养而设计的单元项目。3CDIO 模式下的实践教学针对软件测试课程的教学现状,首先对调整教学内容,其次改革实践教学方法,最后改进课程实践的评价体系。调整软件测试课程的教学内容总体思路,如图1所示:课程主体分成4部分展开,分别是理论基础、方法、阶段和工具2。前一部分要为后一部分服务,层层递进、步步展开,通过学习本课程的教学内容学习,学生能够建立完整的软件测试知识体系概念,同时,真正体现理论与实践相结合的特点。首先讲授软件测试的理论基础,以“实用、够用”为原则;

12、其次,重点学习测试用例设计方法,分为黑盒方法和白盒方法,以8个四级项目为引导;然后,学习自动化测试工具,包括功能自动化工具、性能自动化工具以及单元测试框架等;最后以一个三级项目为基础,按照软件测试过程的W 模型,实践软件测试的各个阶段,进一步应用前述软件测试技术、方法和工具。从知识结构上分析,如图1的教学内容和知识层次都是很全面的,但是实践教学的薄弱是影响其效果的主要原因,传统的讲授法和案例法还不足以使学生建立全面的软件测试能力。因此,在现有教学内容的基础上提出CDIO 模型下的软件测试实践教学方法。架构开发了软件测试实验教学平台和项目库,为学生实践软件测试的流程实验教学平台分为实验服务平台和

13、学生学习平台两部分,下面仅以实验服务平台为主介绍,其主要包括4个子系统:系统管理子系统、实验案例库子系统、实验教学子系统和互助学习子系统,如图2所示。系统管理子系统:主要涉及学生管理、教师管理、课程管理。其中教师管理和课程管理主要是对相关教师和课程进行设置,包括课程板块、授权口令和权限等;而学生管理则以学生为单位,记录每个学生的实验成绩。同时,系统提供学生名单导入和单一写入两种方式。实验案例库子系统:为了充分使用这些案例,需要将案例资源划分成各种素材,进行系统化的分类,构建成统一的教学资源。按照案例按照缺陷的版本、作者、实践以及试用阶段等进行编号,以方便学生和教师的使用。在该子系统中,教师可以

14、随时添加和下载资源,并可以对自己负责的部分实验案例进行修改。实验教学子系统:主要涉及实验开放和成绩评价两个部分。教师在实验课上,可以指定部分实验案例为本次课的实验内容后,学生方可下载案例程序、编写测试用例、测试执行以及测试结果记录等。对于每个学生在每个版本的实验案例的测试结果都要通过该子系统提交给教师。教师可以查看总分和具体的细节进行反馈。为改变项目缺乏、质量不过关等现状,我们通过多种途径收集四级项目和三级项目,并进行汇总、分类以及管理,具体的项目来源包括:1 低年级向高年级提供:每个学期初,向教授C 语言程序设计、JAVA 以及.net 的教师提出需求,在低年级学生的程序中,选择典型的错误、

15、优秀的作品作为高年级学生软件测试课程的实验案例。2 毕业生提供:每年都有大量的学生毕业,可以从中挑选合适的项目作为实验案例。需要注意的是,教师在项目录入的过程中要进行分解和检查,尤其要重视文档的质量 。图1 软件测试课程教学内容设计图2功能模块9570Computer Knowledge and Technology 电脑知识与技术信息技术与课程整合本栏目责任编辑:梁书第6卷第33期(2010年11月 3 企业提供:由于我院依托东软集团,软件测试一线的人员可以提供较全面且有代表性的实验案例。依托于业务背景的项目,进一步强化了职业能力的培养。4 书本、互联网提供:一些比较经典的问题,通常在课本和

16、互联网上都可以搜集到,需要补充需求规约和设计文档。在传统教育观念中,教学以教师为中心,课堂上教师以讲授法为主,通过语言描述来讲授知识,学生是被动的接受知识,不利于发挥学生的主观能动性,不利于学习兴趣的培养。结合CDIO 的教育理念,从培养工科学生的整体素质上着手,在CDIO 培养学生的12条标准中,要逐步形成以教师引导和学生为主体的思想,转变教师的角色为引导者、任务分配者和咨询专家;学生要学会分析问题、解决问题,让学生在实践中掌握知识,甚至在失败中掌握知识。3.3.1W 模型的项目设计V 模型是最具有代表意义的测试模型,是软件开发瀑布模型的变种,它反映了测试活动与分析和设计的关系,清楚的描述了

17、软件测试各个阶段和开发过程各个阶段的对应关系。而W 模型强调测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、功能和设计同样需要测试。如图3所示,在软件开发的各个阶段都有软件测试对应的活动。如图2,在了 解了用户的需求后,测试工程师需要对这个用户需求进行验证与确认,为验收测试做准备。笔者结合软件测试过程W 模型,以一个用户信息管理系统为三级项目,提出软件测试课程的三级项目教学思路,具体如图3所示,将整个三级项目的教学实施过程分为4个阶段,与CDIO 的4个过程相对应:1 阶段I(C:教师的角色为软件开发工程师,提供给学生用户需求、需求规格说明书,学生的角色为软件测试工程师,需要完成

18、用户需求的确认和验证、需求规格说明书的评审,并且为验收测试、确认测试和系统测试编写测试计划和测试用例;2 阶段II(D:在教师提供需求规格说明书的情况下,分析系统的概要设计和详细设计说明书,学生以测试工程师的角色完成集成测试和单元的设计工作,成果物包括集成测试计划、单元测试计划和测试用例等。3 阶段III(I:学生在理解程序代码的基础上,逐步实践单元测试、集成测试。教师的角色为技术支持工程师、QA ,对于集成和实施过程中的技术问题及时的给与指导。4 阶段IV(O:教师以最终用户的身份参与alpha 测试和Beta 测试,同时对学生的测试活动进行监督和检查;学生仍然作为测试工程师执行测试、记录缺

19、陷,维护测试用例和测试计划,撰写测试报告。第I 阶段和第II 阶段,强化测试计划、测试用例文档的编写能力,运用软件测试理论、测试用例设计方法;第III 阶段和第IV 阶段,主要是实践软件测试的执行、缺陷描述和管理的流程。通过这个三级项目在W 模型下的运作过程,学生能够获得全面、系统、生动的软件测试实践经历3。基于CDIO 模式的软件测试课程在教学实施过程中,笔者体会到:团队合作保障了组织的有效性;评审会议是质量保证的关键;轮流答辩能够锻炼学生的自学能力。1 团队合作:一般情况下,软件项目的开发和测试都并非个人独立完成的,而是需要团队中每个成员的共同努力。同样,软件测试也需要团队分工合作。在这个

20、项目的启动之初,就需要完成团队的组建工作,模拟真实的软件测试团队管理。测试组长分配任务、检查文档、协调冲突、争取资源、管理服务器等;作为组员要按时完成任务、向组长汇报等。以发现缺陷的流程为例,组员发现的BUG 必须经过组长的确认后才能够记录到文档中,这是避免错报的有效方法。学生在团队沟通和协作中,培养了情感的同时初步建立了职业素质。2 评审会议:在三级项目实施的过程中,评审会议起到非常重要的作用。通过一定频度的评审,既是对测试文档质量的把关4,也是锻炼学生勇气、语言能力的重要机会。在评审会议之前,需要确定评审的时间、内容以及参与者;在评审会议上,由协调人控制会议效率,被评审人逐条讲述文档,如测

21、试计划、测试用例、测试报告、程序代码等,其他参与者需要提出可能存在的错误,可参考CheckList ;在会后,要保证所有的错误得到修正,及时更新CheckList 。评审会议的效率是被广泛认可的,在课堂上应用的效果也很明显,学生逐步养成认真编写文档、实事求是和负责任的学习态度。3 轮流答辩:轮流答辩主要应用在系统测试阶段,系统测试涉及的内容非常广泛,如功能测试、性能测试、安装/卸载测试、容量测试、兼容性测试、本地化测试、网络测试、安全测试等,在有限的时间内,全部都展开讲解几乎是不可能的,如果仅概念性的一带而过,效果不是很理想。笔者将系统测试环节设计为15个专题,提前2周通知学生选定某个专题,以

22、团队的形式开展自学、调查并制作PPT 以及教学案例。在答辩现场,模拟本科生的毕业设计(论文)答辩形式,每个小组需派出一位同学作为评委,对答辩者提问、给分,另外,还需要2位同学收集、整理分数。评价的准则统一,包括答辩者的语言表述、礼貌、PPT 质量、专题的广度和深度以及学习态度等。在所有专题答辩结束后,要求全体学生选出最优团队并給与奖励。(下转第9576页)图3软件测试的W 模型9571Computer Knowledge and Technology 电脑知识与技术信息技术与课程整合本栏目责任编辑:梁书第6卷第33期(2010年11月(上接第9571页)4结束语软件测试课程的教学现状在于较高的

23、实践能力要求与传统的以讲授理论为主的教学方法不一致。我们在CDIO 模式下,在调整课程内容的基础上,引入一个三级项目和8个四级项目,转变教师的角色为引导学生主动学习,在实施过程中引入团队合作、评审会议和轮流答辩等有效的方法。通过对软件测试课程的实践教学改革,可以看到教学效果明显改善,毕业生从事软件测试职业的人数增加了30%。参考文献:1钟素芬, 叶明芷. 软件测试应用性人才培养模式的探索与实践J.北京联合大学学报(自然科学版),2007(9.2钟元生. 软件测试实践教学特色的构建实践J.电化教育研究,2006(10:62-65.3匡青, 朱宜炳. 高职院校软件测试课程教学改革探索J.现代商贸工业,2010(3:237-238.4胡宏银. 软件测试课程教学方法探讨与实践J.计算机教育,2007(6:11-12.新华网统计,学生违法犯罪案件中与网络有关的占八九成;西安市雁塔区人民检察院近年办理的未成年

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论