Vol. 2, No. 2, March–Aprile 2003 Update Transformations in the Small with the Epsilon Wizard Language Dimitrios S. Kolovos Richard F. Paige Fiona A.C. Polack Louis M. Rose Department of Computer Science, University of York, United Kingdom In this paper, we present the Epsilon Wizard Language (EWL), a tool-supported lan- guage for specifying and executing automated update transformations in the small based on existing model elements and input from the user. We discuss on the require- ments and the design decisions, as well as on the infrastructure on which the language has been developed. We also provide concrete working examples to demonstrate how EWL can be used to automate the process of constructing and refactoring models in practice. 1 INTRODUCTION Enhancing consistency and productivity in software development are the most im- portant promises of Model Driven Development. The role of Model Transformation for delivering these benefits is so important that it has been characterized the heart and soul of Model-Driven Development [1]. There are two types of transformations: mapping and update transformations [2]. Mapping transformations typically trans- form a source model into a target model expressed in a different modelling language by creating zero or more model elements in the target model for each model element of the source model. A prominent example of mapping transformations is the pop- ular Class to Database scenario found in [3]. By contrast, update transformations perform in-place modifications of a model. They can be further classified into two subcategories: transformations in the small and in the large. Update transforma- tions in the large apply on sets of model elements calculated using well-defined rules in a batch manner. On the other hand, update transformations in the small are applied in a user-driven manner on model elements that have been also explicitly selected by the user. In the context of tool-support for model transformation, a large number of task- specific languages for mapping transformations have been proposed including QVT [4], ATL [3] and VIATRA2 [5]. Moreover, it has been shown that such languages can also be used to achieve update transformations in the large (e.g. the refinement mode of ATL). By contrast, the field of update transformations in the small remains Cite this document as follows: http://www.jot.fm/general/JOT template LaTeX.tgz