Challenges for Addressing Quality Factors in
Model TransformationEugene Syriani
Jeff Gray
University of Alabama
Software Engineering GroupDepartment of Computer Science
College of Engineering
Quality Challenges in Model Transformation
2
OUTLINE
Motivation
Challenges & Planned Solutions– Elaboration of framework for good practices & their assessment
– Formal analysis of this framework
– Application in industrial settings
Conclusion
3
Quality Challenges in Model Transformation
MODEL TRANSFORMATION STATU QUO
GReAT
ProGReSMOLA
DSLTrans
QVT
4
Quality Challenges in Model Transformation
WHAT IS MISSING?
• Good practices to design transformations– Pragmatics, “intuitions”
– Design patterns / anti-patterns
• Assessments of high quality transformations– Quality Criteria
– Evaluation techniques
– Metrics
5
Quality Challenges in Model Transformation
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 designin an automated manner
6
Quality Challenges in Model Transformation
DESIGN PATTERN CATALOGINGGoal:
Build a repository of design patterns for MT development
7
Quality Challenges in Model Transformation
PATTERN IDENTIFICATION• Identify & discover recurrent patterns in model transformation
– Completeness issue (see GoF)
– Systematic process
8
Quality Challenges in Model Transformation
PATTERN IDENTIFICATION• Examine a large set of data
– Academic, Industrial
– Repositories: ATL transformation zoo, ReMoDD, tool contests, benchmarks
– Case studies from literature
9
Quality Challenges in Model Transformation
PATTERN IDENTIFICATION• Discover new patterns
– Map GoF patterns to MT paradigm What does Visitor, Proxy, Composite, etc. mean?
– Be creative!
10
Quality Challenges in Model Transformation
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
11
Quality Challenges in Model Transformation
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
12
Quality Challenges in Model Transformation
QUALITY ASSESSMENT OF MTGoal:
Define quality attributes & propose framework
where transformations are guaranteed to satisfy these criteria
13
Quality Challenges in Model Transformation
QUALITY CRITERIA IDENTIFICATION
• Quantifiable attributes
• Techniques to measure them
• Techniques to evaluate transformations
14
Quality Challenges in Model Transformation
CORRECTNESSDegree 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
Inspired by ISO 9126
15
Quality Challenges in Model Transformation
RE-USABILITYEase of re-using a transformation
• Modular composition of transformation units, rules, complete transformations– Modular transformations (MoTif)
– Generic transformations (VIATRA)
– Higher-order transformations (ATL, AToM3)
Inspired by ISO 9126
16
Quality Challenges in Model Transformation
EFFICIENCYRelationship 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)
Inspired by ISO 9126
17
Quality Challenges in Model Transformation
RELIABILITYFrequency & criticality of a transformation to behave in an
unacceptable manner under permissible operating conditions
• Security– Fault-tolerance techniques
– Exception handling
• Usability– Ensure invariant properties
Inspired by ISO 9126
18
Quality Challenges in Model Transformation
MAINTAINABILITYEffort needed to modify the transformation to satisfy new
requirements or correct deficiencies
• Model & transformation evolution techniques can be applied
Inspired by ISO 9126
19
Quality Challenges in Model Transformation
INTEROPERABILITYCooperation 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
20
Quality Challenges in Model Transformation
QUALITY CRITERIA IDENTIFICATION
• Define quality attributes at coarser level
• Implement techniques to measure these quality criteria
?
21
Quality Challenges in Model Transformation
V&V OF TRANSFORMATION PATTERNSHow to verify the MT design patterns
against the quality attributes?
QualityCriteria
Formal Properties
Model Checker
MT pattern Domain meta-model
Result
22
Quality Challenges in Model Transformation
ASSISTED DESIGN OF MODEL TRANSFORMATION
Goal:
Reduce negative impact of model transformationin complex projects
• Deep knowledge of semantics of transformation language– Rule scheduling
– Attribute/constraint specification
– Control logic
23
Quality Challenges in Model Transformation
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
24
Quality Challenges in Model Transformation
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
25
Quality Challenges in Model Transformation
HOT FOR DETECTING PATTERNS
26
Quality Challenges in Model Transformation
RESOLUTION OF ILL-FORMED DESIGN
Goal:
Improve non-functional properties of the transformation
• Detect design patterns in a given transformation that arealmost similar to one from the catalog
27
Quality Challenges in Model Transformation
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
28
Quality Challenges in Model Transformation
CONCLUSION• Quality Criteria
• Design Patterns meeting criteria
• Automated assistance for MT development
Your suggestions are vital!Topics for afternoon discussion?
Top Related