Introducing the UML

The UML is an Object Modelling Group (OMG) standard that acts as a means of communication in the object-oriented (OO) arena. It defines a notation that consists of graphical elements you can use in UML models. In other words, the notation is the syntax of the modelling language. A meta-model defines the actual notation, and this is normally represented as a class diagram. The meta-model can help you ensure that your models are well formed—that is, that they are syntactically correct.

Note

You can discover more about the UML and the work of the OMG by visiting http://www.uml.org.


Although the UML standard defines how you represent items, it does not stipulate the process you use to create models. In other words, the UML does not dictate what steps you must take to create a model; however, processes do exist that you can use, such as the Rational Unified Process (RUP). Alternatively, you can use your own process, which implements parts of the UML, that suit your particular needs.

Note

You can learn about the RUP and how it relates to the UML by visiting http://www.rational.com.


At this point, you might wonder why you should take the time to learn and use the UML. There are a number of very good reasons to use the UML, including the following:

  • It is less verbose than ideas communicated through natural language.

  • It is quicker to write and modify than ideas expressed in code.

  • It is independent of programming languages, so people can understand it regardless of their programming backgrounds.

  • It aids good OO design and helps exploit the features of OO programming languages.

  • It is a universal standard, so anyone that learns it can understand models created by others.

In addition to these advantages, different people can use the UML in different scenarios. This appendix will often discuss UML models in three different scenarios or levels, which were originally suggested by Fowler and Scott (UML Distilled, Second Edition: 1999):

  • Conceptual levelLooks at the domain in terms of concepts, with no regard to actual software

  • Specification levelLooks at the software in terms of its interfaces

  • Implementation levelLooks at the actual classes of the software

Working at a conceptual level allows you to develop and modify models very quickly. Typically, you can work at this level and then progress your models to either the specification level or implementation level. In practice, it is generally better to work at the specification level before the implementation level, so that you end up coding classes to interfaces rather than the other way around. Remember though, that these are simply suggestions because the UML does not define a rigid process for creating models.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
13.58.44.229