Se você estiver modelando um sistema e precisar estender o metamodelo UML para um determinado uso, em vez de alterar o metamodelo, você pode criar um conjunto de estereótipos e restrições e agrupá-los em um perfil UML customizado. Você pode
aplicar um perfil UML customizado a um modelo e utilizar os estereótipos e restrições para marcar o modelo para uma plataforma ou domínio específico. Por exemplo, você pode
criar um perfil que controle como uma transformação gera código C++
a partir de um modelo UML.