Model-Driven Constraint Engineering in Their Paper with the Same Title
Total Page:16
File Type:pdf, Size:1020Kb
Fakultät Informatik TUD-FI06-04-Sept. 2006 Birgit Demuth, Dan Chiorean, Technische Berichte Martin Gogolla, Jos Warmer (eds.) Technical Reports Institut fur¨ Software- und Multimediatechnik ISSN 1430-211X OCL for (Meta-)Models in Multiple Application Domains Technische Universität Dresden Fakultät Informatik D−01062 Dresden Germany URL: http://www.inf.tu−dresden.de/ Birgit Demuth, Dan Chiorean, Martin Gogolla, Jos Warmer (eds.) OCL for (Meta-) Models in Multiple Application Domain Workshop co-located with MoDELS 2006: 9th International Conference on Model-Driven Engineering Languages and Systems (formerly the UML series of conferences) October 1 - 6, 2006 Genova, Italy This proceedings have been funded by the European Commission and by the Swiss State Secretariat for Education and Research within the 6th Framework Programme project REWERSE number 506779 (cf. http://rewerse.net). Organization Organizers Dan Chiorean (Romania) Birgit Demuth (Germany) Martin Gogolla (Germany) Jos Warmer (The Netherlands) Program Committee Thomas Baar (Switzerland) Jordi Cabot (Spain) Dan Chiorean (Romania) Tony Clark (United Kingdom) Birgit Demuth (Germany) Andy Evans (United Kingdom) Robert France (U.S.A.) Martin Gogolla (Germany) Heinrich Hussmann (Germany) Marcel Kias (Norway) Richard Mitchell (U.S.A.) Octavian Patrascoiu (United Kingdom) Mark Richters (Germany) Shane Sendall (Switzerland) Peter Schmitt (Germany) Jos Warmer (The Netherlands) Burkhart Wolff (Switzerland) Preface This Technical Report contains the final versions of papers accepted at the workshop OCL for (Meta-)Models in Multiple Application Domains, held in Genua (Italy), October 2, 2006. The workshop was organized as a satellite event of the ACM/IEEE 9th International Conference on Model Driven Engineering Languages and Systems (MoDELS/UML 2006). It continues the series of OCL workshops held at previous UML/MoDELS conferences: York (2000), Toronto (2001), San Francisco (2003), Lisbon (2004) and Montego Bay (2005). Similar to previous OCL workshops, the majority of papers were proposed by researchers coming from the academia. Apart from the above mentioned workshops, three accepted papers were proposed by researchers affiliated to IBM and SAP, two of most influential worldwide software companies. Hoping that this represents an encouraging sign of a future enhanced use of the OCL in the industry. The 18 accepted papers cover a large spectrum of OCL related topics. They reflect research contributions and experience reports about using OCL for models and meta models in multiple application domains. The papers are divided into four sections concerning new applications, model transformations pertaining to the MoDELS/UML 2006 conference as well as implementation and language issues. In the section Applications there are five contributions including new paradigms and technologies. The paper Customer Validation of Formal Contracts by Heldal and Johannisson deals "customer-readable" specifications for systems modeled with UML and OCL. Kolovos, Paige and Polack show in their paper Towards Using OCL for Instance- Level Queries in Domain Specific Languages how to align OCL querying and navigation facilities with arbitrary Domain Specific Languages (DSLs). In the paper OCL-based Validation of a Railway Domain Profile Berkenkötter uses OCL to validate models of a railway domain profile and the profile itself. Opoka and Lenz built a model assessment framework based on EMF and show in their experience report Use of OCL in a Model Assessment Framework: An Experience report that OCL 2.0 is expressive enough to be applied as a query language for model analysis. In the paper Rigorous Business Process Modeling with OCL the “Business-IT gap" issue, a well-known problem in business process modelling, is investigated. Takemura and Tetsuo Tamai enrich activity diagrams by (extended) OCL constraints to model business processes rigorous. Some of the OCLApps2006 papers deal with model transformations that are contained in the section Model transformations. Milanovic et al focus in their paper On Interchanging Between OWL/SWRL and UML/OCL on the reconciliation of OCL and Semantic Web languages. In the paper Realizing UML Model Transformations with USE, Büttner and Bauerdick enrich the USE specification language with imperative elements to realize class diagram transformations. Wahler, Koehler and Brucker form the notion of Model-Driven Constraint Engineering in their paper with the same title. The idea is to define constraint patterns, integrate them into the UML metamodel and transform them into platform- specific constraints by model transformation. In the section Implementations several authors deal with a better implementation of OCL support in tools. In the paper OCL support in an industrial environment Altenhofen, Hettel and Kusterer describe their method of impact analysis to reduce the number of necessary (re-)evaluations of OCL constraints when the underlying model changes. Stölzel, Zschaler and Geiger discuss in the paper Integrating OCL and Model Transformations in Fujaba the integration of the Dresden OCL Toolkit into the Fujaba Tool Suite. This adds OCL support both for class diagrams and for model transformations. Mezei, Levendovszky and Charaf present in the paper Restrictions for OCL constraint optimization algorithms an optimization algorithm for the evaluation of OCL constraints used in graph rewriting based model transformations. The paper An MDA Framework Supporting OCL by Brucker, Doser and Wolff describes a rather complete tool chain for processing UML/OCL specifications, including a proof environment and flexible code generation. Amelunxen and Schürr explain in the paper On OCL as part of the metamodeling framework MOFLON the role of OCL in the metamodeling framework MOFLON, a framework designed by the authors to support the definition of domain specific languages with MOF, OCL and graph transformations. In the section Language issues there are multiple proposals to improve the syntax and semantics of the language. Cabot identifies in the paper Ambiguity issues in OCL postconditions common ambiguities appearing in OCL postconditions and provides a default interpretation for each of them in order to improve the usefulness of declarative specifications. Akehurst, Howells and McDonald-Maier sketch in the paper UML/OCL - Detaching the Standard Library some ideas for detaching certain aspects of the OCL language such as types and operations from its current definition. The goal is to facilitate support for different modeling languages and implementations. In the paper Semantic Issues of OCL: Past, Present, and Future Brucker, Doser and Wolff summarize the most important results of a formalization of OCL and proceed to make suggestions on how OCL may be improved in order to have a cleaner formal semantics. The paper Improving the OCL Semantics Definition by Applying Dynamic Meta Modeling and Design Patterns by Chiaradía and Pons try to improve the definition of the OCL semantics (in particular the Expression-Evaluation package) by means of applying the visitor pattern and the Dynamic Meta-Modeling technique. Süß proposes in the paper Sugar for OCL three shorthand notations for representing OCL in the Latex, HTML, and Unicode encoding systems. Finally, we would like to thank all members of the program committee for their dedication to writing reviews and for useful suggestions to improve the submitted papers. We were very pleased about the numerous contributions to this year’s OCL workshop. Thank to the authors of all submitted papers who made this workshop possible. May the workshop presentations and discussions inspire all workshop attendees to enhance the application of OCL in industrial environments, the tool support for OCL, the scientific foundation and, last but not least, the language OCL itself. September 2006 Birgit Demuth Dan Chiorean Martin Gogolla Jos Warmer Table of Contents Applications Customer Validation of Formal Contracts 13 Rogardt Heldal and Kristofer Johannisson Towards Using OCL for Instance-Level Queries in Domain Specific Languages 26 Dimitrios S. Kolovos, Richard F. Paige, and Fiona A.C. Polack OCL-based Validation of a Railway Domain Profile 38 Kirsten Berkenkötter Use of OCL in a Model Assessment Framework: An experience report 53 Joanna Chimiak-Opoka and Chris Lenz Rigorous Business Process Modeling with OCL 68 Tsukasa Takemura and Tetsuo Tamai Model Transformations On Interchanging Between OWL/SWRL and UML/OCL 81 Milan Milanovic, Dragan Gasevic, Adrian Giurca, Gerd Wagner, and Vladan Devedzic Realizing UML Model Transformations with USE 96 Fabian Büttner and Hanna Bauerdick Model-Driven Constraint Engineering 111 Michael Wahler, Jana Koehler, and Achim D. Brucker Implementations OCL support in an industrial environment 126 Michael Altenhofen, Thomas Hettel, and Stefan Kusterer Integrating OCL and Model Transformations in Fujaba 140 Mirko Stölzel, Steffen Zschaler, and Leif Geiger Restrictions for OCL constraint optimization algorithms 151 Gergely Mezei, Tihamer Levendovszki, and Hassan Charaf An MDA Framework Supporting OCL 166 Achim D. Brucker, Jürgen Doser, and Burkhart Wolff On OCL as part of the metamodeling framework MOFLON 182 C. Amelunxen and A. Schürr Language Issues Ambiguity issues in OCL postconditions 194 Jordi Cabot UML/OCL – Detaching the Standard Library 205 D. H. Akehurst, W.G.J. Howells, and K.D. McDonald-Maier Semantic Issues of OCL: Past, Present, and Future 213 Achim D. Brucker, Jürgen Doser, and Burkhart Wolff Improving the OCL Semantics