Metamodelling for MDA

Metamodelling for MDA

Metamodelling for MDA First International Workshop York, UK, November 2003 Proceedings Edited by Andy Evans Paul Sammut James S. Willans Table of Contents Preface ........................................................ 4 Principles Calling a Spade a Spade in the MDA Infrastructure ................... 9 Colin Atkinson and Thomas K¨uhne Do MDA Transformations Preserve Meaning? An investigation into preservingsemantics ........................................... 13 Anneke Kleppe and Jos Warmer MDA components: Challenges and Opportunities ..................... 23 Jean B´ezivin, S´ebastien G´erard, Pierre-Alain Muller and Laurent Rioux SafetyChallengesforModelDrivenDevelopment ..................... 42 N. Audsley, P. M. Conmy, S. K. Crook-Dawkins and R. Hawkins Invited talk: UML2 - a language for MDA (putting the U, M and L intoUML)?................................................... 61 Alan Moore Languages and Applications Using an MDA approach to model traceability within a modelling framework .................................................... 62 John Dalton, Peter W Norman, Steve Whittle, and T Eshan Rajabally Services integration by models annotation and transformation .......... 77 Olivier Nano and Mireille Blay-Fornarino 1 A Metamodel of Prototypical Instances .............................. 93 Andy Evans, Girish Maskeri, Alan Moore Paul Sammut and James S. Willans Metamodelling of Transaction Configurations ......................... 106 StenLoecherandHeinrichHussmann Invitedtalk:MarketingtheMDAToolChain......................... 109 Stephen J. Mellor Mappings A Pattern based model driven approach to model transformations ....... 110 Biju Appukuttan, Tony Clark, Sreedhar Reddy, Laurence Tratt, R. Venkatesh A concrete UML-based graphical transformation syntax : The UML to RDBMSexampleinUMLX..................................... 129 Edward D. Willink MetamodelingRelations-Relatingmetamodels....................... 147 Jan Hendrik Hausmann TowardsModelTransformationwithTXL............................ 162 Richard Paige and Alek Radjenovic A review of OMG MOF 2.0 Query / Views / Transformations Submissions and Recommendations towards the final Standard ...... 178 Tracy Gardner, Catherine Griffin, Jana Koehler and Rainer Hauser Invited talk: Exectutable Meta-Modelling - How to turn MOF into a Programming Language ......................................... 198 Tony Clark 2 Tools Eclipse as a Platform for Metamodelling Tools ........................ 199 Catherine Griffin Tooling Metamodels with Patterns and OCL ......................... 203 D. H. Akehurst and O. Patrascoiu 3 Preface The OMG Model Driven Architecture (MDA) promises to be a revolutionary step in software engineering by making models primary artefacts. This raises the level of abstraction in the software development process, and thus helps manage the complexity and change inherent in today’s systems. Whilst a lot of focus has been given to the transformation of platform-independent models to platform-specific models, the scope of MDA potentially covers the modelling of all aspects of a system throughout its lifecycle. Metamodelling provides the foundation for this vision, by enabling meaningful metamodels of languages to be defined precisely and unified in a consistent framework. To this end, the OMG’s Meta-Object Facility (MOF) is stipulated as the language in which all languages for MDA are expressed. As another iteration of the UML revision process nears completion however, many issues have been raised concerning the means by which MOF is applied, such that languages constructed to support MDA are reusable, flexible and meaningful. This workshop then aims to inves- tigate the fundamental principles, tools and techniques that are needed for the metamodelling of languages, in order to provide a foundation for MDA and the long-term future for the role of modelling in software development. 1 Models and Mappings Fundamentally MDA concerns a wide variety of models and mappings between those models, allowing integration and transformation of those models. Whilst there are many kinds of mapping, they can be fit broadly into three main cate- gories: – refinement or vertical mappings, which relate system models at different levels of abstraction, such as PIM to PSM mappings and reverse engineering mappings; – horizontal mappings, which relate or integrate models covering different as- pects or domains within a system, but at the same level of abstraction; – variant mappings, which relate models of different members of a product family, or different stages of the evolution of a system. These categories of mapping can be thought of as the dimensions in a three dimensional modeling space, as depicted in Figure 1. 2 Languages and Metamodelling Models are defined using modelling languages, and if those languages are to be used for anything more sophisticated than drawing pictures, their syntax and semantics must both be precisely defined. Whilst formal languages such 4 Variants Abstraction / refinement Aspects Fig. 1. Dimensions in The Modeling Space. as Z can be used to realise such language definitions, their syntax are often obtuse and inaccessible, making them unpopular with industry. An alternative approach is metamodelling, where language definitions are themselves modelled, constructed in a language that resembles the languages used to construct system models. In this way, metamodelling not only enables language definitions easier to understand (since they are written in a familiar notation), but potentially they can be manipulated and integrated in the same way as system models (since they are all models). The latter of course depends entirely on the modelling tools that are available, but the potential is nevertheless there. In MDA, models can be constructed in whatever modelling language the user chooses, but in order for models from one language to be integrated with or trans- formed into models from another language, those languages must themselves be integrated. This is achieved by: 1. defining the modelling languages using the same metamodelling language; 2. providing a mapping that semantically integrates the two languages. In MDA, all modelling languages are ultimately defined in the OMG standard metamodelling language, called the Meta-Object Facility (MOF). Another OMG standard in the pipeline is the Query/View/Transformations (QVT) language, which will be the language designated for describing all language mappings. MOF and QVT provide the unifying foundation for MDA, since they facilitate the key metamodelling activities of metamodel construction and metamodel integration. Providing standardised metamodelling and mapping languages is only part of the challenge however. Metamodels of real languages are complex artefacts just like models of today’s enterprise systems, and must be similarly well thought out and architected. Thus there is also the need for strong metamodelling principles, 5 processes and methodologies. As another iteration of the UML revision process nears completion, it is clear that this is an area which is currently poorly under- stood, as many issues have been raised concerning the means by which MOF is applied, such that languages constructed to support MDA are reusable, flexible and meaningful. 3 Standards and Tools Standards such as MOF and QVT described above, are crucial for MDA to work, since they distil common understanding and best practice, and provide conformance points for tools, that in turn enable tool interoperability. Other important MDA related standards are the Unified Modelling Language (UML), and the XML Metadata Interchange (XMI) format. As important as, if not more so than, standards are tools. Without the avail- ability of tools to carry out the appropriate applications, MDA simply cannot work. There is a vast range of modelling tools on the market, that have been particularly popular since the advent of UML. However most of these tools are tied to one or a few languages that are hard coded in the tool. MDA will require more flexible ‘metatools’, that can be adapted to support a much wider range of languages. Metamodelling makes this feasible, since a metatool can import language definitions defined in MOF and integrate them using QVT mappings. It is unlikely that there will be one tool that will carry out every envisagable MDA application. Rather there will probably be tools for constructing and inte- grating metamodels, tools for system modelling, tools for model and metamodel analysis, model compilers and interpreters, model transformation tools, tools for running model simulations, and so on. XMI is the XML based serialisation for- mat that will allow these tools to work seamlessly together in a unified MDA environment. 4 Aims and Scope of the Workshop The workshop seeks to explore the theories, principles and practice by which language metamodels are constructed, transformed, related and used to support MDA. It also aims to highlight lessons that have been learned from putting these theories and principles into practice, and investigate the next generation of tools that are needed to fully realise the MDA vision. The papers and discus- sions at this workshop reflect the current challenges facing MDA in the area of metamodelling, and touch on many of the issues described above. A key aspect of this workshop is that it aims to bring together the theories, views and experiences of both academia and industry. Solutions coming from industry tend to be focused and practical, yet often lack the generality needed to apply them in a wider arena, due to

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    216 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