Download presentation
Presentation is loading. Please wait.
Published byNeil Harrell Modified over 9 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.