Made available under EPL 1.0 Aligning OCL and UML Edward Willink Eclipse OCL Project Lead, Eclipse QVTd Project Lead, Thales OMG OCL RTF Representative,

Slides:



Advertisements
Similar presentations
Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Advertisements

An ASN.1 Profile Anders Ek
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
1 CIS224 Software Projects: Software Engineering and Research Methods Lecture 11 Brief introduction to the UML Specification (Based on UML Superstructure.
1 UML 2.0 Compliance Points Proposal Jim Amsden, Bran Selic 21 October 2003.
Modeling with the ECCF SS ● UML Profile for ECCF ● UML Redefinition Semantics ● Compliance ● Consistency ● Conformance ● Validation ● Transformation ●
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
IBM Software Group © 2005 IBM Corporation University of Nantes Eclipse dayMarch 2005 The Eclipse Modeling Framework and the IBM Model Transformation Framework.
MDD Tutorial for managers Eclipse ECESIS Project A presentation of MDD basics Model-driven development (MDD) tutorial for managers EUROPEAN SOFTWARE INSTITUTE,
ADML A result of cooperation and leverage! The Open Group W3C OMG MCC CMU.
Framework for Model Creation and Generation of Representations DDI Lifecycle Moving Forward.
Collaborative Modeling Best Practices for Distributed Teams Ben Constable Chief Operations Officer Sparx Systems ISO/TC 211: 31st.
® Eurostep.ESUKPC v0.1©Copyright Eurostep Limited An Introduction to ISO STEP Part 25 David Price.
HL7 UK 2003 (c) Abies Ltd Modelling Clinical Information Using UML Tim Benson Abies Ltd
OOPSLA 2003 DSM Workshop Diagram Definition Facilities Based on Metamodel Mappings Edgars Celms, Audris Kalnins, Lelde Lace University of Latvia, IMCS,
An Approach and Tool for Synchronous Refactoring of UML Diagrams and Models Using Model-to-Model Transformations Hafsteinn Þór Einarsson Helmut Neukirchen.
Model Transformations
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
UML2 Package Merge Usage scenarios and their effect on XMI and Java API interoperability Bran Selic, Jim Amsden, Kenn Hussey Oct, 2003.
Java.sun.com/javaone/sf | 2004 JavaOne SM Conference | Session The Eclipse Modeling Framework Ed Merks, Ph.D. Software Architect IBM Canada Ltd.
1 UML and Petri Nets for Test Case Generation From Fondue to CO-OPN: (my) first iteration.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
A Template-Based Model Transformation Approach Using A Simplified Hierarchical Metamodel Ph.D Dissertation Hongming Liu DePaul University.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
Introduction to MDA (Model Driven Architecture) CYT.
Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France
What is MOF? The Meta Object Facility (MOF) specification provides a set of CORBA interfaces that can be used to define and manipulate a set of interoperable.
UML Profiles Eclipse ECESIS Project The UML Profile technology SOFTEAM 144 Ave des Champs Elysées Paris, France
IBM Software Group ® Overview of SA and RSA Integration John Jessup June 1, 2012 Slides from Kevin Cornell December 2008 Have been reused in this presentation.
OCL Tool Support Sagar A. Tamhane CSE 6323 – FMSE.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
A Meta-Level Specification and Profile for AspectJ in UML Joerg Evermann School of Information Management Victoria University of Wellington.
XASTRO-2 Overview Presentation CCSDS SAWG Athens Meeting 12 th April 2005.
ModelPedia Model Driven Engineering Graphical User Interfaces for Web 2.0 Sites Centro de Informática – CIn/UFPe ORCAS Group Eclipse GMF Fábio M. Pereira.
HL7 OHT Charter Summary Report Project Name: HL7 Static Model Designer Brief Project Description: An Eclipse platform product for design & developing HL7.
ESDI Workshop on Conceptual Schema Languages and Tools
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
A division of Data Access Technologies, Inc. Combining Alf and UML in Modeling Tools Ed Seidewitz, Model Driven Solutions Jérémie Tatibouet, CEA 28 September.
All Presentation Material Copyright Eurostep Group AB ® A Meta-model of EXPRESS in UML for MOF and UML to EXPRESS David Price April 2002.
Small is Beautiful Building a flexible software factory using small DSLs and Small Models 1 Jos Warmer Partner, Ordina
® IBM Software Group A Metamodeling Approach to Pattern Specification Maged Elaasar 1,2, Dr. Lionel Briand 1, Dr. Yvan Labiche 1 1 Carleton University,
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Design Overview. Generated Packages ► fUML.Library.* - generated ► fUML.Semantics.* - generated ► fUML.Syntax.* - generated ► fUML.Test.* - generated.
Michael Radloff, Martin Schultz 12th International Conference BPM 2014 Modeling Concepts for Internal Controls in Business Processes – an Empirically Grounded.
1 Model Driven Health Tools Design and Implementation of CDA Templates Dave Carlson Contractor to CHIO
Sheet 1MDAFA2004 Linköping, June 2004 A Language for Model Transformations in the MOF Architecture Ivan Kurtev, Klaas van den Berg University of Twente,
On Combining Multi-formalism Knowledge to Select Models for Model Transformation Testing Sagar Sen (1 st year PhD student), Benoit Baudry, Jean-Marie Mottu.
*** Draft *** Information architecture: meeting past and current HL7 requirements A project of OMG and HL7 Report May 27 th 2009 Dave Carlson and Jobst.
OCL Specification Status
The Importance of Opposites
UML 2.0 Compliance Points Proposal
Object Oriented Concepts -II
Modeling the OCL Standard Library
OCL 2.5 Plans Edward Willink OCL MODELS 2014
Model-Driven Ontology Engineering
Chapter 18: Refining Analysis Relationships
Modelling Clinical Information Using UML
Towards Automatic Model Synchronization from Model Transformation
Object-Oriented Knowledge Representation
ETSI TC MTS TDL SC meeting Reports
Object Constraint Language (MDT OCL) 1
QVT Operational 1.0 Ganymede Simultaneous Release Graduation Review
ETSI TC MTS TDL SC meeting Reports
QVT Operational 1.0 Mini-deck
Abstract Types Defined as Classes of Variables
Software Architecture & Design
Presentation transcript:

Made available under EPL 1.0 Aligning OCL and UML Edward Willink Eclipse OCL Project Lead, Eclipse QVTd Project Lead, Thales OMG OCL RTF Representative, Thales OMG QVT RTF Representative OCL TOOLS th June 2011

Made available under EPL 1.0 Aligning OCL and UML Overview OCL and UML and EMOF Problems Complete OCL Problems and Solutions Values Problems and Solutions Summary

Made available under EPL 1.0 Aligning OCL and UML UML Meta-Model EMOF / Ecore Meta-Model UML Model EMOF / Ecore Model UML Edit Export conforms to UML Model UML Model OCL for EMOF Model OCL Edit Export OCL for UML Model OCL Meta-Model conforms to OpaqueExpression ExpressionInOcl generalises UML and OCL integration ExpressionInOcl ???

Made available under EPL 1.0 Aligning OCL and UML Complete OCL 2.3 Property Definition context MyClass def: upperCaseName : String = name.toUpper() No Property

Made available under EPL 1.0 Aligning OCL and UML XMI Serialization One of three primary OCL compliance points In AS PropertyCallExp.referredProperty : Property No problem for UML/EMOF models Property exists Major problem for Complete OCL Property does not exist

Made available under EPL 1.0 Aligning OCL and UML New Complete OCL Property Definition Property defined (can be referenced) Constraint now owned by Property not Classifier

Made available under EPL 1.0 Aligning OCL and UML New Multiple Models Problem P::X::y defined by a primary UML model P::X::z defined by a Complete OCL document How many P's? How Many X's? What is the value of P::X.ownedAttribute?

Made available under EPL 1.0 Aligning OCL and UML Multiple Models Solution Simple Model Usage How many P's? How Many X's? One What is the value of P::X.ownedAttribute? Set{P::X::y, P::X::z} Reflective Model Usage, URI Access How many P's? How Many X's? Two What is the value of P::X.ownedAttribute? depends on P::X - Set{P::X::y} or Set{P::X::z}

Made available under EPL 1.0 Aligning OCL and UML Meta-Model Problems to solve Library Modeling Reflection Iteration UML alignment obsolete/inconsistent classes in use templates EMOF (and Ecore and...) utility arbitrary meta-meta-models Complete OCL realizability definition of real Property/Operation multiple models, URIs

Made available under EPL 1.0 Aligning OCL and UML Meta-Model Solution Selected UML contributions for UML-alignment Selected OCL contributions for tailored OCL Vendor contributions support practical tooling Merge gives single uniform package OCL::Class, OCL::OclExpression etc

Made available under EPL 1.0 Aligning OCL and UML Overview OCL and UML and EMOF Problems Complete OCL Problems and Solutions Values Problems and Solutions Summary

Made available under EPL 1.0 Aligning OCL and UML LocalSnapShots LocalSnapShot: all names and their values useful for defining semantics N snapshots for OclMessage history 2 snapshots necessary inefficient for practical implementations

Made available under EPL 1.0 Aligning OCL and UML UML Primitives UML Primitives have no representation ensures implementation freedom UML Primitives have no behaviour cannot be used UML Primitives have no conformance cannot be interchanged

Made available under EPL 1.0 Aligning OCL and UML UML Primitive Usage Representation provided by host Class Behaviour/Role defined by host Class

Made available under EPL 1.0 Aligning OCL and UML OCL Primitive Usage StringValue hosts the String primitive provides a representation OCL Standard Library defines behaviour operations of StringValue not String, not a companion class OCL specification defines conformance [IntegerValue/RealValue/BooleanValue... missing]

Made available under EPL 1.0 Aligning OCL and UML OCL Primitives in Java Ignore *Value classes OCL::String implemented by java.lang.String OCL::Integer implemented by java.lang.Integer OCL::Set implemented by java.util.Set oops! number ranges... java.math.BigInteger oops! in OCL: 4 = 4.0 so Set{4} = Set{4.0} Complete OCL adds operations oops! java.lang.String is final

Made available under EPL 1.0 Aligning OCL and UML OCL Values in Java xxxValue provides an indirection IntegerValue/SetValue provide OCL semantics exploit Java for implementation not behaviour IntegerValue may be polymorphic int or long or BigInteger representation IntegerValue-for-int similar to java.lang.Integer

Made available under EPL 1.0 Aligning OCL and UML OCL Object Values in Java ObjectValue can be polymorphic an indirection to a real Object representation Foundation for a Java binding for OCL

Made available under EPL 1.0 Aligning OCL and UML Summary Reviewed Complete OCL and URI issues introduced Pivot meta-model derived from UML reifying missing OCL concepts Reviewed the Values Package provides OCL/Implementation semantic separation basis for a Java binding for OCL

Made available under EPL 1.0 Aligning OCL and UML UML (and OCL) UML MOF OCL Complete MOFEssential MOF (≈ Ecore) Powerful, Flexible, Big Small, Effective, Efficient Analysi s Desig n Implementation Complete MOF Complete OCLEssential OCL

Made available under EPL 1.0 Aligning OCL and UML Significant Problem Summary OCL for EMOF lacks essential elements OpaqueExpression, Constraint Types with features Complete OCL incomplete Property/Operation definition not useable Property/Operation definition not persistable OCL not UML aligned AssociationEnd/Property AssociationClass

Made available under EPL 1.0 Aligning OCL and UML Solution Summary OCL for EMOF lacks essential elements support EMOF only indirectly Complete OCL incomplete complete it OCL not UML aligned define OCL with respect to UML

Made available under EPL 1.0 Aligning OCL and UML Values Integer ?? Type ?? OrderedSet ?? *Type* ??

Made available under EPL 1.0 Aligning OCL and UML