The Unified Modeling Language (UML) is a general, notational language for specifying and visualizing complex software. It is ideal for large object-oriented projects.