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

Preview:

Citation preview

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?

Recommended