UMLGraph facilitates the declarative specification and drawing of UML class and sequence diagrams. One can specify a class design using the Java syntax complemented by Javadoc tags. Running the UmlGraph doclet on the specification generates a Graphviz diagram specification that can be automatically processed to create Postscript, GIF, SVG, JPEG, fig, or Framemaker drawings. Similarly, sequence diagrams are specified using declarative pic macros and compiled with the GNU plotutils pic2plot program into a PNG, PNM, (pseudo) GIF, SVG, AI, Postscript, CGM, FIG, PCL, HPGL, Regis, or TEK drawing.
The Isotrol DocGen BOUML plugout is a practical tool to update the OpenUP-based documentation of your project dynamically. DocGen extracts texts and diagrams from a BOUML project and inserts them in an OpenOffice.org Writer document. It's preconfigured with a generic project template and three definition files for Analysis, Design, and Architecture OpenUP-based documents. You can also insert predefined tables and link external images to embed them into the document. You can define your own template and file definitions. It's as easy as writing an OpenOffice.org Writer document and designing your own page format, cover, index page, headings styles, variables, etc. Afterwards, you create an XML file pointing to the parts of the BOUML project with the contents.
This class can be used to generate UML diagrams from PHP code using GraphML. It traverses a given directory to locate and parse PHP files. It scans the files for classes and their variables functions. The class can generate UML diagrams in the GraphML format from the classes that were found.
SDMetrics Core is a Java library to calculate metrics of structural design properties such as coupling, size, and complexity for UML designs. It also checks design rules to automatically detect incomplete or incorrect design, and adherence to style guidelines such as circular dependencies or naming conventions. The library provides an XMI parser for import of XMI 1.x files with UML1.3/1.4 models, and XMI 2.0/2.1 files with UML 2.x models. Design metrics, rules, and XMI import are highly customizable.
Umple can be used for pure UML modeling. Or it can be used to add UML constructs, such as associations and state machines to code written in Java, PHP, or Ruby. It generates code in these languages that can save a large amount of programming effort and result in higher quality. The UmpleOnline tool allows you to edit UML diagrams graphically, and watch the Umple textual code being written in real time. This works the other way too: you can write textual Umple and watch the corresponding UML diagram appear. Umple is being extended to support patterns, tracing, and a variety of other features. Umple is written in itself, which is central to maintaining its quality. Umple can be used today by any programmer or modeler.