Lecture Notes in Computer Science 4143 Commenced Publication in 1973 Founding and Former Series Editors: Gerhard Goos, Juris Hartmanis, and Jan Van Leeuwen

Lecture Notes in Computer Science 4143 Commenced Publication in 1973 Founding and Former Series Editors: Gerhard Goos, Juris Hartmanis, and Jan Van Leeuwen

Lecture Notes in Computer Science 4143 Commenced Publication in 1973 Founding and Former Series Editors: Gerhard Goos, Juris Hartmanis, and Jan van Leeuwen Editorial Board David Hutchison Lancaster University, UK Takeo Kanade Carnegie Mellon University, Pittsburgh, PA, USA Josef Kittler University of Surrey, Guildford, UK Jon M. Kleinberg Cornell University, Ithaca, NY, USA Friedemann Mattern ETH Zurich, Switzerland John C. Mitchell Stanford University, CA, USA Moni Naor Weizmann Institute of Science, Rehovot, Israel Oscar Nierstrasz University of Bern, Switzerland C. Pandu Rangan Indian Institute of Technology, Madras, India Bernhard Steffen University of Dortmund, Germany Madhu Sudan Massachusetts Institute of Technology, MA, USA Demetri Terzopoulos University of California, Los Angeles, CA, USA Doug Tygar University of California, Berkeley, CA, USA Moshe Y. Vardi Rice University, Houston, TX, USA Gerhard Weikum Max-Planck Institute of Computer Science, Saarbruecken, Germany Ralf Lämmel João Saraiva Joost Visser (Eds.) Generative and Transformational Techniques in Software Engineering International Summer School, GTTSE 2005 Braga, Portugal, July 4-8, 2005 Revised Papers 13 Volume Editors Ralf Lämmel Microsoft Corp. One Microsoft Way 98052 Redmond, WA, USA E-mail: [email protected] João Saraiva Joost Visser Universidade do Minho Escola de Engenharia Departamento de Informática Campus de Gualtar 4710-057 Braga, Portugal E-mail: {jas,Joost.Visser}@di.uminho.pt Library of Congress Control Number: 2006932840 CR Subject Classification (1998): D.2, D.1, D.3, F.3, K.6.3 LNCS Sublibrary: SL 2 – Programming and Software Engineering ISSN 0302-9743 ISBN-10 3-540-45778-X Springer Berlin Heidelberg New York ISBN-13 978-3-540-45778-7 Springer Berlin Heidelberg New York This work is subject to copyright. All rights are reserved, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting, reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965, in its current version, and permission for use must always be obtained from Springer. Violations are liable to prosecution under the German Copyright Law. Springer is a part of Springer Science+Business Media springer.com © Springer-Verlag Berlin Heidelberg 2006 Printed in Germany Typesetting: Camera-ready by author, data conversion by Scientific Publishing Services, Chennai, India Printed on acid-free paper SPIN: 11877028 06/3142 543210 Preface The international summer school on Generative and Transformational Tech- niques in Software Engineering (GTTSE 2005) was held in Braga, Portugal, on July 4–8, 2005. In this volume, you will find an augmented selection of the ma- terial presented at the school, including tutorials, technology presentations, and contributions to the participants workshop. The GTTSE summer school brings together PhD students, lecturers, technol- ogy presenters, as well as other researchers and practitioners who are interested in the generation and the transformation of programs, data, models, meta-models, and documentation. This concerns many areas of software engineering: software reverse and re-engineering, model-driven approaches, automated software engi- neering, and generic language technology, to name a few. These areas differ with regard to the specific sorts of meta-models (or grammars, schemas, formats etc.) that underlie the artifacts involved, and with regard to the specific techniques that are employed for the generation and the transformation of the artifacts. The 2005 instance of GTTSE offered 8 tutorials, given by renowned repre- sentatives of complementary approaches and problem domains. Each tutorial combines foundations, methods, examples, and tool support. The program of the summer school also featured 10 invited technology presentations, which pre- sented concrete support for generative and transformational techniques. These presentations complemented each other in terms of the chosen application do- mains, case studies, and the underlying concepts. Furthermore, the program of the school included a participants workshop to which all students of the summer school were asked to submit an extended abstract beforehand. The Organization Committee reviewed these extended abstracts and invited 14 students to present their work at the workshop. This volume contains extended and reviewed versions of the material pre- sented at the summer school. Each of the 7 tutorials included here was reviewed by 2 members of the Scientific Committee of GTTSE 2005. The 8 technology presentations included were reviewed by 3 members each, as were the 6 selected participant contributions. Review was selective and involved multiple rounds of improvements. We are grateful to all lecturers and participants of the school for their enthu- siasm and hard work in preparing excellent material for the school itself and for these proceedings. Due to their efforts the event was a great success, which we trust the reader finds reflected in this volume. May 2006 Ralf L¨ammel, Jo˜ao Saraiva, and Joost Visser Organization GTTSE 2005 was hosted by the Departamento de Inform´atica, Universidade do Minho, Braga, Portugal. Executive Committee Program Co-chair: Ralf L¨ammel (Microsoft, Redmond, USA) Program Co-chair: Jo˜ao Saraiva (Universidade do Minho, Braga, Portugal) Organizing Chair: Joost Visser (Universidade do Minho, Braga, Portugal) Scientific Committee Paulo Borba, Universidade Federal de Pernambuco, Brazil Mark van den Brand, Technical University Eindhoven, The Netherlands Jim Cordy, Queen’s University, Canada Krzysztof Czarnecki, University of Waterloo, Canada Andrea DeLucia, Universit`adiSalerno,Italy Jean-Luc Dekeyser, Universit´e des Sciences et Technologies de Lille, France Jos´e Fiadeiro, University of Leicester, UK Stephen Freund, Williams College, UK Jeff Gray, University of Alabama at Birmingham, USA Reiko Heckel, University of Leicester, UK G¨orel Hedin, Lund Institute of Technology, Sweden Pedro Rangel Henriques, Universidade do Minho, Portugal Y. Annie Liu, State University of New York at Stony Brook, USA Cristina Lopes, University of California at Irvine, USA Ralf L¨ammel, Microsoft Corporation, USA Marjan Mernik, University of Maribor, Slovenia Oege de Moor, Oxford University, UK Pierre-Etienne Moreau, INRIA Lorraine & LORIA, France Peter Mosses, University of Wales Swansea, UK Jos´e Nuno Oliveira, Universidade do Minho, Portugal Jens Palsberg, UCLA, USA Jo˜ao Saraiva, Universidade do Minho, Portugal Andy Sch¨urr, Technical University Darmstadt, Germany Anthony Sloane, Macquarie University, Australia Peter Thiemann, University of Freiburg, Germany Simon Thompson, University of Kent, UK Eelco Visser, Utrecht University, The Netherlands Joost Visser, Universidade do Minho, Portugal Eric Van Wyk, University of Minnesota, USA VIII Organization Organizing Committee Jos´e Bacelar Almeida, Universidade do Minho, Braga, Portugal Mark van den Brand, Technical University Eindhoven, The Netherlands Maria Jo˜ao Frade, Universidade do Minho, Braga, Portugal Pedro Rangel Henriques, Universidade do Minho, Braga, Portugal Ralf L¨ammel, Microsoft Corporation, Redmond, USA Marjan Mernik, Maribor University, Maribor, Slovenia Jo˜ao Saraiva, Universidade do Minho, Braga, Portugal Joost Visser, Universidade do Minho, Braga, Portugal Sponsoring Institutions Centro de Ciˆencias e Tecnologias de Computa¸c˜ao Enabler Funda¸c˜ao Oriente Funda¸c˜ao para a Ciˆencia e a Tecnologia Luso-American Foundation Microsoft Software Improvement Group Taylor’s Port Table of Contents I Tutorials A Tutorial on Feature Oriented Programming and the AHEAD Tool Suite ....................................................... 3 Don Batory Model Driven Engineering: An Emerging Technical Space .............. 36 Jean B´ezivin Program Transformation with Reflection and Aspect-Oriented Programming ..................................................... 65 Shigeru Chiba The Transformational Approach to Database Engineering .............. 95 Jean-Luc Hainaut Program Optimizations and Transformations in Calculation Form ....... 144 Zhenjiang Hu, Tetsuo Yokoyama, Masato Takeichi Mappings Make Data Processing Go ’Round ......................... 169 Ralf L¨ammel, Erik Meijer On the Use of Graph Transformations for Model Refactoring ........... 219 Tom Mens II Technology Presentations Forms2Net - Migrating Oracle Forms to Microsoft .NET ............... 261 Luis Andrade, Jo˜ao Gouveia, Miguel Antunes, Mohammad El-Ramly, Georgios Koutsoukos Applications of the Asf+Sdf Meta-Environment ..................... 278 M.G.J. van den Brand MetaBorg in Action: Examples of Domain-Specific Language Embedding and Assimilation Using Stratego/XT ...................... 297 Martin Bravenboer, Ren´edeGroot,EelcoVisser Agile Parsing to Transform Web Applications ........................ 312 Thomas Dean, Mykyta Synytskyy X Table of Contents Data Cleaning and Transformation Using the AJAX Framework ........ 327 Helena Galhardas Developing Tools with Fujaba XProM ............................... 344 Leif Geiger, Albert Z¨undorf The COMPOST, COMPASS, Inject/J and RECODER Tool Suite for Invasive Software Composition: Invasive Composition with COMPASS Aspect-Oriented Connectors ........................................ 357 Dirk Heuzeroth, Uwe Aßmann, Mircea Trifu, Volker Kuttruff Program Transformation Using HATS 1.84 ..........................

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    472 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us