Usando la metodología MDA, la funcionalidad del sistema será definida en primer lugar como un modelo independiente de la plataforma ("Platform-Independent Model" o PIM) a través de un lenguaje específico para el dominio del que se trate.