UML es el lenguaje de modelado de sistemas de software más conocido y utilizado actualmente. Permite visualizar, especificar, construir y documentar un sistema mediante diagramas que ofrecen diferentes puntos de vista del mismo. UML no define un proceso de desarrollo sino que las organizaciones pueden utilizarlo con sus propios procesos mediante diagramas como los de clases, casos de uso, secuencias e implementación.