AspectJ的分析及其在逆向工程中的应用

AspectJ的分析及其在逆向工程中的应用

论文题目: AspectJ的分析及其在逆向工程中的应用

论文类型: 硕士论文

论文专业: 软件工程

作者: 马骕

导师: 陈平,毛少杰

关键词: 逆向工程,横切,横切关注点

文献来源: 西安电子科技大学

发表年度: 2005

论文摘要: 软件工程是提高软件系统的开发质量、开发速度,降低开发成本的有效途径。但就目前而言,软件系统开发的大部分时间与精力都耗费在维护已有系统,而不是开发新系统上。本文是“十五”军事电子预研项目“系统应用软件逆向工程开发工具研究”中的一部分。面向对象的编程方式OOP(Object - Oriented Programming)技术的出现能更好地处理一般行为,但是,OOP不能很好地处理跨越多个——经常是不相关的模块行为。此时,AOP(Aspect-Oriented Programming)的应运而生,能利用模块化来分离软件中横切多模块的关注点。AOP的开发环境——AspectJ工具,它是Java语言的扩展,提供了一整套的语法,能够清楚地描述横切关注点,并将其植入到Java源代码中。本文就是利用AspectJ实现信息的提取,作为AOP具体实现之一的AspectJ对Java程序进行分析,将所需的各种信息提取出来,用已定义的格式表示并保存到文本文件,并将保存的文件提供给下一个功能模块进行格式转化。该功能的输入为Java语言实现程序,输出为文本文件,文本文件作为下一步信息转化的输入。要提取的基本信息包括调用、返回和返回值三个方面,都是程序在运行过程中产生的动态信息,记录的是本次运行时出现的各种关系,与每次运行的实际情况有关,所以每次运行时提取到的信息都有可能是不相同的。最后实验及测试结果表明:利用AspectJ对Java程序进行分析之后,可以收集到程序当中的基本信息,为调用、返回及返回值信息。具体包括进程号、关键字、主调函数名、被调函数所在的类、被调函数所在的对象以及被调函数。

论文目录:

摘要

Abstract

第一章 绪论

1.1 研究现状

1.1.1 项目背景

1.1.2 相关技术发展现状

1.2 研究目标及论文结构

第二章 相关理论及技术

2.1 逆向工程

2.1.1 逆向工程基本概念

2.1.2 逆向工程基本原理及四种应用

2.1.3 逆向工程规范活动

2.1.4 逆向工程涉及五个不同领域的映射

2.2 UML概述

2.2.1 UML简介

2.2.2 UML的四类视图

2.3 反射技术的研究

2.3.1 反射原理的研究

2.3.2 实现反射的两种技术

第三章 AOP

3.1 简介

3.2 AOP语言剖析

3.2.1 AOP语言规范

3.2.2 AOP语言的实现及开发

3.2.3 分离系统关注点

3.3 AOP系统分析机制

3.3.1 AOP特性

3.3.2 系统分析机制

第四章 ASPECTJ的分析

4.1 ASPECTJ简介

4.1.1 动态连接点模型

4.1.2 切点

4.1.3 通知

4.1.4 类型间声明

4.1.5 方面

4.2 ASPECTJ的结构分析

4.3 ASPECTJ应用范围

4.3.1 开发型方面(Development Aspects)

4.3.2 产品型方面(Production Aspects)

4.4 THE ASPECTJ LANGUAGE

4.4.1 分析方面(The Anatomy of an Aspect)

4.4.2 一个HandleLiveness例子

4.5 JAVA和ASPECTJ

4.6 AOP和ASPECTJ

4.7 ASPECTJ对逆向工程的支持

第五章 利用ASPECTJ进行静态分析与动态分析

5.1 研制工具概述

5.2 系统需求分析

5.3 静态解析与植入机制的设计与实现

5.3.1 静态解析

5.3.2 软件触发器

5.3.3 交互子系统与植入子系统之间的接口

5.3.4 静态解析与植入的设计

5.3.5 静态解析与植入的实现

5.4 研究扩展后新的INFOCATCH

第六章 范例

6.1 基本信息的获取

6.2 新INFOCATCH中信息的获取

第七章 结束语

致谢

参考文献

研究成果

发布时间: 2010-08-25

参考文献

  • [1].面向方面程序指向分析工具的设计与实现[D]. 孙强.上海交通大学2009
  • [2].AspectJ程序的重构方法研究[D]. 李蕊.吉林大学2005
  • [3].基于AspectJ的Java程序切片系统的设计与实现[D]. 张红英.西安电子科技大学2005
  • [4].AspectJ在Java单元测试中的应用研究[D]. 卢佳伟.重庆大学2016
  • [5].支持递增式AOSD的AspectJ源码编织器的设计与实现[D]. 刘钊夏.暨南大学2010
  • [6].基于XML描述AOP切入点的研究和实现[D]. 朱奇.上海交通大学2008
  • [7].基于AOP的逆向工程框架及工具的研究[D]. 王振锋.西安电子科技大学2005
  • [8].基于AspectJ的通用Java应用的码流追踪分析系统[D]. 刘晓琴.北京邮电大学2014
  • [9].从命名切入点到分析切入点的自动转换[D]. 王林.天津大学2012
  • [10].面向方面的数字图书馆开发[D]. 贾杏丹.广东工业大学2006

相关论文

  • [1].基于AOP和Web服务的多层软件应用架构研究[D]. 孟凡新.河北工程大学2009
  • [2].一种监控探针描述语言及其编译器的设计与实现[D]. 王涛.国防科学技术大学2009
  • [3].支持递增式AOSD的AspectJ源码编织器的设计与实现[D]. 刘钊夏.暨南大学2010
  • [4].基于AOP的应用软件监控技术研究[D]. 徐理.国防科学技术大学2008
  • [5].面向方面软件的测试用例排序技术[D]. 马曾凯.上海交通大学2009
  • [6].面向方面程序调用图分析工具的设计与实现[D]. 李楠.上海交通大学2007
  • [7].基于AOP的设计模式的研究和应用[D]. 邓浩.武汉理工大学2007
  • [8].AspectJ程序的重构方法研究[D]. 李蕊.吉林大学2005
  • [9].基于AspectJ的Java程序切片系统的设计与实现[D]. 张红英.西安电子科技大学2005
  • [10].基于AOP技术的监控组态软件研究与设计[D]. 王雪松.电子科技大学2006

标签:;  ;  ;  

AspectJ的分析及其在逆向工程中的应用
下载Doc文档

猜你喜欢