Java 层次/链接图

Java 层次/链接图,java,graphics,visio,gliffy,Java,Graphics,Visio,Gliffy,在我的公司里,我们有许多分布式系统,它们由不同的开发团队维护。跟踪这些系统之间的依赖关系和通信变得越来越困难: 由于复杂程度太高,不可能绘制单一图表 Gliffy或Visio等工具生成的静态图表很快就会过时 理想的情况是某种层次图软件,我可以点击“系统”(实际上可能对应于整个开发团队)并“放大”到表示该系统中组件的其他图。此外,理想情况下,这将是一个“实时”图,其中进程动态提供拓扑信息 是否有人知道有任何应用程序/库(最好是Java)能够满足其中一项或两项要求?我想您希望有一个如中所示的系统

在我的公司里,我们有许多分布式系统,它们由不同的开发团队维护。跟踪这些系统之间的依赖关系和通信变得越来越困难:

  • 由于复杂程度太高,不可能绘制单一图表
  • Gliffy或Visio等工具生成的静态图表很快就会过时
理想的情况是某种层次图软件,我可以点击“系统”(实际上可能对应于整个开发团队)并“放大”到表示该系统中组件的其他图。此外,理想情况下,这将是一个“实时”图,其中进程动态提供拓扑信息


是否有人知道有任何应用程序/库(最好是Java)能够满足其中一项或两项要求?

我想您希望有一个如中所示的系统,能够概述整个系统体系结构并深入到各个组件。这似乎是一个商业解决方案,但您可以从中获得一些想法

我假设您已经知道/使用以下工具:

  • -在这里,您可以筛选要在图表上显示的包,并自动验证依赖关系规则
  • -商业工具。允许深入查看依赖关系图
就数据可视化而言:

  • -非常棒的数据可视化库。您可以轻松创建可缩放的图表:
  • -图形可视化软件
  • -由@MadProgrammer提及
为了拥有自动更新的图表,您可以向代码中添加自定义java注释。通过这些注释,您可以标记一些重要组件和通信接口以及一些元数据。然后,您可以编写一个简单的解析器,它将为GraphViz或d3.js生成输出,您将获得所需的文档。

我们使用库来可视化网络拓扑和UML图。使用它创建交互式的“深入”图表非常容易。文件夹节点可以隐藏复杂系统,可以随时打开/关闭。基于某些节点生成一个新的图形/图表听起来也很有道理。它附带了详细的文档和大量的演示代码

不过也有不利的一面。除非你是一名学术研究人员,否则它附带商业许可证(你必须为此付费)


免责声明:我不是yFiles的开发人员,也不是他们的下属。

你看了吗?谢谢-会看一看(如果你作为答案发布,我会向上投票)。Maaybe Gephi:-它似乎面向网络,但可能适用于一般的层次结构图。显然,这个问题离题了,这就引出了一个问题:我在哪里可以获得图书馆推荐书?@Adamski:请参阅和,以获得一些建议。