Eclipse插件或开源工具,用于对序列图的Java代码进行反向工程

时间:2010-06-04 09:00:02

标签: java eclipse uml reverse-engineering sequence-diagram

我正在寻找一个eclipse插件或一个开源工具来反向设计序列图。我尝试使用Alto UML,但它只是给出了所选类的序列图。我想有一个整个调用堆栈的序列图,包括方法,输入参数和输出句子。

你可以告诉我一些关于这方面的指示吗?谢谢!

6 个答案:

答案 0 :(得分:3)

查看此Wikipedia article比较逆向工程工具。

答案 1 :(得分:3)

Architexa确实有方法的整个调用堆栈的序列图。您会发现,与典型的UML工具不同,Architexa更加以代码为中心,因此可以更好地用于逆向工程。

-Vineet(Architexa创始人)

答案 2 :(得分:1)

(从How to Create Flowchart from java source code in Eclipse重复完整性):

我发现这个Eclipse插件 Flowchart4j V 2.0.0 et

http://www.codeswat.com/

您可以将其用于 流程图 序列图 ,然后将其导出到 MS Visio 。 它只有一个缺点。你必须付钱。

答案 3 :(得分:1)

Diver:逆向工程的动态交互式视图可以解决部分问题。它为Java应用程序提供静态和动态序列图。它不存储输入和输出。

它是Eclipse的一个插件,可以让你:

  • 轻松跟踪Java程序
  • 可视化您的程序的运行时功能
  • 过滤您的痕迹以使其更紧凑
  • 根据运行时发生的情况过滤IDE
  • 查看源代码编辑器中运行的代码

它位于 Github ,还有一个 project web site

完全披露:我是Diver目前的项目负责人

答案 4 :(得分:0)

看一下MoDisco开源eclipse项目MoDisco

答案 5 :(得分:0)

(从How to Create Flowchart from java source code in Eclipse重复完整性):

我不确定是否有插件,但肯定有这样做的技巧。如果没有可用的插件,理论上可以按照这种技术的方法来构建一个插件。想到的一种技巧包含在Atanas Rountev和Beth Harkness Connell的论文Object naming analysis for reverse-engineered sequence diagrams中。

这是摘要:

  

UML序列图通常用于表示软件系统中的对象交互。这项工作考虑了从现有代码中提取UML序列图的问题,以便进行软件理解和测试。这种逆向工程的静态分析需要将交互对象从代码映射到序列图对象。我们提出了一种过程间数据流分析算法,它精确地确定哪些对象是某些消息的接收者,并分配适当的图表对象来表示它们。我们的实验表明,可以准确地确定大多数消息接收器,从而为反向工程序列图提供高度精确的对象命名。