October 1st 2015 Alexis Fouché 1, Florian Noyrit 1, Sébastien Gérard 1, Maged Elaasar 2 SYSTEMATIC GENERATION OF STANDARD COMPLIANT TOOL SUPPORT OF DIAGRAMMATIC.

Slides:



Advertisements
Similar presentations
Diagram Definition: an Overview Third OMG/Eclipse Symposium 25 March 2012 Maged Elaasar, Senior Software Engineer.
Advertisements

Major Influences on the Design of ODM Dan Chang (IBM) Elisa Kendall (Sandpiper) MDSW 2004.
Visual Model-based Software Development EUD-Net Workshop, Pisa, Italy September 23 rd, 2002 University of Paderborn Gregor Engels, Stefan Sauer University.
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
© 2008 by Borland Software Corp; made available under the EPL v1.0 | 17 March 2008 Introduction to the Graphical Modeling Framework Artem Tikhomirov, Borland.
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
A Formal Foundation Supporting MDD --- ZOOM Approach Hongming Liu Lizhang Qin 11/08/2003.
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
Kari R. Schougaard, PhD Stud. Værktøjer og Teknikker, 2006 UNIVERSITY OF AARHUS Department of Computer Science Unified Modeling Language Visual language.
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
Design Management: When Model Driven Engineering Embraces the Semantic Web NECSIS 2012, Gatineau, QC 27 June 2012 Maged Elaasar.
1 Ivano Malavolta, University of L’aquila, Computer Science Department Ivano Malavolta DUALLy: an Eclipse platform for architectural languages interoperability.
SAISINUC SOFTWARE ENVIRONMENT Data tools: import, check, export, use DDEP , October 8-10 Marie-Martine Bé, Charlène Bisch, Christophe Dulieu, Mark.
An Approach and Tool for Synchronous Refactoring of UML Diagrams and Models Using Model-to-Model Transformations Hafsteinn Þór Einarsson Helmut Neukirchen.
PRESENTATION 2 Sri Raguraman CIS 895 Kansas State University.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Tools for Diagrammatic Specifications Stian Skjerveggen Supervisors: Yngve Lamo, Adrian Rutle, Uwe Egbert Wolter.
Agenda 1. Introduction 2. Overview of SU-MoVal 3. OCL-based Model Validation 4. QVT-based Transformations 5. Demo of SU-MoVal 6. Conclusion and Future.
Key Challenges for Modeling Language Creation by Demonstration Hyun Cho, Jeff Gray Department of Computer Science University of Alabama Jules White Bradley.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Diagram Definition A Case Study with the UML Class Diagram MoDELS 2011, Wellington, NZ By Maged Elaasar 1,2 (Presenter) and Yvan Labiche.
Models for Language Engineering Bruno F. Barroca.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Specializing and extending the UML
Validated Model Transformation Tihamér Levendovszky Budapest University of Technology and Economics Department of Automation and Applied Informatics Applied.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
Abstract Use Case Map (UCM) scenarios are useful for elicitation and analysis of software requirements However, they must be used in cooperation with complementary.
Verification and Validation in the Context of Domain-Specific Modelling Janne Merilinna.
Integrating Graphical and Textual Modelling Languages Luc Engelen and Mark van den Brand.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
DSL Classification October 21-22, 2007 Benoît Langlois / Thales-EPM Consuela-Elena Jitia / Eric Jouenne, Thales Research & Technology The 7th OOPSLA Workshop.
Dr. Darius Silingas | No Magic, Inc. Domain-Specific Profiles for Your UML Tool Building DSL Environments with MagicDraw UML.
® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM ADTF, OMG June 2009, San Jose,
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.
PRESENTATION 2 Sri Raguraman CIS 895 Kansas State University.
Adding a Textual Syntax to an Existing Graphical Modeling Language: Experience Report with GRL Vahdat Abdelzad, Daniel Amyot, Timothy Lethbridge University.
Gregor v. Bochmann, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher(2009) with material from Amyot User Requirements Notation (URN)
Generating Software Documentation in Use Case Maps from Filtered Execution Traces Edna Braun, Daniel Amyot, Timothy Lethbridge University of Ottawa, Canada.
Murielle Florins 1, Francisco Montero Simarro 2, Jean Vanderdonckt 1, Benjamin Michotte 1 1 Université catholique de Louvain 2 Universidad de Castilla-la-Mancha.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Modeling the ODP Computational Viewpoint with UML 2.0: The Templeman Library Example José Raúl Romero, Antonio Vallecillo Universidad de Málaga, Spain.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
® IBM Software Group A Metamodeling Approach to Pattern Specification Maged Elaasar 1,2, Dr. Lionel Briand 1, Dr. Yvan Labiche 1 1 Carleton University,
Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007.
INTERFACES MANAGEMENT CRYOMODULES Vincent HENNION SYSTEM ENGINEERING ACTIVITIES.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
ESS CRYOMODULE RISKS REGISTER ESS CRYOMODULE COMPONENTS AND CAVITY EXPERTISE Franck PEAUGER14th January 2016.
1 Towards Integrated Tool Support for the User Requirements Notation Jean-François Roy
Aspect-oriented Code Generation Approaches Abid Mehmood & Dayang N. A. Jawawi Department of Software Engineering Faculty of Computer Science and Information.
CHESS Methodology and Tool Federico Ciccozzi MBEES Meeting Sälen, January 2011 January 2011.
Language = Syntax + Semantics + Vocabulary
SysML 2.0 Requirements for Visualization
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
SysML v2 Formalism: Requirements & Benefits
Unified Modeling Language
Daniel Amyot and Jun Biao Yan
Diagram Interchange Proposal
MID: A MetaCASE Tool for a Better Reuse of Visual Notations
Introduction to UML.
Design of Transmission Pipeline Modelling Language
TDL: The ETSI Test Description Language
Chapter 20 Object-Oriented Analysis and Design
Execute your Processes
TDL: The ETSI Test Description Language
Software Architecture & Design
Presentation transcript:

October 1st 2015 Alexis Fouché 1, Florian Noyrit 1, Sébastien Gérard 1, Maged Elaasar 2 SYSTEMATIC GENERATION OF STANDARD COMPLIANT TOOL SUPPORT OF DIAGRAMMATIC MODELING LANGUAGES 1 CEA, LIST, Laboratory of model driven engineering for embedded systems, 2 Department of Systems and Computer Engineering Carleton University, Ottawa, Canada Crossplatform Software Inc. Ottawa, Canada

AGENDA CEA | 1 OCTOBER 2015 THE MOTIVATIONDIAGRAM DEFINITION AS A FORMALISM FOR DIAGRAMMATIC LANGUAGE SPECIFICATIONPRESENTATION OF THE APPROACHEVALUATION OF DIAGRAM DEFINITION IN PRACTICEEVALUATION RESULTS - VALIDATIONWRAP UP | PAGE 2

AGENDA CEA | 1 OCTOBER 2015 THE MOTIVATIONDIAGRAM DEFINITION AS A FORMALISM FOR DIAGRAMMATIC LANGUAGE SPECIFICATIONPRESENTATION OF THE APPROACHEVALUATION OF DIAGRAM DEFINITION IN PRACTICEEVALUATION RESULTS - VALIDATIONWRAP UP | PAGE 3

VISUAL MODELING LANGUAGE SPECIFICATION CEA | 1 OCTOBER 2015 Class Concrete syntax Graphical vocabulary Visual aspect Abstract syntax specified with Natural language Specified with models Usable by computers ✓ Rely on ”by example” interpretation Not usable by computers ✕ Metamodel specified with | PAGE 4

DIAGRAMMATIC LANGUAGE TOOLING GENERATION PROCESS CEA | 1 OCTOBER 2015 Platform- dependent specification Diagram editor Different tools will rely on various interpretation and produce different behaviors ✕ standard specification Human interpretation Rely on ”by example” interpretation Not usable by computers ✕ Tooling Platform Formal specification Directly usable by computers Standard compliant tooling by construction ✓✓ Systematic process | PAGE 5

AGENDA CEA | 1 OCTOBER 2015 THE MOTIVATIONDIAGRAM DEFINITION AS A FORMALISM FOR DIAGRAMMATIC LANGUAGE SPECIFICATIONPRESENTATION OF THE APPROACHEVALUATION OF DIAGRAM DEFINITION IN PRACTICEEVALUATION RESULTS - VALIDATIONWRAP UP | PAGE 6

UML NOTATION WITH DIAGRAM DEFINITION CEA | 1 OCTOBER 2015 Abstract Syntax Concrete Syntax Graphical Vocabulary [OMG12] Object Management Group, Diagram Definition formal/ , OMG, | PAGE 7

UMLDI METAMODEL EXTRACT CEA | 1 OCTOBER 2015 | PAGE 8 Inheritance from DI

AGENDA CEA | 1 OCTOBER 2015 THE MOTIVATIONDIAGRAM DEFINITION AS A FORMALISM FOR DIAGRAMMATIC LANGUAGE SPECIFICATIONPRESENTATION OF THE APPROACHEVALUATION OF DIAGRAM DEFINITION IN PRACTICEEVALUATION RESULTS - VALIDATIONWRAP UP | PAGE 9

DD TO SYSTEMATIZE THE TOOLING GENERATION PROCESS CEA | 1 OCTOBER 2015 Platform- dependent specification (GMFGen) Diagram editor Systematic process Complete formal specification based on DD use Evaluation: is the DD standard sufficient to fully specify the visual aspect of a language ? Validation: do we generate suitable spec-compliant tooling ? Language specification DD M2M M2T build Tooling Platform | PAGE 10 ✓ ✓ ? ?

USE CASE: A SUBSET OF THE UML CLASS DIAGRAM CEA | 1 OCTOBER 2015 Targeted result What is required from the visual aspect specification (UMLDI): 1.The fully detailed graphical grammar (graphical elements + graphical relations) 2.The graphical behavior of each elements 3.The mapping from concrete to abstract syntax  Restricted to 1-to-1 mapping 4.The mapping from concrete syntax to graphical vocabulary  Left aside (require great development time: full QVTo mapping + tool support) | PAGE 11

AGENDA CEA | 1 OCTOBER 2015 THE MOTIVATIONDIAGRAM DEFINITION AS A FORMALISM FOR DIAGRAMMATIC LANGUAGE SPECIFICATIONPRESENTATION OF THE APPROACHEVALUATION OF DIAGRAM DEFINITION IN PRACTICEEVALUATION RESULTS - VALIDATIONWRAP UP | PAGE 12

1. THE GRAPHICAL GRAMMAR ASPECT CEA | 1 OCTOBER 2015 Extract of UMLDI meta-model Enriched syntax in UMLDI meta-model | PAGE 13 Does UMLDI provide enough information on graphical elements and relations ? ? DI allows to fully constrain the graphical grammar ✓ Class shape conforming to UMLDI The provided information is too general ✕

2. THE GRAPHICAL BEHAVIOR ASPECT CEA | 1 OCTOBER 2015 DI meta-model UML profile for DI meta-model targeting GMF-Tooling | PAGE 14 Does the information provided by DI match the targeted platform requirements ? ? Using a UML profile allows ad-hoc graphical behavior identification ✓ DI provides almost no information about graphical behavior ✕ The targeted platform (GMF-Tooling) makes the distinction between 7 default graphical behaviors

3. THE MAPPING TO THE ABSTRACT SYNTAX CEA | 1 OCTOBER 2015 Each graphical element can be linked to any abstract syntax elements Extract of DI meta-model | PAGE 15 Does DI provide a satisfying mechanism to specify the mapping with the abstract syntax ? ? ✓ But is that enough to deduce the mapping between graphical relations and abstract syntax relations ? ?

CEA | 1 OCTOBER 2015 Development of an algorithm to analyze the whole UML meta-model.  172 containments cases including 34 ambiguous.  Considering the UML redefinition mechanism allows to solve only one case.  Language designer or user intervention is required. Diagram Package Class entry State exit doActivity Behavior packagedElement Abstract syntax 3. THE MAPPING TO THE ABSTRACT SYNTAX | PAGE 16 While restricting the scope to 1-to-1 mapping and graphical inclusion, can we automatically deduce connections between graphical inclusion and abstract syntax containments ? ? Simple case, can be solved automatically ? Ambiguous case, can not be solved automatically ✓ ✕

AGENDA CEA | 1 OCTOBER 2015 THE MOTIVATIONDIAGRAM DEFINITION AS A FORMALISM FOR DIAGRAMMATIC LANGUAGE SPECIFICATIONPRESENTATION OF THE APPROACHEVALUATION OF DIAGRAM DEFINITION IN PRACTICEEVALUATION RESULTS - VALIDATIONWRAP UP | PAGE 17

| PAGE 18 THE ENRICHED UMLDI METAMODEL CEA | 1 OCTOBER Graphical grammar: Graphical element distinction Inheritance from DI

THE ENRICHED UMLDI METAMODEL CEA | 1 OCTOBER Graphical grammar: Graphical element distinction Syntax enrichment | PAGE 19

THE ENRICHED UMLDI METAMODEL CEA | 1 OCTOBER Graphical grammar: Graphical element distinction Syntax enrichment 2.Graphical element’s behavior distinction | PAGE 20

THE ENRICHED UMLDI METAMODEL CEA | 1 OCTOBER Graphical grammar: Graphical element distinction Syntax enrichment 2.Graphical element’s behavior distinction 3.Connections with abstract syntax elements | PAGE 21

THE GENERATED DIAGRAM EDITOR CEA | 1 OCTOBER 2015 Graphical elements are correctly handled Graphical relation are correctly handled Only the simple cases are handled | PAGE 22 ✓ ✓ ✕

AGENDA CEA | 1 OCTOBER 2015 THE MOTIVATIONDIAGRAM DEFINITION AS A FORMALISM FOR DIAGRAMMATIC LANGUAGE SPECIFICATIONPRESENTATION OF THE APPROACHEVALUATION OF DIAGRAM DEFINITION IN PRACTICEEVALUATION RESULTS - VALIDATIONWRAP UP | PAGE 23

1. THE GRAPHICAL GRAMMAR ASPECT CEA | 1 OCTOBER 2015 | PAGE 24 Validation: do we generate suitable spec-compliant tooling ? Evaluation: does the DD standard provide satisfying mechanism to specify the graphical grammar of a diagrammatic language ? The graphical grammar for our use case has been successfully specified using DD and is correctly handled by the generated diagram editor ✓ ? ? The DI metamodel allows fully specifying graphical elements and relations for a diagrammatic language ✓ The DI formalism provide extensibility and reusability +

2. THE GRAPHICAL BEHAVIOR ASPECT CEA | 1 OCTOBER 2015 Validation: do we generate suitable spec-compliant tooling ? | PAGE 25 Evaluation: does the DD standard provide satisfying mechanism to specify the graphical behavior of a diagrammatic language ? The platform-dependent graphical behaviors are correctly exploited in the generated diagram editor ✓ The use of an external mechanism (UML profile) allows platform-dependent identification of graphical behaviors !✓ DD could provide a formalism for declarative graphical behavior specification, but this is still an on-going research topic ? ?

3. THE MAPPING TO THE ABSTRACT SYNTAX CEA | 1 OCTOBER 2015 | PAGE 26 Validation: do we generate suitable spec-compliant tooling ? Evaluation: does the DD standard provide satisfying mechanism to specify the mapping from concrete to abstract syntax ? Simple 1-to-1 mapping specification is correctly exploited in the generated diagram editor ✓ Simple 1-to-1 mapping can be correctly specified, ambiguity issue about graphical relations can be tackled by either designer or user intervention !✓ DD could provide a formalism for complex mapping specification (e.g. event- driven incremental transformation), but this is still an on-going research topic ? ?

4. THE GRAPHICAL VOCABULARY CEA | 1 OCTOBER 2015 | PAGE 27 Validation: do we generate suitable spec-compliant tooling ? Evaluation: does the DD standard provide satisfying mechanism to specify the graphical vocabulary of a diagrammatic language ? Only the rendering has been tested X ? ? Not evaluated X Expect challenging implementation but theory is convincing

DRT/LIST DILS LISE Commissariat à l’énergie atomique et aux énergies alternatives Centre de Saclay | Gif-sur-Yvette Cedex Etablissement public à caractère industriel et commercial | R.C.S Paris B CEA | 1 OCTOBER 2015 Thank you for your attention | PAGE 28

HANDLING THE GRAPHICAL VOCABULARY CEA | 1 OCTOBER 2015 UMLDIDG FigureViewMap + void paint(Graphics graphics) QVTo mapping Class Diagram canvas FigureViewMap + void paint(Graphics graphics) FigureViewMap + void paint(Graphics graphics) 1.Get UMLDI element 2.Produce DG element 3.Render DG element 4.Repaint related FigureViewMaps instanceOf Diagram model | PAGE 29

TECHNICAL OVERVIEW OF THE TOOLING GENERATION PROCESS CEA | 1 OCTOBER 2015 Execution of the prototype on UMLDI Execution of the GMFT M2T transformation M2M Transformation M2T Transformation deployment Eclipse plugin Diagram editor within Eclipse | PAGE 30

DIAGRAM DEFINITION: BUILDING A COMPLETE DIAGRAMMATIC LANGUAGE SPECIFICATION CEA | 1 OCTOBER 2015 Abstract Syntax Concrete Syntax Graphical Vocabulary [OMG12] Object Management Group, Diagram Definition formal/ , OMG, | PAGE 31