„The Uniﬁed Modeling Language (UML) is a general-purpose visual modeling language that is used to specify, visualize, construct, and document the artifacts of a software system. It captures decisions and understanding about systems that must be constructed. It is used to understand, design, browse, conﬁgure, maintain, and control information about such systems. It is intended for use with all development methods, lifecycle stages, application domains, and media. The modeling language is intended to unify past experience about modeling techniques and to incorporate current software best practices into a standard approach. UML includes semantic concepts, notation, and guidelines. It has static, dynamic, environmental, and organizational parts. It is intended to be supported by interactive visual modeling tools that have code generators and report writers. The UML speciﬁcation does not deﬁne a standard process but is intended to be useful with an iterative development process. It is intended to support most existing object-oriented development processes.“
— Ivar Jacobson Swedish computer scientist 1939
James Rumbaugh, Ivar Jacobson, & Grady Booch (1999) The Unified Modeling Language Reference Manual. p. 1.