J2EE的应用软件静态模型重构技术的研究.docVIP

J2EE的应用软件静态模型重构技术的研究.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
J2EE的应用软件静态模型重构技术的研究

J2EE的应用软件静态模型重构技术的研究   摘要:给出了J2EE应用软件静态模型的详细描述,并提出一种利用静态分析技术自动重构J2EE应用软件静态模型的方法,实现了原型工具,有效地帮助用户分析、理解、测试J2EE应用软件系统。最后通过一个实例描述模型的建立过程。   关键词:J2EE静态模型; J2EE构件; 逆向工程   中图分类号:TP311.5文献标志码:A   文章编号:1001-3695(2007)11-0196-04      0引言??      随着J2EE技术的发展,J2EE应用软件使用范围不断扩大,有效地帮助企业、用户完成较大规模的应用。但是,随着企业应用的日益复杂和多元化,J2EE应用软件日益庞大,在软件的维护和扩展过程中,对软件的分析理解、测试都很复杂,甚至难以进行,特别是随着时间的推移,应用软件相关文档可能会发生遗失,使软件的理解更加困难。因此需要一种针对J2EE应用软件的理解与建模工具,重构J2EE应用软件的模型,帮助用户分析、理解J2EE应用软件的组成和结构。另外,生成的模型可以为利用模型驱动测试技术测试J2EE应用系统提供测试模型建立依据,甚至可以直接转换为测试模型[1]。??   从广义上讲,这属于逆向工程[2]研究的范畴。目前,逆向工程的研究大都集中在通过对组成应用软件的类级代码分析生成体系结构模型,以UML类图、活动图等形式表现,对J2EE应用软件的逆向工程研究比较少。文献[3]提出利用北京航空航天大学软件工程研究所QESat/Java软件分析与测试工具通过对应用系统进行分析,得到系统的类视图、关系视图等。文献[4,5]给出了描述J2EE应用软件组成的四种视图,即导航视图、概念视图、模块视图、执行视图,通过它们来显示J2EE应用系统的结构。这些研究在一定程度上给出了建立J2EE应用软件模型以及对模型进行重构的方法。但J2EE应用软件必须运行在特定的容器中,对其动态运行模型的捕捉不仅需要将完整的系统部署到容器中,还要在容器、系统中注入跟踪方法。因此很难控制和捕捉,得到模型的正确性也受到容器和输入的影响。静态模型中记录的软件组成、结构、功能信息为理解、分析软件提供了充分的信息。本文主要考虑软件静态模型的重构问题。目前已有的静态模型,一般是从UML图的角度出发考虑类及方法调用关系。在文献[4,5]中虽然给出了四种视图表现模型概念,但是在静态模型方面只表现了类、构件内部的静态关系,对于构件中的耦合、软件的整体组织都没有完整地表示。另一方面,目前存在的重构方法,一般是将对J2EE构件的分析转换成对类文件的分析,但是J2EE应用软件的组成单元内部都有特定的组织形式,各个单元之间的耦合关系也不尽相同。因此这种方法会丢失部分信息,得到的模型并不完整。??   针对以上问题,本文以J2EE规范和现有模型理论为基础,分析J2EE应用软件的编码规则和结构特点,给出了J2EE应用软件静态模型的完整描述,并提出了自动重构J2EE应用软件静态模型的方法。本方法根据J2EE软件静态模型的特点,对目标J2EE应用软件进行完整的静态分析,识别J2EE应用软件的组成构件,逐步生成J2EE应用软件的静态模型,为理解程序和构件的结构提供帮助。??      1J2EE应用软件静态模型概述??      1.1J2EE应用软件概述??   J2EE是用于建立服务器方应用程序的一种系统平台[3],为企业应用提供了一个多层结构的分布式应用程序模型。应用程序逻辑根据其实现的不同功能被封装到不同的构件中。构件是对外提供一组规约化接口的、符合一定标准的、可替换的软件系统的程序模块。J2EE规范中规定,J2EE构件包含JSP、Servlet、EJB等。其中:JSP和Servlet构件可以动态处理用户的各种请求并作出响应,运行在Web容器中,属于Web层构件;EJB构件负责处理各种业务逻辑,运行在业务层。每个EJB构件都必须遵守EJB API的规定。按照EJB实现的模式不同,EJB又分为会话Bean、实体Bean和消息驱动Bean。??   J2EE规范规定J2EE应用软件必须包含Java类文件和部署文件等。其中:Java类文件完成软件的主要功能;部署文件则记录构件的各种信息,容器通过读取部署文件运行构件。??   1.2J2EE应用软件静态模型??   为重构J2EE应用程序静态模型,首先引入J2EE静态模型的定义和基本的表现形式。静态模型是在不需要运行软件的情况下,对程序结构、程序的组织等信息的描述,包括包、类、属性、方法、类之间的各种相互关系、方法之间的调用关系、各种复杂度等;这些信息一般可通过分析软件程序获得。本文根据J2EE应用程序的特点以及组成结构,根据文献[4,5]中静态模型相关的内容并加以

文档评论(0)

3471161553 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档