Improving Reuse by means of Asymmetrical Model Migrations: An Application to the Orcc Case Study
Abstract
The legacy code of a tool handling domain specific data gathers valuable expertise. However in many cases, it must be rewritten to make it apply to structurally incompatible data. We investigate a co-evolution approach to avoid this update by making the call context meet the a legacy tool definition
domain. The data conforming to the call context co-evolve into data conforming to the definition domain. Once processed by the
tool, they can be put back into their original context thanks to a specific reverse transformation which enables the recovery of
elements that had been initially removed.
This approach is applied to Orcc, a compiler for dataflow applications. Orcc requires many common functions that are expected to be adapted to its own context. Our approach is an effective way to reuse them instead of rewriting them.