Wednesday, February 2, 2011

UML

UML or Unified Modeling Language is a very useful tool for software design, particularly for object-oriented programming. UML is a pretty intense way of portraying an idea. According to a UML tutorial there are nine different kinds of modeling diagrams:
In my opinion the class diagrams and the sequence diagrams are the most valuable diagrams. The class diagrams show the breakdown of the program. Each box represents a class. The box is divided into three parts. From top to bottom: Class/Object name, public and private variables and public and private functions. Here is an example:
Arrows link the different modules together showing inheritance or reference. Dotted lines to a box with a dog eared page is a note for the module. There really is an art to the UML language. There are a ton of different symbols and markings. The following shows an example of open arrow heads signifying inheritance:


(The "association" blurb in both pictures is an accident, clicking on the pictures makes them bigger)

There can be extremely complex diagrams done in UML, but personally the most important thing is to use the tool in such a way that it can be understood by others in the field. Learning all of the crazy ins and outs of UML is probably not necessary. The diagram should be like the design itself, clear simple and concise.

No comments:

Post a Comment