Unified Modeling Language (UML) is a general-purpose notation language for specifying and visualizing complex software, especially large, object-oriented projects. This title addresses the practical issues faced by users in adopting UML. It contains tutorial material to aid learning, and focuses on practical issues in the application of UML.