Chapter 1
Preamble

In front of the wide range of possibilities given by the PGF/TikZ library, and in front of the apparent lack of dedicated packages to UML diagrams, except to one specific diagram, such as pgf-umlcd (for class diagrams) and pgf-umlsd (for sequence diagrams), I was to develop the TikZ-UML package, with a set of specialized commands and environments for these diagrams. It is dedicated to succeed pst-uml package, that was developped for similar reasons in PSTricks. Actually, the package contains definitions of complete class diagrams, use case diagrams, sequence diagrams, state diagrams and component diagrams in a quite easy way. Some improvements are still needed, but it is near the final release.

Here is an example of class diagram you can draw:

pict

We will now show you the various functionnalities of TikZ-UML , but before we will talk about packages dependencies and installation of TikZ-UML .

1.1 Dependencies

1.1.1 Required packages

tikz:
It is useless to present this extremely powerful and complete drawing package. Every diagram generated by TikZ-UML is in fact generated by TikZ . It also gives some packages and libraries used by TikZ-UML , such as the backgrounds, arrows, shapes, fit, shadows, decorations.markings libraries and the pgfkeys package that manages macros options.
ifthen:
This package offers the management of conditional test, such as if …then …else …
xstring:
This package offers string substitutions. It is used for the management of names between programmation items (classes, states, packages, …) and and the nodes representing them.
calc:
This package offers easy access to calculations.
pgfopts:
This package is an add-on of the pgfkeys package for the management of packages and classes options.

For still unknown reasons, TikZ-UML works fine if you have already included the babel package with the language of your choice.

1.2 Installation

Coming soon