UML diagrams provide a graphical representation of an application's structure and processing. These representations can be helpful in that they accelerate understanding of the application.
This page provides information on various tools that can be used to generate UML diagrams that illustrate Magnolia CMS as well as recommendations for especially useful diagrams and generating the diagrams.
As stated in the Introduction to UML, there are three types of UML diagrams: structure, behavior, and interaction. Useful structure diagrams for Magnolia CMS include class, object, component, composite structure, and package. Useful behavior diagrams include activity. Useful interaction diagrams include sequence and communication (or collaboration). The Wiki's UML article and the Kennesaw's UML Tutorial provide descriptions and examples of these and other UML diagrams.
MyEclipse UML 2 is recommended for generating class diagrams of the Magnolia CMS code.
The following tools were also evaluated but are not recommended due to not being an Eclipse plugin, low ratings, not free, or not performing as expected: Solution BluePrint, Javadoc as UML View, ModelGoon UML 4, Coffea, UML Lab, MagicDraw, AgileJ StructureViews, Slime UML, MaintainJ, EclipseUML, jSonde, Green, UModel, Rational, Visual Paradigm, eUML2.
To install MyEclipse UML 2:
- Add software site to http://downloads.myeclipseide.com/downloads/products/eworkbench/helios/enterprise-earlyaccess/ in Eclipse.
- Deselect Maven Support for MyEclipse (this conflicts with the Maven Support needed for the development environment) and Spring AJDT Extension during installation. To create class diagrams:
- Click New>Other>MyEclipse>UML>UML1 Model.
- Open created model.
- Add classes to model by doing one of the following:
- Drag class from Package Explorer to model.
- Click UML>Reverse Engineer UML from Java in Eclipse. A class can be added to the class diagram created this way by dragging the class from Package Explorer.
A portion of the class diagram for
info.magnolia.cms.core is shown here.