Skip to Main Content
The Unified Modeling Language (UML) is a family of largely visual notations which has become the "lingua franca" of software engineering. In industrial settings the UML is used mainly as a means for facilitating communication between humans and so its visual qualities are decisive for its usefulness and practical value. However, it is rare to see any sort of analysis of the visual qualities and their effectiveness. Also, since the UML is continually evolving, some guidelines and criteria to help analyse any changes or additional proposed notations would be beneficial. Building on some basic frameworks and design criteria, we develop some principles for effective design, especially when considering languages with vague semantics. We use this to identify a number of problems of the UML that show up in the diagrammatic representation of models and propose improvements which overcome these difficulties. The methodology is applicable for analysing other complex languages with vague semantics in order to try to reduce human errors.