2nd OOPSLA Workshop on

Generative Techniques
in the context of
Model Driven Architecture
The corresponding page in the OOPSLA conference programme

Please note that a workshop on Best Practices for Model-Driven Software Development
is scheduled for OOPSLA 2004!


2 Dec 2003: Two additional presentations are available for download.
27 Nov 2003: Workshop results and presentations are now available for download!

Workshop Photos

Thanks to Peter van Emde Boas we've got an extensive set of photos from the workshop!


Workshop Goals and Themes

Object-oriented technology indisputably provided us with a better handle on complexity than previous technologies. Nevertheless, the growing size of applications and the demands for shorter time-to-market mean that many issues remain, and a combination of generative and model-driven techniques can help us address them. The OOPSLA'02 workshop on this topic was highly successful and led to the launch of the Generative Model Transformer (GMT) open source initiative. A related topic is the possible definition of a common standard notation for model transformation. The discussion on this language (MOF 2.0 Query/ Views/ Trans-formations RFP) is still going on, but several initiatives have started investigating the feasibility of this approach and we welcome the first research results.

From http://www.omg.org/mda/executive_overview.htm:

"Model Driven Architecture™ addresses the complete life cycle of designing, deploying, integrating, and managing applications as well as data using open standards. MDA-based standards enable organizations to integrate whatever they already have in place with whatever they build today and whatever they build tomorrow.

Most importantly, MDA enables the creation of standardized Domain Models for specific vertical industries. These standardized models can be realized for multiple platforms now and in the future, easing multiple platform integration issues and protecting IT investments against the uncertainty of changing fashions in platform technology.

The benefits of MDA are significant-to business leaders and developers alike:
MDA provides a solid framework that frees system infrastructures to evolve in response to a never-ending parade of platforms, while preserving and leveraging existing technology investments. It enables system integration strategies that are better, faster and cheaper."

Generation languages that don't use models as input may have practical limits in terms of the complexity of code that can be generated. This far there is very little in terms of concrete tools that actually support MDA beyond traditional UML modeling and skeleton-class generation. Some new tools provide features to define and instantiate design patterns, but many tools still expose the user to UML models at the level of abstraction of implementation code and do not provide the support to implement domain specific languages to raise the level of abstraction.

The workshop aims to bring together practitioners, researchers, academics, and students to discuss the state-of-the-art of generative techniques in the context of model-driven architecture.

Topics of interest include:

The goal is to share experience, assess the state-of-the-art and the state-of-the-practice, consolidate successful techniques, and identify the most promising application areas and open issues for future work.

Potential participants are asked to submit a two-page (or longer) position paper detailing their experience with model-based generative techniques, their perspective on one or more of the above topics, and their planned contribution to the workshop. We seek concrete case studies and potential topics of discussion in order to ground the workshop in real-world issues. Please mail your submission (in PDF or Word) to Jorn Bettin (jorn.bettin@softmetaware.com).

Relevance to Object-Oriented Technology

Model-Driven Architecture promises stable models in UML and flexible target platforms. In conjunction with generative techniques MDA will improve the quality of object oriented systems, enable increases in productivity, and will allow us to:

Timeliness of the Workshop

Abstract modeling techniques and visual modeling notations have been in practical use for decades in various forms. However their impact this far has been limited by a lack of integration with sufficiently robust code generation/transformation engines.

Generative techniques have also been in practical use for decades (e.g., compiler development). However, developing new domain-specific languages (DSLs), application generators, and component generators has been extremely hard, requiring being knowledgeable and experienced both in language design and compiler development.

Template languages in particular seem to be a key element in bridging the gap from platform independent model to platform specific model, or from model to implementation, and they warrant further investigation.

Generative techniques are an important element in realizing the vision of the recent Model-Driven Architecture initiative by the OMG. Although the first prototypes of UML virtual machines are emerging, model transformations are still necessary and practical concerns in terms of system performance lead to generation as a pragmatic, currently viable alternative for the industrial implementation of MDA.

Organizing Committee

Jorn Bettin, the founder of SoftMetaWare, is a software consultant with a special interest in designing large-scale component systems and techniques to optimize the productivity of software development teams. SoftMetaWare provides CTO services and product line engineering expertise to software development organizations. Over the last eight years Jorn has implemented automated, model-driven development in several software organizations, has worked in methodology leadership roles in an IBM product development lab, and has managed object oriented software development projects in the domains of Distribution, Manufacturing, Insurance, and Electricity Trading. Currently, together with Ghica van Emde Boas, he is leading the Generative Model Transformer Open Source initiative to develop an MDA tool platform in close collaboration with several universities and the submitters to the OMG's MOF 2.0/QVT RFP.

Ghica van Emde Boas is an IT-Architect who has been working with the IBM SanFrancisco business components framework - probably the largest Java framework in existence - for the last five years. Applications developed with SanFrancisco rely heavily on UML model-based code generation. She developed a model-driven generative tool, FUUT-je, the principles of which are published in http://www.research.ibm.com/journal/sj/392/vanemdeboas.html. FUUT-je has been used very successfully in multiple engagements. Since March 2000 Ghica is working as an independent consultant (URL: www.bronstee.com), after a 30-year career at IBM. Currently, together with Jorn Bettin, she is leading the Generative Model Transformer Open Source initiative to develop an MDA tool platform in close collaboration with several universities and the submitters to the OMG's MOF 2.0/QVT RFP.

Aditya Agrawal is a graduate student at the Institute for Software Integrated Systems (ISIS) at Vanderbilt University. His area of specialization is domain specific modeling languages. Currently, he is working on graph transformations techniques and how they can be used to specify model to model transformations. In this endeavor he has developed a graph transformation based language GReAT (Graph Rewriting and Transformation Language) and has used the language to specify various transformations.

Ed Willink is a Chief Technical Consultant with Thales Research and Technology [UK] Ltd. He works primarily in the signal processing field, designing and analyzing systems and environments. Years of frustration with the poor level of tool support, led to a Ph.D. initially titled "Effective Compilation Techniques for Fixed Point Digital Signal Processors" which morphed into "Meta-Compilation for C++" in response to difficulties managing a large body of C++ compiler code. Recent considerations of the specification and portability problems for Software Radios resulted in the proposal for a Waveform Description Language, which like so many other problems needs a good Model Driven Architecture tool to make it practical. Ed is a core contributor to the Generative Model Transformer Open Source initiative to develop an MDA tool platform and has been working on the UMLX concrete graphical transformation syntax.

Jean Bézivin is professor of Computer Science at the University of Nantes, France and a member of the new ATLAS research group created in Nantes (INRIA and IRIN). He has been very active in Europe in the Object-Oriented community, starting the ECOOP series of conference (with P. Cointe), the TOOLS series of conferences (with B. Meyer), the OCM meetings (with S. Caussarieu and Y. Gallison) and more recently the <<UML>> series of conferences (with P.-A. Muller). He created at the University of Nantes in 1988, one of the first European Master Programs in Software Engineering completely based on object-technology. His present research interests include object-oriented analysis and design, product and process modeling, transitioning from pure object technology to general model engineering, and assessing the new emerging paradigm of model transformation.

Workshops on Related Topics

  1. "Generative Techniques in the context of MDA" was held at OOPSLA02 in Seattle.
  2. "Generative Techniques for Product Lines" was held at the First Software-Product Line Conference (SPLC1) in Denver, 2000; and was held in 2001 at ICSE in Toronto.
  3. "Generative Programming" was held at ECOOP01 in Budapest, at ECOOP02 in Malaga, and at OOPSLA01 in Tampa.
  4. "Visual Domain Specific Languages" was held at OOPSLA01 in Tampa, and at OOPSLA02 in Seattle, and will be held at OOPSLA03 in Anaheim. We are coordinating topics and activities with this workshop at OOPSLA03. The workshops will be held on different days to allow attendance of both workshops.

Important Dates

Expected number of participants: 20-35
Cut-off point: 15 position papers, multiple authors per paper allowed. If more high quality submissions are received, the organizers may encourage submitters of papers on closely related topics to collaborate on a joint position paper.

Pre-Workshop Activities

Potential participants will be asked to submit a two-page (or longer) position paper detailing their experience with model-driven and/or generative techniques, their perspective on one or more of the workshop themes, and their planned contribution to the workshop. We will encourage submitters to submit concrete programming problems and/or other challenging issues from the practice. We will interact with the potential participants via e-mail to select a set of problems and issues to be discussed in focus groups during workshop.

All accepted position papers will be published on this workshop page prior to the workshop and the participants are asked to read the papers prior to the workshop.

Position Papers

  1. Generation of Implementations for the Model Driven Architecture with Syntactic Unit Trees ;
    Marek Majkut, Bogdan Franczyk
  2. The Tool Factory ;
    Steve Cook, Stuart Kent
  3. Classification of Model Transformation Approaches ;
    Krzysztof Czarnecki, Simon Helsen
  4. THALES recommendations for the final OMG standard on Query/Views/Transformations ; +presentation;
    Benoît Langlois, Nicolas Farcet
  5. Combining Generative and Graph Transformation Techniques for Model Transformation: An Effective Alliance? ; +presentation;
    Shane Sendall
  6. A flexible code generator for MOF-based modeling languages ; +presentation;
    Lutz Bichler
  7. Using MDA in Web Software Architectures ; +presentation;
    Santiago Melia, Cristina Cachero, Jaime Gomez
  8. Better Generative Programming with Generic Aspects ; +presentation;
    Raul Silaghi
  9. Software Factories: Assembling Applications with Patterns, Models, Frameworks and Tools ;
    Jack Greenfield, Keith Short
  10. UMLX : A graphical transformation language for MDA ; +presentation;
    Edward D. Willink
  11. First experiments with the ATL model transformation language: Transforming XSLT into XQuery ;
    Jean Bézivin, Grégoire Dupé, Frédéric Jouault, Gilles Pitette, Jamal Eddine Rougui
  12. CoSMIC: An MDA Tool Suite for Application Deployment and Configuration ; +presentation;
    Tao Lu, Emre Turkay, Aniruddha Gokhale, Douglas Schmidt
  13. From the Workfloor: Developing Workflow for the Generative Model Transformer ;
    Ghica van Emde Boas
  14. Ideas for a Concrete Visual Syntax for Model-to-Model Transformations ; +presentation;
    Jorn Bettin
All position papers in a zip file (2.6 MB)

Planned Workshop Activities

The workshop will aim to foster discussion and interaction rather than presentations. Presentations will serve to introduce a case study, provide triggers for discussion in the second part of the workshop by presenting a controversial point of view, or by introducing a new point of view. All participants will be given a chance to make a short presentation (5-10 min). However, due to the large number of participants, discussions will be structured around a set of issues/questions provided by the organizers based on the topics covered by the position papers.

Morning Session [ 8:30 - 12:00 ]

  1. Introductory material presented by the organizers (15 min)
  2. Introduction round (15 min)
  3. Short 10-minute presentations from the authors of the submitted position papers. A data projector will be available. Presenters may prepare slides in pdf or MS ppt format, or need to bring their own notebook and software if a different presentation format is used.

Afternoon Session [ 13:00 - 17:00 ]

  1. Interactive discussion using the "Open Space" technique. To give all workshop attendees sufficient opportunities for active participation, the discussion will take place in two or three groups in parallel. Each group will present their results to the larger audience before the closing discussion.
  2. Closing discussion.

Workshop Results

  1. Discussion Group : Transformation Patterns
  2. Discussion Group : Concrete Transformation Syntaxes & Paradigms for Transformation Management
  3. Discussion Group : Strategies for Transitioning to Generative / MDA® Technology