eugene syriani jeff gray university of alabama software engineering group department of computer...

28
Challenges for Addressing Quality Factors in Model Transformation Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

Upload: neil-harrell

Post on 16-Dec-2015

215 views

Category:

Documents


2 download

TRANSCRIPT

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

Challenges for Addressing Quality Factors in

Model TransformationEugene Syriani

Jeff Gray

University of Alabama

Software Engineering GroupDepartment of Computer Science

College of Engineering

Page 2: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department 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

Page 3: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

3

Quality Challenges in Model Transformation

MODEL TRANSFORMATION STATU QUO

GReAT

ProGReSMOLA

DSLTrans

QVT

Page 4: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 5: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 6: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

6

Quality Challenges in Model Transformation

DESIGN PATTERN CATALOGINGGoal:

Build a repository of design patterns for MT development

Page 7: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

7

Quality Challenges in Model Transformation

PATTERN IDENTIFICATION• Identify & discover recurrent patterns in model transformation

– Completeness issue (see GoF)

– Systematic process

Page 8: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 9: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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!

Page 10: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 11: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 12: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

12

Quality Challenges in Model Transformation

QUALITY ASSESSMENT OF MTGoal:

Define quality attributes & propose framework

where transformations are guaranteed to satisfy these criteria

Page 13: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

13

Quality Challenges in Model Transformation

QUALITY CRITERIA IDENTIFICATION

• Quantifiable attributes

• Techniques to measure them

• Techniques to evaluate transformations

Page 14: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 15: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 16: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 17: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 18: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 19: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 20: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

20

Quality Challenges in Model Transformation

QUALITY CRITERIA IDENTIFICATION

• Define quality attributes at coarser level

• Implement techniques to measure these quality criteria

?

Page 21: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 22: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 23: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 24: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 25: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

25

Quality Challenges in Model Transformation

HOT FOR DETECTING PATTERNS

Page 26: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 27: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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

Page 28: Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering

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?