12
Quality Analysis of QVTo Model Transformations Kick-off Presentation Christine Gerpheide Advisors: Alexander Serebrenik (TU/e) Ramon Schiffelers (ASML) 15-1-2014

Quality Analysis of QVTo Model Transformations - TU/e · Quality Analysis of QVTo Model Transformations Kick-off Presentation Christine Gerpheide ... •Exist QVTo tools for dependency

Embed Size (px)

Citation preview

Quality Analysis of QVTo

Model Transformations

Kick-off Presentation

Christine Gerpheide

Advisors: Alexander Serebrenik (TU/e)

Ramon Schiffelers (ASML)

15-1-2014

Problem Statement

• Many resources are available to

improve quality in GPLs

• Such resources don’t exist for QVTo

• …the OMG standard for M2M transformations

• (and ASML has 20k lines of it)

15-1-2014 PAGE 2

Background on QVT

• Query, View, Transformation (2007)

• “Fantastically complex” [1]

• QVTo

• Imperative

• Composition, abstraction, inheritance, extension

• Intermediate properties and classes

PAGE 3 15-1-2014

Research Questions

• Q1: How do we assess quality in QVTo model

transformations?

a) Which metrics exist which suggest quality attributes?

b) What best practices can be identified?

• Q2: How do we improve quality in QVTo model

transformations?

15-1-2014 PAGE 4

Ideal deliverables

• A tool for QVTo which helps improve code quality

• Distilled best practices

• Areas for future research

15-1-2014 PAGE 5

Approach

• MDE Quality Framework by Mohagheghi [3]

15-1-2014 PAGE 6

1

2 3

4

5

6

7

Applying the framework

1. Identify quality goals ISO 9216 [4] and van Amstel’s definition [2] as starting

points.

2. Identify target objects Transformation code and transformation process

3. Identify quality-carrying properties Exploratory study

4. Specify how to evaluate

5. Specify association between quality goals and properties

6. Review and evaluate for practice

7. Execute (implement) and re-evaluate model Validation

15-1-2014 PAGE 7

Exploratory Study

• Find information on:

• Common issues

• Design patterns

• Difficulties

• Metrics

• Tooling

• Testing

• …

• To finalize quality goals and find quality-carrying

properties in QVTo

15-1-2014 PAGE 8

Existing material Case studies

Expert interviews

A peak at results so far…

• Existing material

• Mixing notations (text, graphical, black-boxes) reduces

understandability. [5,6]

• Leveraging OCL syntax increases interoperability, conciseness

and often understandability [10,11]

• Exist QVTo tools for dependency analysis and unit testing

already. [7,8,9]

• 4 ASML QVTo developers interviewed

• Less imperative-style programming is more readable and faster.

• They disagree over when to use “mappings” versus “helpers”.

• The structure of a transformation should mirror the metamodel

hierarchy.

15-1-2014 PAGE 9

Timeline

Week Activities

1 Research software quality

Formalize approach

2 Learn QVTo

3 Prepare exploratory research

4 Christmas, mostly

5 Exploratory: Review existing material

6 Exploratory: Perform interviews and receive case studies

7 Process exploratory findings

8… ...Specify how to evaluate quality properties, implement tool,

validate!

Project dates: 4/12/13 – 4/6/14 (26 weeks)

15-1-2014 PAGE 10

Questions?

• References • [1] Stahl, Thomas and Markus Voelter. Model-driven software development. Chichester: John Wiley & Sons,

2006.

• [2] van Amstel, Marcel. Assessing and Improving the Quality of Model Transformations. PhD Thesis: TU

Eindhoven, 2012.

• [3] Mohagheghi, Parastoo, and Vegard Dehlen. "Developing a quality framework for model-driven

engineering." Models in Software Engineering. Springer Berlin Heidelberg, 2008. 275-286.

• [4] ISO- International Organization for Standardization, ISO/IEC 9126-1,

• [5] Voelter, Markus. "Best practices for DSLs and model-driven development."Journal of Object Technology 8.6

(2009): 79-102.

• [6] http://www.eclipse.org/forums/index.php/t/368894/

• [7] Rentschler, Andreas, et al. "Interactive Visual Analytics for Efficient Maintenance of Model

Transformations." Theory and Practice of Model Transformations. Springer Berlin Heidelberg, 2013. 141-157.

http://sdqweb.ipd.kit.edu/wiki/Transformation_Analysis

• [8] van Dongen , Maarten. Visualization of Model Transformation in QVTo. MSc. Thesis: TU Eindhoven, 2012.

• [9] Ciancone, Andrea, Antonio Filieri, and Raffaela Mirandola. "MANTra: Towards model transformation

testing." Quality of Information and Communications Technology (QUATIC), 2010 Seventh International

Conference on the. IEEE, 2010.

• [10] Raw notes from reviewers of Transformation Tool Contest 2010.

• [11] S. Kolahdouz-Rahimi, K. Lano, S. Pillay, J. Troya, P. Van Gorp, Evaluation of model transformation

approaches for model refactoring, Science of Computer Programming, Available online 13 August 2013.

15-1-2014 PAGE 11

Quality Framework Example

PAGE 12 15-1-2014