Stands for "Unified Modeling Language."
UML is an industry-standard modeling language designed to help visualize how a complex software system will work. System architects, software engineers and developers, and other stakeholders use UML to build diagrams using a standard visual language to lay out and document how different parts of a software system will interact. A set of UML diagrams is similar to a set of blueprints for a house. It shows how to build the house using common symbols that the architect, builder, electrician, plumber, and homeowner can all understand enough to fulfill their role.
The UML specification defines 13 types of diagrams in two categories—Structure diagrams, which show the static structure of a system, and Behavior diagrams which show the dynamic interactions between objects in a system. Each of these diagrams shares a set of design elements, with symbols representing certain types of objects, their roles, and how they interact with each other. Objects are linked together, similar to a flow chart, to show relationships and the flow of information.
While UML was designed primarily for object-oriented software design, it is also useful when modeling non-software systems. Certain types of UML diagrams can model manufacturing processes, hardware design, or other processes where objects interact. The Object Management Group (OMG) maintains the UML specification, updating it over time as new technology and procedures become common.