当前位置 —论文本科论文— 范文

程序类论文范文数据库,与程序切片技术在程序理解中的应用相关论文的格式

本论文是一篇程序类论文的格式,关于程序切片技术在程序理解中的应用相关毕业论文模板范文。免费优秀的关于程序及切片及软件工程方面论文范文资料,适合程序论文写作的大学硕士及本科毕业论文开题报告范文和学术职称论文参考文献下载。

#30340;静态信息.Rigi的一个重要功能就是,可过滤掉用户不感兴趣的信息,但却不支持对程序源代码文本的直接搜索功能的实现.

2程序切片

21程序切片定义

程序切片概念是由Weiser于1979年在其博士论文中首次提出[3].Weiser等人通过对程序源代码的分析以及对控制流程图(CFG)的研究发现,程序的某一输出只与源程序中的部分语句相关,即使删除其它语句也不会影响这一输出结果.这个发现表明,对该输出来说,源程序和删除无关语句后得到的可执行程序在语义上是一致的.Weiser等人即将这种只与某个输出有关的语句段落所构成的程序,称为源程序的一种切片[4].由数类实践可知,程序切片技术在软件分析、理解、调试、测试、度量、重用、软件质量保证、逆向工程等许多方面已经获得广泛的应用,并获得良好应用效果.

22程序切片分类

目前,程序切片主要分成以下三类,分析如下.

(1)静态切片.是指在计算程序切片时,不需考虑程序运行时候的具体输入,只是采用静态分析法,对由程序源代码所得到的程序切片展开分析.该切片方法对程序的输入通常不作任何假设,而是要考虑程序中能够执行的所有轨迹,故而计算量较大.静态切片的例子如图1(a)所示.

(2)动态切片.在考虑特定输入情况下,需要采用动态分析方法计算得到程序的动态切片.因此,动态切片的计算过程依赖于程序的特定输入,计算时需利用程序中的某一特定执行路径,计算工作量也较静态切片小上很多.

(3)条件切片.由于静态切片得到的切片结果过于宽泛,而动态切片得到的结果又过于精细,因此在计算条件切片时,可增加一个附加条件,只有满足这个条件的输入才能进入分析,这样就很好避免了切片结果过于宽泛和精细问题.条件切片示例如图1(b)所示.

23程序切片工具

(1)Wisconsin.是一个支持对C程序进行静态切片的实用工具,主要包括三大功能:前向切片、后向切片和消片.同时,还提供生成控制流图和函数调用图等程序相关的设计图.与其他C语言分析工具类似,Wisconsin也会将源程序代码转换为合适的中间代码表示形式,以方便其后的程序切片工作进程.

(2)ChopShop.是由CarnegieMellon大学计算机科学学院开发的一种逆向工程工具,能帮助程序员理解还不曾熟悉的C程序代码.该工具采用了一种新算法,即静态程序切片的模块产生机制,藉此而成为一种全新的数据流分析技术.这种算法的采用使得生成结果比标准形式的切片更容易达成逻辑理解.ChopShop完全遵守ANSI标准,可以产生两种形式的切片结果:文本形式和图形化形式,而且还可以对结果进行分析并提供程序语言特性的处理功能.值得一提的是,ChopShop还是首个为过程提供数据抽象机制的程序切片工具.

(3)Ghinsu.是由Florida大学计算机和信息科学系主体研发,并得到软件工程研究中心(SERC)提供基金赞助的一个项目,在其中集成了众多辅助工具的程序切片系统,可用于软件工程的诸多活动中,重点是在维护活动过程中发挥一些辅助作用.只是迄至目前为止,该系统仅仅支持C语言,并不支持其他语言.

(4)Unravel.是一个原型程序切片工具,可以对标准C程序源代码实施静态程序切片.该项目得到美国核控制委员会(NRC)和国家通信系统(NCS)的指定基金的鼎力援助.Unravel可以对程序切片进行组合和逻辑集合操作,通过这些操作可以识别在计算中至少出现一次的代码.这些daima信息对描述高级集成软件重要且实用,因为包含在这种代码中的一次失败就可能导致软件中多个逻辑构件的故障[5].

(5)PSS/Ada.是由杨洪等人设计完成的一个Ada程序的静态切片生成系统.该系统可以对Ada程序进行静态数据依赖分析和控制依赖分析,并可通过这些分析结果得出Ada程序语句间存在的波动效应,相应地生成特殊形式的Ada程序切片.这一切片是从Ada程序中抽取某些语句、并以相同顺序重新组成的—个新程序段.PSS/Ada系统是一个可以实现Ada软件的测试、排错、分析、理解和维护的有效工具,在Ada程序的并行性检查、波动性分析、复杂性度量等方面也提供一定层次的支持力度.另外,PSS/Ada系统作为对Ada程序设计支持环境APSE的工具集的扩充,也进一步丰富了Ada软件的开发环境[5].


本文来自 http://www.sxsky.net/benkelunwen/060206494.html

3结束语

作为一种程序理解的方法,程序切片其实就是基于原始程序而构造的一个删减版本,切片计算时,需删减程序中与兴趣点无关的部分,从而能够

关于程序切片技术在程序理解中的应用的毕业论文模板范文
程序类论文范文数据库
将关键、分散的变量由原本复杂的程序中提取出来,进而组成新的程序片段.通过对这一片段展开具体分析,可以得到所关注变量与其他变量之间的联系,从而加速实现对程序的全面、精准理解.

参考文献:

[1]丁剑洁,鱼滨,侯红.软件维护中程序理解的应用与研究[J].计算机技术与发展.2007(4):218-219.

[2]李莹,张琴燕.程序理解[J].计算机应用研究,2001(6):41-43.

[3]WEISERM.Programslicing[J].IEEETransSoftwareEng,1994,10(4):352-357.

[4]李必信,郑国梁,王云峰,等.一种分析和理解程序的方法——程序切片[J].计算机应用与发展,2000(3):284-285.

[5]李必信.程序切片技术及其在面向对象软件定量和软件测试中的应用[D].南京:南京大学,2000:6-18.

1 2

程序类论文范文数据库,与程序切片技术在程序理解中的应用相关论文的格式参考文献资料:

本科日语毕业论文

本科自考科目有哪些

农学本科就业

大学本科函授

本科毕业设计

自考本科论文范文

自考本科院校及专业

可以自考本科吗

自考本科要考多少门

本科历史论文

程序切片技术在程序理解中的应用(2)WORD版本 下载地址