Upload
nguyencong
View
216
Download
3
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
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