Stop Thinking, Just Do!

Sung-Soo Kim's Blog

UML Tools for Python


21 March 2018

UML Tools for Python

  • PyUML is an open source Eclipse plug-in offering round trip engineering betwee UML and Python.UML support is limited to class diagrams and the code-generation capabilities are simple class to class (or interface to interface) transformations
  • Epydoc : Generate UML documentation from python code (last release on 2008)
  • PyNSource : Reverse engineer python source code into UML. Generated UML class diagrams can be displayed as ASCII Art or in a more typical graphical form.
  • Lumpy : Python module that generates UML diagrams (currently object and class diagrams) from a running Python program. It is similar to a graphical debugger in the sense that it generates a visualization of the state of a running program, but it is different from a debugger in the sense that it tries to generate high-level visualizations that are compliant (at least in spirit) with standard UML
  • ObjectDomain : commercial tool with forward and reverse engineering support for Python.
  • argoUML-python seems (seemed?) to go in the same direction but it is not quite there yet.
  • GraphModels (django-command-extensions) creates a UML-like GraphViz dot file for the specified app name
  • Pyreverse included in the Pylint source distribution (for the analysis of the quality of python code) creates UML diagrams from the code
  • pywebuml uses graphviz to create a UML class diagram representing your python (and also Java and C#) code.

comments powered by Disqus