Presentation is loading. Please wait.

Presentation is loading. Please wait.

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.

Similar presentations


Presentation on theme: "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."— Presentation transcript:

1 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, alexis.fouche@cea.fr, florian.noyrit@cea.fr, sebastien.gerard@cea.fr 2 Department of Systems and Computer Engineering Carleton University, Ottawa, Canada Crossplatform Software Inc. Ottawa, Canada melaasar@gmail.com

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 2

3 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

4 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

5 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

6 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

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

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

9 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

10 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 ✓ ✓ ? ?

11 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

12 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

13 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 ✕

14 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

15 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 ? ?

16 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 ✓ ✕

17 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

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

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

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

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

22 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 ✓ ✓ ✕

23 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

24 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 +

25 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 ? ?

26 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 ? ?

27 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

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

29 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 1 2 3 4 instanceOf Diagram model | PAGE 29

30 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

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


Download ppt "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."

Similar presentations


Ads by Google