eugene syriani jeff gray university of alabama software engineering group department of computer...
TRANSCRIPT
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?