As transformações reversas possibilitam a recuperação de alterações feitas no modelo de origem ou destino. Este processo é útil quando os modelos de origem e destino são desenvolvidos simultaneamente. Por exemplo, um arquiteto pode criar um modelo UML e transformá-lo em um nível diferente de abstração, ou no código-fonte. Outro arquiteto ou desenvolvedor pode fazer alterações no modelo ou no código gerado e, em seguida, o arquiteto pode executar a transformação reversa para recuperar as alterações. A transformação reversa determina as diferenças entre o modelo ou o código gerado e o modelo de origem, e o arquiteto pode selecionar as alterações que serão aplicadas no modelo de origem.
Para recuperar as alterações feitas em um modelo de origem ou destino, você deve criar uma única configuração de transformação e ativar a transformação reversa em vez de criar configurações para cada transformação. Ao criar uma configuração e ativar a transformação reversa, todas as informações sobre os modelos de origem e destino aplicáveis estão contidas em uma configuração; as regras de validação para ambas as transformações são aplicadas à configuração para garantir que o modelo ou o código gerado seja o mais exato possível. A execução de transformações que possuem configurações separadas pode gerar resultados inesperados.
Para simplificar o trabalho com o arquivo de configuração de transformação, salve o arquivo de configuração no projeto especificado como a origem da transformação.
Para evitar possíveis problemas, não altere a origem ou o destino no arquivo de configuração de transformação. Para especificar origens ou destinos diferentes para a transformação, crie uma nova configuração de transformação.