在我的公司内部,我们有许多分布式系统,由不同的开发团队维护。跟踪这些系统之间的依赖关系和通信变得越来越困难:
理想的是某种分层图软件,我可以点击一个"系统" (这实际上可能对应于整个开发团队)和"放大"表示该系统中组件的其他图表。此外,理想情况下,这将是一个" live"图表,其中包含即时提供拓扑信息的流程。
有没有人知道满足这些要求中的一个或两个的任何应用程序/库(最好是Java)?
答案 0 :(得分:4)
我想您希望拥有一个如movie所示的系统,能够概述整个系统架构并深入了解各个组件。这似乎是一个商业解决方案,但您可以从中获得一些想法。
我假设您已经知道/使用以下工具:
就数据可视化而言:
为了拥有自动更新的图表,您可以在代码中添加自定义Java注释。通过这些注释,您可以标记一些重要的组件和通信接口以及一些元数据。然后你可以编写一个简单的解析器,它将为GraphViz或d3.js生成输出,你就拥有了所需的文档。
答案 1 :(得分:2)
我们使用yFiles库来可视化网络拓扑和UML图。使用它创建交互式“向下钻取”图表非常容易。复杂的系统可以被文件夹节点隐藏,可以随时打开/关闭。基于某个节点生成新的图形/图表听起来似乎也是合理的。它附带详细的文档和大量的演示代码。
但是有一个缺点。除非您是学术研究员,否则它附带商业许可证(您必须付费)。
免责声明:我不是yFiles的开发者,也不隶属于他们。