UML es un lenguaje de modelado visual para sistemas de software que provee varios diagramas como diagramas de casos de uso, secuencia, estado y actividades. UML no es un lenguaje de programación pero herramientas pueden generar código a partir de diagramas UML. UML se usa para modelar sistemas de software, hardware y procesos empresariales.