UML (Lenguaje Unificado de Modelado) es un lenguaje gráfico para modelar sistemas de software respaldado por el OMG. Permite visualizar, especificar, construir y documentar un sistema mediante diagramas que representan diferentes aspectos como procesos, funciones, bases de datos y componentes. Aunque se usa comúnmente con desarrollo orientado a objetos, UML es independiente de cualquier metodología en particular y ofrece diferentes tipos de diagramas para modelar estructuras y comportamientos de un sistema.