面向方面程序调用图分析工具的设计与实现

面向方面程序调用图分析工具的设计与实现

论文摘要

多年以来,面向对象编程(Object-Oriented Programming,OOP)作为软件开发领域的主要编程范式,大大提高了软件代码的模块性、可重用性,降低了软件的复杂度以及软件的维护成本。然而随着面向对象编程的不断发展,它所带来的代码分散(code scattering)和代码纠缠(code tangling)问题也日益严重。面向方面编程(Aspect-Oriented Programming,AOP)是在面向对象编程基础上提出的一种较新的编程范式。它可以很好地解决代码分散和代码纠缠问题,使系统易于设计和扩展,提高了代码开发的质量和效率以及代码产品的模块性和可重用性。作为一种新的编程范式,面向方面程序的程序分析、程序理解、软件测试、软件维护等方面还有许多待研究的课题。调用图(call graph)分析作为程序分析、程序理解、软件测试和软件维护的重要基础,也是其中的一个重要的研究课题。本文以面向对象程序的调用图生成算法为基础,以面向方面编程语言AspectJ语言作为研究对象,提出了三种不同精度的针对AspectJ程序的调用图生成算法CHA-AJ算法、RTA-AJ算法和VTA-AJ算法,同时也提出了针对面向方面程序调用图的图示表示法AJPresentation,大大提高了调用图的

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 背景介绍
  • 1.2 课题的研究意义
  • 1.3 国内外研究现状
  • 1.4 论文基本思想和成果
  • 1.5 论文组织结构
  • 第二章 面向对象程序调用图的生成算法
  • 2.1 概述
  • 2.2 RA(NAME-BASED RESOLUTION)算法
  • 2.3 CHA(CLASS HIERARCHY ANALYSIS)算法
  • 2.4 RTA(RAPID TYPE ANALYSIS)算法
  • 2.5 VTA(VARIABLE TYPE ANALYSIS)算法
  • 2.6 示例
  • 2.7 本章小结
  • 第三章 面向方面程序的语言分析及解决方案
  • 3.1 概述
  • 3.2 ASPECTJ 语言特点分析
  • 3.3 ASPECTJ 语言的调用图影响元素分析
  • 3.4 本章小结
  • 第四章 面向方面程序调用图生成算法设计
  • 4.1 算法设计基础
  • 4.2 算法设计
  • 4.3 示例
  • 4.4 本章小结
  • 第五章 面向方面程序调用图的图示表示法
  • 5.1 面向对象程序调用图的图示表示法概述
  • 5.2 面向方面程序调用图的图示表示法的基本思想
  • 5.3 示例
  • 5.4 本章小结
  • 第六章 面向方面程序调用图分析工具ACGAG 的设计与实现
  • 6.1 ACGAG 系统的总体结构
  • 6.2 ACGAG 系统的总体设计
  • 6.3 各子系统的设计与实现
  • 6.4 本章小结
  • 第七章 实验评估
  • 7.1 概述
  • 7.2 实验设计
  • 7.3 实验示例程序
  • 7.4 实验结果与评估
  • 7.5 本章小结
  • 第八章 总结
  • 8.1 本文主要贡献
  • 8.2 研究展望
  • 参考文献
  • 致谢
  • 攻读硕士学位期间发表论文情况
  • 相关论文文献

    标签:;  ;  ;  ;  

    面向方面程序调用图分析工具的设计与实现
    下载Doc文档

    猜你喜欢