Presentation is loading. Please wait.

Presentation is loading. Please wait.

Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering.

Similar presentations


Presentation on theme: "Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering."— Presentation transcript:

1 Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

2 OUTLINE  Motivation  Challenges & Planned Solutions – Elaboration of framework for good practices & their assessment – Formal analysis of this framework – Application in industrial settings  Conclusion 2

3 MODEL TRANSFORMATION STATU QUO 3 GReAT ProGReS MOLA DSLTrans QVT

4 WHAT IS MISSING? Good practices to design transformations – Pragmatics, “intuitions” – Design patterns / anti-patterns Assessments of high quality transformations – Quality Criteria – Evaluation techniques – Metrics 4

5 WHAT WE PROPOSE 1.Define quality criteria based on existing transformations 2.Identify & classify well-founded MT design patterns with proven quality 3.Support MT engineers by integrating patterns in their design in an automated manner 5

6 DESIGN PATTERN CATALOGING Goal: Build a repository of design patterns for MT development 6

7 PATTERN IDENTIFICATION Identify & discover recurrent patterns in model transformation – Completeness issue (see GoF) – Systematic process 7

8 PATTERN IDENTIFICATION Examine a large set of data – Academic, Industrial – Repositories: ATL transformation zoo, ReMoDD, tool contests, benchmarks – Case studies from literature 8

9 PATTERN IDENTIFICATION Discover new patterns – Map GoF patterns to MT paradigm  What does Visitor, Proxy, Composite, etc. mean? – Be creative! 9

10 CAVEAT PATTERN IDENTIFICATION CAVEAT General-purpose vs. Domain-specific MT patterns – Copy elements from source to target model – Animate a state-transition modeling language Language independence – Declarative/imperative, Unidirectional/bi-directional, Implicit/explicit control flow, In-place/out-place/exogenous/endogenous – Application scenarios Level of granularity – Rule level – Multiple rules may be required to perform single task – Re-usable libraries of transformation snippets – Composition of patterns 10

11 PATTERN FORMALISM Facilitate understanding, documenting, communicating, and reasoning about the patterns in a standard way Must be language independent – MOF-like languages – Use of generics/templates – DSL for describing transformations Syntax: – Concise MT patterns – Canonical form Semantics – Well-defined formal semantics – Facilitate analysis Support for higher-order transformation: fully modeled language 11

12 QUALITY ASSESSMENT OF MT Goal: Define quality attributes & propose framework where transformations are guaranteed to satisfy these criteria 12

13 QUALITY CRITERIA IDENTIFICATION Quantifiable attributes Techniques to measure them Techniques to evaluate transformations 13

14 CORRECTNESS Degree to which transformation adheres to a set of requirements Evaluated by V&V techniques Key is to make use of traceability links in a transformation 14 Inspired by ISO 9126

15 RE-USABILITY Ease of re-using a transformation Modular composition of transformation units, rules, complete transformations – Modular transformations (MoTif) – Generic transformations (VIATRA) – Higher-order transformations (ATL, AToM 3 ) 15 Inspired by ISO 9126

16 EFFICIENCY Relationship between performance of execution & amount of resources used under specific conditions Benchmarking Optimization at implementation level, but also at design level Ability to handle large models and complex transformations (fan- in/out) 16 Inspired by ISO 9126

17 RELIABILITY Frequency & criticality of a transformation to behave in an unacceptable manner under permissible operating conditions Security – Fault-tolerance techniques – Exception handling Usability – Ensure invariant properties 17 Inspired by ISO 9126

18 MAINTAINABILITY Effort needed to modify the transformation to satisfy new requirements or correct deficiencies Model & transformation evolution techniques can be applied 18 Inspired by ISO 9126

19 INTEROPERABILITY Cooperation between a given model transformation and other systems: transformation models & other software Model composition Conform to a common standard serialization of models for I/O 19

20 QUALITY CRITERIA IDENTIFICATION Define quality attributes at coarser level Implement techniques to measure these quality criteria 20 ?

21 V&V OF TRANSFORMATION PATTERNS How to verify the MT design patterns against the quality attributes? 21 Quality Criteria Formal Properties Model Checker MT pattern Domain meta-model Result

22 ASSISTED DESIGN OF MODEL TRANSFORMATION Goal: Reduce negative impact of model transformation in complex projects Deep knowledge of semantics of transformation language – Rule scheduling – Attribute/constraint specification – Control logic 22

23 THE ULTIMATE MODEL TRANSFORMATION IDE Detect design patterns based on the pattern catalog during the development of transformations Detect a non-exact match of a cataloged pattern & propose a resolution to make it compatible with catalog 23

24 PATTERN DETECTION Problem: transformations are defined in a declarative way – Hampers maintenance tasks Techniques to detect MT pattern in a given MT – Stochastic based on design space exploration – V&V techniques to statically analyze MT & derive structural/behavioral correspondences with existing pattern – Or re-use MT techniques to detect patterns 24

25 HOT FOR DETECTING PATTERNS 25

26 RESOLUTION OF ILL-FORMED DESIGN Goal: Improve non-functional properties of the transformation almost similar Detect design patterns in a given transformation that are almost similar to one from the catalog 26

27 RESOLUTION OF ILL-FORMED DESIGN Detect non-exact matches Stochastic, search-based techniques to detect similarities between fragments of an MT – Search-based – Transformation by demonstration  Advanced IDE that records examples of how to use a design pattern Evaluation of detection can only be done empirically, by observation 27

28 CONCLUSION Quality Criteria Design Patterns meeting criteria Automated assistance for MT development Your suggestions are vital! Topics for afternoon discussion? 28


Download ppt "Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering."

Similar presentations


Ads by Google