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.

UML introduction

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.

UML tools

MyEclipse UML 2 is recommended for generating class diagrams of the Magnolia CMS code.

After the initial evaluation, it was discovered that this plugin is an evaluation for a period of 30 days.

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.

Generation recommendation

To install MyEclipse UML 2:

  1. Add software site to in Eclipse.
  2. Deselect Maven Support for MyEclipse (this conflicts with the Maven Support needed for the development environment) and Spring AJDT Extension during installation.

    MyEclipse does not cleanly uninstall from Eclipse once it is installed. The MyEclipse perspective remains as well as the WTPJavaEE perspective.

    To create class diagrams:
  3. Click New>Other>MyEclipse>UML>UML1 Model.
  4. Open created model.
  5. Add classes to model by doing one of the following:
    1. Drag class from Package Explorer to model.
    2. 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.


  1. Please shorten to list to top three per user ratings. Then use selection criteria:

    • Must be available as Eclipse plugin. No standalone tools or huge downloads
    • Simplicity, ease of use
    • Free
    1. Removed known non-plugins, non-free, low ratings, and/or didn't work.