时间:2021年07月05日 分类:电子论文 次数:
摘要:专业课程实验内容设计既要体现重点知识的针对性,又要反映相关知识的综合性。在图形建模实验中加入测试技术的应用,能具有更好的实践效果。该文针对不同的建模工具,详细描述了各自的界面组成、建模过程、建模效果及实施特点。并基于这些内容介绍了相关的测试方法,通过实际建模案例说明了测试方法的具体应用以及提高图形建模效率的方法,还将图形建模测试与程序代码测试进行了详细比较。建模工具的多样化激发了学生的学习兴趣,技术的多样化提高了学生对知识综合应用的重视程度。
关键词:UML建模;静态测试;动态测试;StarUML;PlantUML
实验教学是计算机专业教学的重要组成部分。各种编程语言掌握、辅助工具应用、理论知识点理解都必须在相应的实验课程中得到锻炼与提升。实验教学环节的良好设置应能体现专业知识点的特定性与综合性,既要有助于对当前学习的知识点加深认识,又要与已有的知识技能形成一个整体。
软件测试技术是软件开发过程的重要内容,贯穿于软件产品的整个生命周期,对软件进行系统验证和确认的目的是尽快尽早地发现在软件产品中存在的各种问题[1-2]。同样,在计算机专业课程实验中,测试技术也一直贯穿其中,例如编程语言类的C/C++课程实验,需要使用测试技术来验证程序的正确性;图形建模如UML需要使用测试技术来保证图形的合理性;文档编写如需求规格说明书编写需要使用测试技术验证文档的有效性等。测试技术在整个计算机专业学习过程中的作用是非常大的。
基于UML的面向对象分析与设计是一门专业主干课程,其实验教学以UML建模工具使用为主,要求学生掌握常用模型的阅读和绘制方法[3-5]。构建好的模型是否符合问题描述?图形符号使用是否正确?彼此之间的关系是否恰当?回答这些问题则需要适当地运用已经学过的各种软件测试技术。UML建模工具种类较多,可以简单地分为拖放式建模和编程式建模。使用不同工具的建模在一定程度上决定了软件测试方法、过程和技术的具体应用。结合这两类工具的建模实例,本文将描述常用的软件测试技术在实验中的应用情况。
1图形建模实验的测试现状及特点
完成UML建模实验的过程包括阅读问题描述、分析各类事物、分析事物之间的关系及类型、绘制图形、测试与调整图形等步骤。但实际建模实验中,测试与调整图形往往得不到重视,甚至直接被忽略,具体有以下几种表现。(1)认为只要绘制出图形即是结束。就像程序设计实验过程一样,认为只要通过开发工具的编译器程序编写就完成了,其实这仅仅说明程序没有语法错误,并不表示它没有逻辑错误。同样,图形绘制出来还需思考,有没有可以改正或改进之处。(2)知道需要进行测试,但不知道如何进行测试。有的学生在建模之后会简单地检查一下,但不了解之前学过的软件测试知识中的哪些启发式规则、测试模型、测试步骤、测试技术可以具体应用到实际建模中。(3)知道如何测试,但难以形成习惯。实验教学时间是有限的,到图形建模测试步骤时,课内课时往往已用完,课后进行测试的完成率及效果明显比课内要差。图形建模的测试与一般程序设计实验的测试相比,具有以下较为独特之处。
(4)测试对象不同。程序设计的测试对象为一系列语句所构成的完整源代码,而图形建模的测试对象为多个图形符号所构成的整体图形,例如UML建模中的图形符号有椭圆形、人形、矩形、线形等。(5)测试元素不同。程序设计的测试需要考虑数据和算法处理,而图形建模的测试则需要考虑各个点以及点与点之间的连线,例如UML建模中的图形基本就是由四类事物(点)和四种关系(线)所组成。
(6)测试结构不同。程序设计的测试涉及顺序、选择、循环三大基本结构,而图形建模的测试涉及的结构以网状结构和层次结构为主,例如UML建模中大部分图形是网状结构的,但其图形结构又在一定程度上体现了程序的结构控制。(7)测试用例不同。程序设计的测试需要具体的数据作为输入,用例有其固定格式和用法,而图形建模的测试则没有明确的用例可循,需要凭借一定的建模经验。虽然图形建模测试与程序设计测试有所不同,但二者之间也存在一定关联。
(8)最终目的相同。都是验证其最终结果的正确性及合理性。(9)测试过程类似。程序设计的测试过程是一个测试、调试、回归测试的循环迭代过程,图形建模的测试过程则是一个不断反复调整的过程。(10)技术互通。图形建模的测试技术可以很好地借鉴程序设计的测试技术,例如静态测试、动态测试等。
2拖放式图形建模的测试技术应用
计算机专业课程中的建模工具种类多、数量多,学生应根据自己的实际情况选择合适的建模工具。例如UML建模课程中,从网络是否连接可以分为在线建模工具如ProcessOn、离线建模工具如UMLet;从专业相关度可以分为通用建模工具如Visio、专业建模工具如RationalRose;从是否编码可以分为拖放式建模工具如StarUML、编程式建模工具如PlantUML[6-7]。本文以StarUML和PlantUML为例进行说明。
主要由个区域构成,正中间面积最大的就是绘图区,符合人们在现实生活中利用图纸进行各种设计的行为和思考习惯[8]。建模过程也较为简单,先阅读问题描述,再根据题目要求添加需要绘制的图形类型,将所需要的图形符号逐个从工具箱拖放至绘图区即可。
静态测试是指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来验证程序的正确性。静态测试技术包括代码检查、静态结构分析、代码质量度量等。其中代码检查就是研究源程序,并从中发现错误,最好在源程序编码完成之后及编译和动态测试之前进行[9-10]。在拖放式图形建模测试中,主要借鉴的是程序静态测试中的代码检查和结构分析,只不过检查的对象换成了图形。在分析错误时,将错误进行分类是有帮助的。UML图形建模将错误分成五个类型。通过对错误分类,可以迅速找出哪一类错误的问题最大,然后集中精力预防和排除这一类错误。
3编程式图形建模的测试技术应用
UML图形建模除了可以使用拖放式方式实现,还可以使用编程方式实现。PlantUML是一个开源项目,支持快速绘制UML模型,同时还支持架构图、SDL图、甘特图、思维导图等非UML图绘制。通过简单直观的语言来定义这些示意图,可以生成PNG、SVG或LaTex格式的图片。这里以在线PlantUML为例,说明编程式建模的实施和测试过程。在线PlantUML提供了各种模型的详细语法介绍及相关示例,使读者能够快速入门,各类帮助信息的获取也极为方便。与一般程序的开发界面相似,PantUMLWebServer的建模界面主要由两个区域组成,一个是代码编辑区,一个是结果显示区,代码通过“submit”按钮提交。
计算机论文投稿刊物:《电脑知识与技术》杂志创刊于1994年,是经国家批准的旬刊杂志,主管单位:安徽出版集团有限责任公司,主办单位:时代出版传媒股份有限公司 、中国计算机函授学院。国内统一刊号:CN34-1205/TP,国际标准刊号:ISSN1009-3044。
4结语
计算机专业的实验设计不应仅关注单个知识点的 应用,而应在细节上保持技术的连贯性和综合性。在实验内容设计上将软件测试与软件建模的内容融会贯通,能使学生思想上得到认识、理论上得到实践、技能上得到提高,取得了很好的实验教学效果。
参考文献(References)
[1]张海藩,牟永敏.软件工程导论[M].北京:清华大学出版社,2013.
[2]龙浩,王文乐,刘金,等.软件工程软件建模与文档写作[M].北京:人民邮电出版社,2016.
[3]吕云翔,赵天宇,丛硕.UML面向对象分析、建模与设计[M].北京:清华大学出版社,2018.
[4]侯爱民,欧阳骥,胡传福.面向对象分析与设计(UML)[M].北京:清华大学出版社,2015.
[5]邬卓恒,姜全坤.UML课程案例驱动教学研究[J].软件导刊,2020,19(5):264266.
[6]刘秋香,刘振伟.浅析几款主流的UML建模工具[J].电脑知识与技术,2018,14(32):245,253.
作者:戴莉萍,黄龙军