Usage of OCL April 2006 - 1 - Usage of OCL for design guidelines of models Christian Hein, Fraunhofer FOKUS April 2006.

Slides:



Advertisements
Similar presentations
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
Advertisements

June 9, 2006 Transforming models with ATL © 2006 ATLAS Nantes Transforming models with ATL The A TLAS Transformation Language Frédéric Jouault ATLAS.
OCL2 April A presentation of OCL 2 Object Constraint Language Christian Hein, Fraunhofer FOKUS April 2006.
Page 1 Automatic Evaluation of Modelling Rules and Design Guidelines, July 2006 Automatic Evaluation of Modelling Rules and Design Guidelines Tibor Farkas,
Query/Views/Transformations © 2006 ATLAS Nantes Query/Views/Transformations An introduction to the MOF 2.0 QVT standard with focus on the Operational.
Composable Metamodeling Environment Akos Ledeczi Institute for Software Integrated Systems Vanderbilt University
Families to Persons © 2007 ATLAS Nantes "Families to Persons" A simple illustration of model-to-model transformation Freddy Allilaire Frédéric Jouault.
Formal Methods of Systems Specification Logical Specification of Hard- and Software Prof. Dr. Holger Schlingloff Institut für Informatik der.
OORPT Object-Oriented Reengineering Patterns and Techniques 13. Model-Driven Development Prof. O. Nierstrasz.
Modeling Process-Oriented Integration of Services Using Patterns and Pattern Primitives Uwe Zdun and Schahram Dustdar Distributed Systems Group Institute.
Detail Design Extending UML and Object Design. Object Design.
1 A Framework for Measurement Valérie Paulus, Miguel Lopez, Gregory Seront, Simon Alexandre.
NJIT Use Case Model Operation Contracts Prepared By: Sumit Sharma.
Page 1 Building Reliable Component-based Systems Chapter 2 -Specification of Software Components Chapter 2 Specification of Software Components.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
R R R CSE870: Advanced Software Engineering: Cheng (Sp 2001)CSE870: Advanced Software Engineering: Cheng (Sp 2001)1 Mini Project An Overview.
MDE In A Sales Management System: A Case Study © 2008 INRIA, TUD & SAP MDE In A Sales Management System: A Case Study Mathias Fritzsche, Hugo Bruneliere,
MDD Tutorial for managers Eclipse ECESIS Project A presentation of MDD basics Model-driven development (MDD) tutorial for managers EUROPEAN SOFTWARE INSTITUTE,
XML Metadata Interchange (XMI)
Placeholder for Pictures Domain-specific Templates for Refinement Transformations Lucia Kapova, Thomas Goldschmidt, Jens Happe, Ralf Reussner.
Comparing M2T & M2M Complementary Approaches © 2008 INRIA, University of York & SINTEF Comparing M2T & M2M Complementary Approaches Hugo Bruneliere,
ModelBus Eclipse ECESIS Project ModelBus An Open and Distributed Platform for MDD Tool Interoperability LIP6, Laboratoire d'Informatique de Paris.
Article Title: Optimization model for resource assignment problems of linear construction projects ShuShun Liu & ChangJung Wang, National Yunlin University.
Advanced Applications Of Model-to-Model Transformation © 2008 INRIA Advanced Applications Of Model-to-Model Transformation Hugo Bruneliere & Frédéric.
Composing Models: Principles & Techniques © Copyright TUBS & TUD Composing Models: Principles & Techniques Steven Völkel & Jendrik Johannes.
CS3773 Software Engineering
MARTE Tutorial An OMG standard: UML profile to develop Real-Time and Embedded systems Overview, NFP / VSL, GCM.
ArchiMate Authors : eSchoolink Group - ITNLU. Contents 1. What’s ArchiMate ? 2. Why ArchiMate ? 3. Main Benefits of ArchiMate 4. Layers of ArchiMate 5.
A presentation of OCL 2 Object Constraint Language Fraunhofer FOKUS.
A Tooling Environment for Quality-Driven Domain- Specific Modelling Janne Merilinna.
Analyzing the Requirements with Formal Specifications Vienna Development Method Specification Language (VDM-SL) Book: Formal Software Development From.
Model Handling with EMF Eclipse ECESIS Project Model handling with EMF An introduction to the Eclipse Modeling Framework ATLAS group (INRIA & LINA),
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 11 Subsystem Design.
Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France
How to write a successful EU funded project proposal? Fred de Vries Brussels 21 April 2004 Seminar Networking eLearning Practitioners.
UML Profiles Eclipse ECESIS Project The UML Profile technology SOFTEAM 144 Ave des Champs Elysées Paris, France
UDM An Infrastructure for Implementing Domain-Specific Modeling Languages Endre Magyari, Arpad Bakay, Andras Lang, Tamas Paka, Attila Vizhanyo, Aditya.
SaveUML System design. System overview Possible...
WP 3.3 © Copyright Xactium, TUBS & TUD How to build a set of DSLs: from Theory to Practise Xactium, TUBS, Jendrik Johannes (TUD)
A Meta-Level Specification and Profile for AspectJ in UML Joerg Evermann School of Information Management Victoria University of Wellington.
A language to describe software texture in abstract design models and implementation.
1 OCL Tools Supervised by Prof. Daniel Amyot May Khalil Nadia Spido Submitted to Professor Daniel Amyot in partial fulfillment of the requirements for.
Science, research and development European Commission IDARI Project Meeting Tartu, June 2005 Martin Greimel Scientific Officer Directorate-E ‘Biotechnology,
A Lightweight GRL Profile for i* Modeling Presenter: Alexei Lapouchnian Daniel Amyot, Jennifer Horkoff, Daniel Gross, and Gunter Mussbacher {damyot,
Introduction to Model-Driven Simulation © 2008 SAP, TU Dresden, XJ Technologies Introduction to Model-Driven Simulation Mathias Fritzsche 1, Jendrik.
An ATL Example © 2005 ATLAS Nantes An ATL Example The BibTeXML to DocBook Transformation ATLAS group (INRIA & LINA), University of Nantes, France.
UML 2 Models for ODP Engineering/Technology Viewpoints – An Experiment - Daisuke Hashimoto Hiroshi.
Modelling Support for Quality of Service Eclipse ECESIS Project Modelling Support for Quality of Service Department for Cooperative and Trusted Systems.
SEE-GRID-SCI The SEE-GRID-SCI initiative is co-funded by the European Commission under the FP7 Research Infrastructures contract no.
This project has been funded with support from the European Commission. Learning to Learn Module Information.
COMP 6471 Software Design Methodologies Winter 2006 Dr Greg Butler
Jairson Vitorino, Cin UFPE May, 2nd 2005
Towards a Reference Quality Model for Digital Libraries Maristella Agosti Nicola Ferro Edward A. Fox Marcos André Gonçalves Bárbara Lagoeiro Moreira.
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN Objectives Describe the book goals and scope Define OOA/D (Object-Oriented Analysis and Design) Illustrate.
Parastoo Mohagheghi 1 A Multi-dimensional Framework for Characterizing Domain Specific Languages Øystein Haugen Parastoo Mohagheghi SINTEF, UiO 21 October.
Introduction To Model-to-Model Transformation © 2008 INRIA Introduction To Model-to-Model Transformation Hugo Bruneliere & Frédéric Jouault INRIA.
System Monitoring using Constraint Checking as part of Model Based System Management 2007 Monitoring using Constraint Checking as part.
CSCI 3428: Software Engineering Tami Meredith UML Unified Modeling Language.
An Introduction to Metamodelling Eclipse ECESIS Project An Introduction to Metamodelling Principles & Fundamentals Department of Computer Science,
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Achievements in 2016 Data Integration Linked Open Metadata
The Development Process of Web Applications
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
TAL 7011 Architecture of Large Software Systems
Chapter 13 Logical Architecture.
إستراتيجيات ونماذج التقويم
Chapter 13 Logical Architecture.
Object Constraint Language (MDT OCL) 1
XML Metadata Interchange (XMI)
Financial Support to Third Parties (cascade funding)
Presentation transcript:

usage of OCL April Usage of OCL for design guidelines of models Christian Hein, Fraunhofer FOKUS April 2006

usage of OCL April Context of this work The present courseware has been elaborated in the context of the MODELWARE European IST FP6 project ( Co-funded by the European Commission, the MODELWARE project involves 19 partners from 8 European countries. MODELWARE aims to improve software productivity by capitalizing on techniques known as Model-Driven Development (MDD). To achieve the goal of large-scale adoption of these MDD techniques, MODELWARE promotes the idea of a collaborative development of courseware dedicated to this domain. The MDD courseware provided here with the status of open source software is produced under the EPL 1.0 license.

usage of OCL April Overview design guidelines for models example and practical demonstration

usage of OCL April design guidelines for models guidelines can be expressed as OCL constraints belong to a model in an indirect way must not be strict, can be broken without consequence can be changed over time (different from model to model) clearness of models models are more readable and plain improve quality of models not allow operations with more than 5 parameters

usage of OCL April design guidelines for models models guidelines result chief software architect company manager modeller designs formulates input parameter evaluates guidelines broken guidelines obeyed

usage of OCL April example and practical demonstration company model based on UML2 design guidelines from the chief software architect 1. all class names have to start with an upper case 2. an operation do not have more than 2 parameters

usage of OCL April example and practical demonstration translate the constraint from natural language into OCL, therefore we need a snapshot of the UML2 metamodel

usage of OCL April example and practical demonstration all class names have to start with an upper case context Class inv: let upper:Set(String)=Set{'A','B','C','D','E','F', 'G','H','I','J','K','L','M','N','O','P','Q','R', 'S','T','U','V','W','X','Y','Z'} in upper->includes(name.substring(1,1)) an operation do not have more than 2 parameters context Operation inv: ownedParameter->size()<3

usage of OCL April example and practical demonstration three cases are demonstrated first case: both guidelines are obeyed second case: it exists a class which doesn’t start with an upper case:

usage of OCL April example and practical demonstration third case: it exists an operation which owns more than 2 parameters

usage of OCL April Summary OSLO based on the Kent OCL library the shown functionality is also reachable over the modelbus metrics can be handled similar to design guidelines