Chain (MTC) generates applications from high level models that are defined in terms of problem domain concepts. The MTC produces a low-Ievel model that is rooted in the solution domain. An evolution problem arises when we need to include an unanticipated concern (e.g., security) to the generated applications. If there is a mismatch between the expressiveness of the high-Ievel metamodel and the new concern, then we need to adapt the existing assets (i.e., metamodels, models, and transformations). A MODEL TRANSFORMATION Chain (MTC) generates applications from high level models that are defined in terms of problem domain concepts. The MTC produces a low-Ievel model that is rooted in the solution domain. An evolution problem arises when we need to include an unanticipated concern (e.g., security) to the generated applications. If there is a mismatch between the expressiveness of the high-Ievel metamodel and the new concern, then we need to adapt the existing assets (i.e., metamodels, models, and transformations). The evolution of an MTC gives rise to several problems mainly related to the strong dependencies between metamodels and models, metamodels and transformations, and between each transformation step and the following. In this dissertation we present an approach that reduces the complexity of evolving a model transformation chain. Our approach offers several advantages: 1) it reuses the existing assets (metamodels, models and transformations), 2) it modularizes the changes in a new set of metamodels, models and transformations.3) it facilitates the modeling of different concerns in separate models which are close to the problem domain. 4) it offers an automatic derivation mechanism to identify the elements to compose in the low-Ievel models based on relationships defined in the high-Ievel.5) it eases the use of a reusable mechanism to integrate the changes.1) it reuses the existing assets (metamodels, models and transformations), 2) it modularizes the changes in a new set of metamodels, models and transformations.3) it facilitates the modeling of different concerns in separate models which are close to the problem domain. 4) it offers an automatic derivation mechanism to identify the elements to compose in the low-Ievel models based on relationships defined in the high-Ievel.5) it eases the use of a reusable mechanism to integrate the changes.2) it modularizes the changes in a new set of metamodels, models and transformations.3) it facilitates the modeling of different concerns in separate models which are close to the problem domain. 4) it offers an automatic derivation mechanism to identify the elements to compose in the low-Ievel models based on relationships defined in the high-Ievel.5) it eases the use of a reusable mechanism to integrate the changes.3) it facilitates the modeling of different concerns in separate models which are close to the problem domain. 4) it offers an automatic derivation mechanism to identify the elements to compose in the low-Ievel models based on relationships defined in the high-Ievel.5) it eases the use of a reusable mechanism to integrate the changes. 4) it offers an automatic derivation mechanism to identify the elements to compose in the low-Ievel models based on relationships defined in the high-Ievel.5) it eases the use of a reusable mechanism to integrate the changes.5) it eases the use of a reusable mechanism to integrate the changes.