A UML é uma linguagem de modelagem. Sendo assim, deve proporcionar a capacidade de expressar de maneira diferenciada e complementar o conhecimento adquirido do domínio de aplicação estudado. Como o desenvolvimento de software reque uma análise dos diversos aspectos do comportamento de um sistema, a linguagem de modelagem deve oferecer ferramentas que se adaptem a cada situação observada.
É importante enfatizar a diferença existente entre o conceito de "linguagem de modelagem" e de "metodologia", já que às vezes se confunde em qual desses conceitos a UML se encontra.