Instant Bidirectional QVT Transformation for Runtime Models.

Slides:



Advertisements
Similar presentations
Jeremy S. Bradbury, James R. Cordy, Juergen Dingel, Michel Wermelinger
Advertisements

® IBM Research © 2006 IBM Corporation Faceted Logic, Ontologies, and Wikis: Possible Approaches for ONTOLOG Content John Boz Handy-Bosma, Ph.D., Senior.
Eclipse, M2M and the Internet of Things
Modeling Services Model Interoperability Xavier Blanc – University Paris VI.
Wynne HARLEN Susana BORDA CARULLA Fibonacci European Training Session 5, March 21 st to 23 rd, 2012.
Eugene Syriani Jeff Gray University of Alabama Software Engineering Group Department of Computer Science College of Engineering.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Software Testing and Quality Assurance
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
Software Testing and Quality Assurance
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Software Engineering Tools and Methods Presented by: Mohammad Enamur Rashid( ) Mohammad Rashim Uddin( ) Masud Ur Rahman( )
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Module 3: Table Selection
Logic Programming Based Model Transformations An overview of related work.
Yu SunUniversity of Alabama at Birmingham PAR Works Jeff Gray University of Alabama Montpellier, France July 3rd, 2013 This research is supported.
Context Tailoring the DBMS –To support particular applications Beyond alphanumerical data Beyond retrieve + process –To support particular hardware New.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
© 2010 HCMUNS. NII-Internship program proposal: Evolution of modeling languages and models Submitted by: BUI TAN LOC NII Supervisor: Professor ZHENJIANG.
Model transformation with a dedicated imperative language IRISA Rennes (France) - Triskell team Jean-Marc Jézéquel Didier Vojtisek Jean-Philippe Thibault.
A Tooling Environment for Quality-Driven Domain- Specific Modelling Janne Merilinna.
Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France
: AppRoot name : pkusi : Room number = 1434 temp = 16.0 : Person name = Hui id = 102 : Thing name = mobile-phone id = 104 root room person thing own owner.
Formalizing the Asynchronous Evolution of Architecture Patterns Workshop on Self-Organizing Software Architectures (SOAR’09) September 14 th 2009 – Cambrige.
On the Representation of Intangible Objects such as Software in a Measurement Context Miguel Lopez Valérie Paulus Grégory Seront Simon Alexandre.
What is MOF? The Meta Object Facility (MOF) specification provides a set of CORBA interfaces that can be used to define and manipulate a set of interoperable.
Validated Model Transformation Tihamér Levendovszky Budapest University of Technology and Economics Department of Automation and Applied Informatics Applied.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
A Framework for the Reconfiguration of Ubicomp Systems Pau Giner, Carlos Cetina, Joan Fons, Vicente Pelechano.
Design Management: a Collabortive Design Solution ECMFA 2013 Montpellier, France Maged Elaasar (Presenter) Senior Software Engineer, IBM
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
Nikitas N. Karanikolas, Maria Nitsiou, Emmanuel J. Yannakoudakis and Christos Skourlas CUDL Language Semantics, Liven Up the FDB Data Model.
Contracts for Concurrency - Contracts & Inheritance Aryabrata Basu University of Georgia.
Performance evaluation of component-based software systems Seminar of Component Engineering course Rofideh hadighi 7 Jan 2010.
Hybrid Transformation Modeling Integrating a Declarative with an Imperative Model Transformation Language Pieter Van Gorp
Supporting Parallel Updates with Bidirectional Model Transformations Yingfei Xiong and Masato Takeichi University of Tokyo, Japan Song Hui Peking University,
A Mechanized Model for CAN Protocols Context and objectives Our mechanized model Results Conclusions and Future Works Francesco Bongiovanni and Ludovic.
CEN5011, Fall CEN5011 Software Engineering Dr. Yi Deng ECS359, (305)
A new viewpoint for change management in RM-ODP systems Nesrine Yahiaoui 1,2, Bruno Traverson 1, Nicole Lévy 2 1 EDF R&D - 2 UVSQ PRiSM Workshop on ODP.
Application Ontology Manager for Hydra IST Ján Hreňo Martin Sarnovský Peter Kostelník TU Košice.
Generating Software Documentation in Use Case Maps from Filtered Execution Traces Edna Braun, Daniel Amyot, Timothy Lethbridge University of Ottawa, Canada.
7 Strategies for Extracting, Transforming, and Loading.
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
October 1st 2015 Alexis Fouché 1, Florian Noyrit 1, Sébastien Gérard 1, Maged Elaasar 2 SYSTEMATIC GENERATION OF STANDARD COMPLIANT TOOL SUPPORT OF DIAGRAMMATIC.
1 Presentation Methodology Summary B. Golden. 2 Introduction Why use visualizations?  To facilitate user comprehension  To convey complexity and intricacy.
Design-Directed Programming Martin Rinard Daniel Jackson MIT Laboratory for Computer Science.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Connecting Architecture Reconstruction Frameworks Ivan Bowman, Michael Godfrey, Ric Holt Software Architecture Group University of Waterloo CoSET ‘99 May.
1 An Execution-Driven Simulation Tool for Teaching Cache Memories in Introductory Computer Organization Courses Salvador Petit, Noel Tomás Computer Engineering.
AUTOMATIC GENERATION OF MODEL TRAVERSALS FROM METAMODEL DEFINITIONS Authors: Tomaž Lukman, Marjan Mernik, Zekai Demirezen, Barrett Bryant, Jeff Gray ACM.
+ Informatics 122 Software Design II Lecture 13 Emily Navarro Duplication of course material for any commercial purpose without the explicit written permission.
Smart Grid Big Data: Automating Analysis of Distribution Systems Steve Pascoe Manager Business Development E&O - NISC.
Sheet 1MDAFA2004 Linköping, June 2004 A Language for Model Transformations in the MOF Architecture Ivan Kurtev, Klaas van den Berg University of Twente,
A fault tree – Based Bayesian network construction for the failure rate assessment of a complex system 46th ESReDA Seminar May 29-30, 2014, Politecnico.
Wrap up. Structures and views Quality attribute scenarios Achieving quality attributes via tactics Architectural pattern and styles.
11 Copyright © 2009, Oracle. All rights reserved. Enhancing ETL Performance.
Research on Knowledge Element Relation and Knowledge Service for Agricultural Literature Resource Xie nengfu; Sun wei and Zhang xuefu 3rd April 2017.
Cisco Data Virtualization
Discussions on Heterogeneous Identification Service
SOFTWARE DESIGN AND ARCHITECTURE
Business Process Measures
State your reasons or how to keep proofs while optimizing code
Thinking Visually.
Model-Driven Analysis Frameworks for Embedded Systems
The Extensible Tool-chain for Evaluation of Architectural Models
Towards Automatic Model Synchronization from Model Transformation
RFID Attendance Tracker
Automated Analysis and Code Generation for Domain-Specific Models
QVT Operational 1.0 Mini-deck
Presentation transcript:

Instant Bidirectional QVT Transformation for Runtime Models

Runtime models Models that represent the structure, configuration, etc., of an executing system – Monitoring the system by reading the model – Reconfiguring the system by writing the model – With full semantics basis and supporting tools A hot topic in the models community – “A new trend” by Robert France’s survey on MDE – A in last MoDELS, a topic in this one

Supporting runtime models system Runtime system model System meta-model conforms to RFID readers, tags, sensors… Runtime application model Goods, storage… Runtime application model Persons, things, rooms… Different views according to different application concerns

Supporting runtime models system Runtime system model System meta-model conforms to Runtime application model Application meta-model relation conforms to Guided by Causal connection

Approach overview system Runtime system model System meta-model in MOF conforms to Runtime application model Application meta-model in MOF Relation in QVT-R conforms to Guided by Instant QVT transformation engine

Challenge Instant: – Traditional transformation is from model to model Inefficient when the models are big System changes are small but frequent – Require a new execution from change to change With live models maintained as a reference Bidirectional: – Not bijective, one change may corresponds to many – Need a proper and determined semantics

Illustration

Batching transformation sr : SysRoot name : pkusi ar : AppRoot name = pkusi rm : Room number = 1621 temp = 16.0 ps : Person name = Hui id = 102 th : Thing name=phone id = 104 root roompersonthing own ownerperson locate sn : Sensor id = 1621 temp=16.0 Bright=620.0 rd : Reader id = 1621 tg1 : Tag id = 102 root reader sensor tag reader add:[rd, reader, tg2] tg2 : Tag id = 104 Why in-efficient: the impact of the change is not the whole model, but since the change is not considered, the impact scope is not utilized

Instant transformation sr : SysRoot name : pkusi ar : AppRoot name = pkusi rm : Room number = 1621 temp = 16.0 ps : Person name = Hui id = 102 th : Thing name=phone id = 104 root roompersonthing own ownerperson locate sn : Sensor id = 1621 temp=16.0 Bright=620.0 rd : Reader id = 1621 tg1 : Tag id = 102 root reader sensor tag reader add:[rd, reader, tg2] tg2 : Tag id = 104 set:[th, locate, rm]

About bidirectional sr : SysRoot name : pkusi ar : AppRoot name = pkusi rm : Room number = 1621 temp = 16.0 ps : Person name = Hui id = 102 th : Thing name=phone id = 104 root roompersonthing own ownerperson locate sn : Sensor id = 1621 temp=16.0 Bright=620.0 rd : Reader id = 1621 tg1 : Tag id = 102 root reader sensor tag reader tg2 : Tag id = 104 remove:[rd, reader, tg2] set:[th, locate, null] destroy:[th]

Contributions of this paper Formal semantics of instant QVT transformation for runtime models Algorithms to implement instant QVT transformation An instant transformation engine based on mediniQVT

Formal semantics Abstraction: Properties – Consistency: – Stability: – Restorability:

The algorithm Basic idea – Record the mapped model elements(traces) – Analyze the impact of the change Influence no relations: stop Influence a relation: – Found the relevant traces, re-evaluate Cause new groups of elements to be mapped – Create new traces, record changes Cause an existing trace to fail – Delete the trace, roll-back the recorded changes

Detailed Algorithm

Evaluation Feasibility and effectiveness Performance Limitation

feasibility and effectiveness Main case study: Our SmartLab IOT system – System meta-model: rfid readers, tags, sensors, switches, locks – Application meta-model: rooms, persons, things Scenarios: – Missing personal effects – Leaving the air-conditioner on – … Conforms to the expectations of scenario developers Other case studies: JOnAS-C2, JOnAS-Client/Server

performance Made-up models conforming to IOT case – Control the scale – Eliminate other factors such as device invocations

Limitation For modeling – Every model element must has a key attribute – Only support unordered multiple properties For QVT – No “where” clause (but can use when)

Related work Runtime models – Usually based on code wrapping – One on TGG, but no discussion about runtime-model specific semantics Model transformation with semantics – On batching transformations Incremental transformation (supported by QVT) – Still model to model, not change to change Instant transformation – No transformation language, or TGG

Conclusion Runtime models and causal connections A transformation-based approach to support causal connections – Instant, bidirectional Semantics Algorithms Implementation and evaluation

Thank you for your attention