程序切片技术及其在面向对象软件度量和软件测试中的应用

来源 :南京大学 | 被引量 : 0次 | 上传用户:caochangzheng
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
程序切片是一种程序分析技术,它是通过把程序减少到只包含与某个特定计算相关的那些语句来分析程序的。切片回答了这样一个问题“哪些程序语句潜在地影响变量v 在语句s 的值?”Mark Weiser 引入程序切片概念,因为他观察到程序员在调试过程中脑海中就有关于程序的某种抽象。人们在调试一个程序的时候总是从错误语句s 开始,并沿着依赖关系跟踪到它影响的程序部分。程序切片自动计算这些依赖,在程序理解、程序分析、调试、测试、软件维护、程序集成和软件质量保证等方面对程序员有所帮助。在过去的几年中面向对象程序设计语言越来越吸引了人们的注意,因为它使得人们能够写出更加灵活、可复用和易维护的程序。然而,类、对象、继承、多态、动态定连等概念的出现,向静态程序分析提出新的挑战。它们使得为命令语言程序开发的表示技术和分析技术不足以表示面向对象程序。本文试图研究面向对象的程序切片技术及其在面向对象软件度量和复用方面的应用。本文创造性的研究工作如下: 文中提出一种对传统的系统依赖图进行面向对象扩充的方案。通过把传统的系统依赖图(SDG)和类依赖子图(ClDS)、类层次子图(CHS) 以及虚函数调用图(VFCG)相结合,从而构成了适合描述面向对象程序的面向对象系统依赖图(OOSDG)。并详细说明了对系统依赖图进行面向对象语法、语义扩充的过程,同时给出了构造面向对象系统依赖图的一般算法以及应用分析等。基于系统依赖图是计算面向对象程序切片的一种有效方法。但是系统依赖图的缺点是太复杂,而且在建立系统依赖图的过程中容易出错,一旦出现错误就可能导致切片结果的不准确。文中对系统依赖图了进行简化,得到简化的系统依赖图(SSDG)。简化的系统依赖图省略掉了那些表示输入参数和输出参数的结点和概括边,使图形更加简洁、清晰;同时还定义了一种面向对象程序的粗粒度切片概念,讨论了它的性质,分析了它与细粒度切片的关系,并基于简化的系统依赖图计算面向对象程序的粗粒度切片,最后还讨论了切片技术的简单实现。文中提出一种新的适合面向对象程序的分层切片方法,讨论了分层切片方法和逐步求精算法的主要思想,最后还阐述了该切片算法的应用。在研究面向对象的度量问题时,人们通过简单的统计方法和基于信息流的方法来度量其中的一些特征,例如基本度量,CK 度量和AoKi 度量等。本文采用一种基于程序切片的方法来度量JAVA 的耦合性问题,通过对JAVA 源程序中存在的耦合关系的度量,我们得到了一种比传统方法更精确的耦合度量方法。本中建立了抽象数据切片和类内切片的概念,然后基于这两种切片讨论了JAVA 语言中存在的内聚问题,通过分析这些切片与数据、方法、类之间的关系来度量数据、方法以及类的内聚性问题。我们从程序切片着手,根据测试人员的需要,通过对源程序进行分层切片来分解程序,把对整个程序的测试按照一定的规则转化成只对程序切片的测试。而且可以保证,两种测试的效果是等价的。以切片为基础来测试程序比单纯的利用数据流分析和控制流分析进行测试要优越得多。
其他文献
唐朝安史乱后的西域主要呈现为吐蕃、回鹘、葛逻禄三方角逐的政治格局。起初 ,以唐朝、回鹘为一方 ,吐蕃、葛逻禄为一方 ,及唐朝退出西域之后 ,吐蕃、葛逻禄的势力日益强大 ,
<正> 关于不对称烯烃与氢卤酸加成的定向问题,大多数情况是符合Markovnikov规则的。即氢离子加在含氢较多的双键碳上,而卤负离子则加在含氢较少的双键碳上。
魔幻现实主义代表作家加西亚·马尔克斯的《百年孤独》是部奇书。象征手法是魔幻现实主义一个重要的表现手段。本文分析了作品中浓郁的象征色彩,它不仅表现在对人物心灵、性
研究非稳态预混爆燃火焰在狭窄通道中传播,对于工业阻火器的设计与应用,以及管道或开敞空间中可燃气体的防燃抑爆等,均具有重要的意义。本文主要针对二维非稳态爆燃火焰在狭
研究了尿素与淀粉的物理混合物在煮浆过程中的反应性能及尿素对淀粉浆液粘度和粘度稳定性的影响 ,分析了尿素用量对淀粉浆液浆膜性能的影响。指出 :尿素具有良好的提高淀粉浆
随着消费电子产业的蓬勃发展,嵌入式系统领域的研究和开发工作也日益活跃。而全系统模拟器作为嵌入式系统领域十分重要的开发工具,也随之得到学术界和工业界的普遍重视。在该
随着计算机的普及和网络技术的提高,电子商务在世界范围内得到日益广泛的应用,数字产品的安全成为学术界和企业界所共同关注的热点。研究数字产品的安全问题有着重大的理论意
钢筋混凝土桥梁是应用非常广泛的一种桥梁结构形式。但是大量混凝土桥梁结构的耐久性问题由于越来越突出,因而日益成为当前土木工程界的研究热点。 论文以大气环境下钢筋