At a basic level, you can use pen and paper to sketch out your UML diagrams. However, there is a good selection of software-based tools that will let you take things a step further by turning the diagram into basic code or vice versa. For example, a class diagram (which we will cover in detail later) describes the structure of various classes and their relationships. A properly constructed class diagram can be used to generate the classes represented by the diagram. Since the UML is a programming language agnostic tool, it is up to the UML authoring tool you are using whether a converter for your language of choice exists. If you look at UML diagramming tools, you will find that nearly all of them support Java. Your selection narrows if you are looking for a tool that is capable of generating PHP 5+ compliant PHP code. However, such tools are definitely available and we will be working with one later on in the chapter.
If supported by the tool, it is also possible...