是否有工具可以创建:
- 来自源代码的 UML 结构图。
- 在 arm / x86 系统上执行的二进制的 UML 行为图。
来源将在 C &/ C++ &/ Python 中。
这些工具将在 Linux 平台上重新设计(理解现有软件并修改它)的同时提高生产力。
是否有工具可以创建:
这些工具将在 Linux 平台上重新设计(理解现有软件并修改它)的同时提高生产力。
我有时在建模 C 程序方面做了一些工作,我以这篇文章为起点,
http://www.drdobbs.com/uml-for-c-programmers/184401948
然后评估了几个ide,发现EA最合适,IBM RSA对建模C程序有很好的支持。
但是,您需要做的是,制定一种在 UML 中建模 C 程序的方法,然后遵循它,这是因为 C 不是面向对象的语言,而 UML 本质上是面向对象的,我们需要设计如何表示 C 构造在 UML 中。
希望这对 C 有帮助,因为 C++ EA 和RSA的逆向工程工作良好,并且不需要像 C 那样做太多努力。
几乎所有主要工具都会获取源文件/目录并生成命名空间(一个包)、类和接口定义、属性、属性和操作签名。适用于多种语言。
然而,并不是所有的依赖关系或类之间的所有关系都会被发现,因为操作定义体没有被解析,因此操作的活动模型不能被派生(或其活动图)。
Microsoft 在 Visual Studio 2010(我相信,直到 2015 年)中为编辑器中选择的任何操作包含了一个操作到序列图生成器。它已被删除,可能是因为它仅限于托管语言。
要导出状态机模型/图表,还需要了解源中最初采用的编码约定是有意义的。也许这是机器学习可能会产生影响的领域。
协作图已从 UML 中删除。
我很惊讶供应商、EA、MagicDraw,甚至 Java 的 Eclipse Papyrus 都没有采用解析操作体。
希望有帮助,问候