UML es un lenguaje gráfico estandarizado para modelar sistemas de software. Se compone de elementos, relaciones y diagramas. Los elementos incluyen clases, casos de uso y máquinas de estado. Las relaciones describen cómo se conectan los elementos. Los diagramas como el diagrama de clases y el diagrama de estados representan gráficamente los modelos. UML permite modelar tanto aspectos estructurales como de comportamiento de los sistemas de software.