UML es un lenguaje estándar para crear esquemas y diagramas que documentan el desarrollo de software. Se usa comúnmente para definir requisitos funcionales y analizar problemas para luego escribir el código correspondiente. UML incluye varios tipos de diagramas como casos de uso, clases, secuencia y colaboración para modelar diferentes aspectos de un sistema de software.