SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Budapest University of Technology and Economics
Department of Measurement and Information Systems
INCREMENTAL QUERIES AND TRANSFORMATIONS
FOR ENGINEERING CRITICAL SYSTEMS
Ákos Horváth, István Ráth
Budapest University of Technology and Economics
Fault Tolerant Systems Research Group
Outline of the Talk
Model transformations in
Critical Systems
Engineering
EMF-IncQuery and VIATRA:
Incremental Queries and
Transformations
Industrial applications
• Avionics, automotive, telecom,
cloud
Conclusions
 Main Contributors
o István Ráth
o Ákos Horváth
o Gábor Bergmann
o Ábel Hegedüs
o Zoltán Ujhelyi
o Dániel Varró
o ... and many
more!
MODEL TRANSFORMATIONS IN
CRITICAL SYSTEMS ENGINEERING
Development Process for Critical Systems
Unique Development Process
(Traditional V-Model)
Critical Systems Design
 requires a certification process
 to develop justified evidence
 that the system is free of flaws
Software Tool Qualification
 obtain certification credit
 for a software tool
 used in critical system design
Qualified Tool  Certified Output
DO-178B
IEC 61508
Innovative Tool  Better System
Model-Driven Engineering of Critical Systems
Traditional V-Model Model-Driven Engineering
Main ideas of MDE
• early validation of system models
• automatic source code generation
 quality++ tools ++ development cost--
• DO-178B/C: Software Considerations in Airborne Systems and
Equipment Certification (RTCA, EUROCAE)
• Steven P. Miller: Certification Issues in Model Based Development
(Rockwell Collins)
Models and Transformations in Critical Systems
System Design
Model
Architecture
Design Model
Component
Design Model
Refine
Refine
Design + V&V Artifacts
(Source code, Glue code,
Config. Tables, Test Cases,
Monitors, Fault Trees, etc.)
Code & Test
Generation
VerticalModelTransformations
Component
V&V Model
Architecture
V&V Model
System V&V
Model
Model generation
Back-Annotation
Model generation
Back-Annotation
Model generation
Back-Annotation
Use
Use
Horizontal Model Transformations
Formal
methods
Formal
methods
Design
rules
Design
rules
Design
rules
End-to-End Traceability
End-to-EndTraceability
Model Transformations
• knowledge transfer:
theoretical resultstools
• bridge / integrate
existing languages&tools
Related projects
• CESAR, SAVI, …
• HIDE, DECOS, DIANA,
MOGENTES, CERTIMOT,
GENESYS, SENSORIA
Open Source Eclipse.org Projects
 Incremental
query engine
o Declarative language
o Incremental, live queries
o Highly scalable
 Easy integration
o On-the-fly validation
o Derived features
o Custom views
o Traceability
 Model transformation
framework
o Event-based + reactive execution
platform
o Internal DSL over Xtend
o Scalable M2M & M2T
 High-level features
o Complex event processing
o Design space exploration
o Incremental transform.
EMF-IncQuery VIATRA
Official Eclipse member
2 Project leads
10 Eclipse committers
Tool integration with:
Papyrus UML, Sirius, RMF,
Capella, ARTOP, mbeddr
• Declarative graph query
language
• Transitive closure,
Negative cond., etc.
• Compositional, reusable
Definition
• Incremental evaluation
• Cache result set
• Maintain incrementally
upon model change
Execution
• Derived features,
• On-the-fly validation
• View generation,
Notifications, Soft links,
Databinding,
Features
EMF-IncQuery: An Open Source Eclipse Project
http://eclipse.org/incquery
The IncQuery (IQ) Graph Query Language
 IQ: declarative query language
o Attribute constraints
o Local + global queries
o Compositionality+Reusabilility
o Recursion, Negation,
o Transitive Closure
o Syntax: DATALOG style
pattern routeSensor(sensor: Sensor) = {
TrackElement.sensor(switch,sensor);
Switch(switch);
SwitchPosition. switch(sp, switch);
SwitchPosition(sp);
Route.switchPosition(route, sp);
Route(route);
neg find head(route, sensor);
}
pattern head(R, Sen) = {
Route.routeDefinition(R, Sen);
}
route: Route sp: SwitchPosition
Switch: Switchsensor: Sensor
switchPosition
switch
sensor
routeDefinition
Query(A,B)  ∧condi(Ai,Bi)
• all tuples of model elements a,b
• satisfying the query condition
• along the match A=a and B=b
• parameters A,B can be input/ output
EMF-INCQUERY Architecture
Transaction
In-memory
EMF model
Rete net
Indexer
layer
EMF-INCQUERY
Indexing
In-memory storage
Production network
• Stores intermediate query results
• Propagates changes
Performance of EMF-INCQUERY
 Incremental graph queries based on Rete
 Models in the Eclipse Modeling Framework
model size
runtime
batch
queries
incremental
queries
Exec. time is proportional to
the size of the modification.
Largest synthetic model
(TrainBenchmark)
• 2.8 million nodes
• 11.2 million edges
• revalidation time: 1 ms
Largest real model
(Eclipse 4.0 source code)
• 8.6M nodes+26.2M edges
• revalidation: <20 ms
(except for 1 query)
Motivation: General Tooling Challenges
 Interference between functions
 Commonalities
o Queries, rules, scheduling, conflicts
User
interaction
(modify)
SRC TRG
Batch/Incremental
transformation
Traceability links
Live validation Live views
Derived features
Reactive Event Driven Transformations
1. First transformation
2. Source model changes
4. Fire rule activations
(in relevant context)
SRC1
SRC2
TRG1TRACE1
TRG2TRACE2
3. Detect new activations
Pros:
• Source incremental: driven
by changes of query result
• Chaining
• Avoids continuous comp.
Cons:
• Language-level restrictions
Reactive Event Driven Transformations
VIATRA:
Reactive
Transformation
Engine
Observed
events
Controlled
events
Actions
What has changed?
When to react?
Perform in
consistent state
Reactive Event Driven Transformations
VIATRA:
Reactive
Transformation
Engine
Observed
events
Controlled
events
Actions
• Model modified
• Match appeared
• Event sequence identified
• „Run” button pushed
• Consistent state reached after
editing
• Transaction committed
• Modify model
• Add error marker
• Update view
• Send e-mail
VIATRA: Overview of Features
•Explore design model
candidates
•Satisfying multiple criteria
•Rule based exploration
•Optimization
Design
Space
Exploration
•Detect complex event
sequences
•Rule based reaction
•Xtext based language
Complex
Event
Processing
•Remove sensitive information
from confidential models
•Original model 
Obfuscated model
Model
Obfuscator
 Reactive MT Platform
o MT Language:
• Internal DSL over Xtend
• Transformation API
o MT Engine:
• Event-driven virtual machine
• Batch + Incremental MTs
• Control flow library
• Compiles to Java
• Debugger
• High performance
o Integrations:
• EMF, IncQuery, Xtend,
EMF-UML, …
INDUSTRIAL APPLICATIONS
Relevant application projects
AUTOSAR
(ThyssenKrupp
Presta, etc.)
•Support standard
defined
well-formedness
rules
•On-the-fly
validation
•Scale to large
AUTOSAR models
TRANS-IMA
(Embraer)
•Eclipse based
development
tooling
•HW-SW allocation:
avionics
architecture
•Integration to the
distributed
Embraer simulator
•(1st time in Europe)
EMDW
(Ericsson)
•Executable (UML)
modeling
•Incremental code
generation to C++
•Multiple execution
platform support
•Model
interpretation
(ELTESoft)
MONDO
(EU FP7)
•Modeling in the
cloud
•Scaling out MDE
technologies
•Collaborative
modeling and
version control
•Access control
•Model obfuscation
AUTOSAR- Early validation of design rules
SystemSignalGroup design rule (from AUTOSAR)
o A SystemSignal and its group must be in the same IPdu
o Challenge: find violations quickly in large models
o New difficulties
• reverse
navigation
• complex
manual
solution
AUTOSAR:
• standardized SW architecture
of the automotive industry
• now supported by modern modeling tools
Design Rule/Well-formedness constraint:
• each valid car architecture needs to respect
• designers are immediately notified if violated
Challenge:
• >500 design rules in AUTOSAR tools
• >1 million elements in AUTOSAR models
• models constantly evolve by designers
TRANS-IMA – HW-SW allocation and simulation
Goal: Allocate SW components to
ARINC653 compliant IMA platform
20
Functional
Architecture
Platform
description
Component
database
Allocation
Integrated
System
Model
TRANS-IMA – HW-SW allocation and simulation
Functional
Architecture
Platform
description
Component
database
Allocation
Integrated
System
Model
Inputs:
• Platform Independent Model (PIM)
(functional + nonfunc. reqs; Simulink)
• Platform Description Model (PDM)
for ARINC 653 (DSML)
Output:
• Integrated system model
• Ready for simulation 
Matlab Simulink
• End-to-end traceability
Capture
constraints
Explore
alternatives
Human
decision
Automate
consequences
Functional
Architecture
Platform
description
Component
database
Allocation
Integrated
System
Model
Model transformation chains:
• Designer-guided manual steps
• Automated steps
• Communication channels calculation
• Integrated architecture model
generation
• Continuous validation of design rules
TRANS-IMA – HW-SW allocation and simulation
EMDW – Executable Modeling
Executable UML Modeling:
• Class models with state machines
• Components for modularization
• High-level action language - rAlf
Target
• Ericsson core network servers
• Optimized C++ and Java source code
Challenges:
• >short roundtrip (generate and compile)
• >large models (complete 4G radio system)
EMDW – Executable modeling
EMDW-MC
Cpp
EMF-UML
xUML-RT
Cpp
rAlf
C++
source
Editor
Model
Execution
and
Compilation
E
M
D
W
-
M
E
Platform
config
Input:
• Papyrus EMF-UML specification
Output:
• Optimized C++ and configuration
Transformation:
• Complex transformation chain
• Incremental execution
• Workflow based execution mechanism
• Text-to-model transformations
Integration:
• One-way incremental synchronization
• On-the-fly execution
Model Execution:
• Incremental Java generation
Scalable MDE: The MONDO Project
Models and
Languages
• Large and
heterogeneous
• Construction
• Visualization
Queries and
Transformations
• Executed over
large models
• Incremental
• Lazy
• Parallel
Collaboration
• Offline (SVN)
• Online (Gdocs)
• Many
collaborators
• Secure access
Persistent
Storage
• Efficient
• Secure
• Interoperability
GOALS:
• Scale to model sizes >100M elements
Prototype tools:
• open source software
• open benchmarks
Academic Partners:
• Univ. York (UK)
Univ. Autónoma Madrid (ES),
ARMINES (FR), BME (HU)
Industrial Partners:
• The Open Group (UK),
Uninova (PT), Softeam (FR),
Soft-Maint (FR), IKERLAN (ES)
MONDO: From EMF-INCQUERY to INCQUERY-D
Transaction
In-memory
EMF model
Rete net
Indexer
layer
EMF-INCQUERY
Indexing
In-memory storage
Production network
• Stores intermediate query results
• Propagates changes
Database
shard 0
MONDO: INCQUERY-D Architecture
Server 1
Database
shard 1
Server 2
Database
shard 2
Server 3
Database
shard 3
Transaction
Server 0
Rete net
Indexer
layer
INCQUERY-D
Distributed query evaluation network
Distributed indexer Model access adapter
Distributed indexing,
notification
Distributed persistent
storage
Distributed production network
• Each intermediate node can be allocated
to a different host
• Remote internode communication
MONDO: Collaborative Modeling
View for HW
Supplier1
View for SW
Provider2
View for SW
Provider1
Version Control
System1
Integrated System Model
Write-through
access control
checked by storage
Write restrictions by
property-based
locks (at client)
Secured views with
filtered and
obfuscated model
CONCLUSIONS
Conclusions
•Find design candidates
•Rules for operations
•Queries for constraints
•Hints and guidance
•Potentially infinite state
space
Design Space
Exploration
•Connect to Matlab Simulink
model
•Export: Matlab2EMF
•Change model in EMF
•Re-import: EMF2Matlab
•Library handling
MASSIF:
MATLAB-EMF
Bridge
•Runtime detection /
verification
•Live models (refreshed at
very fast rate: 25
frame/sec)
• E.g. gesture recognition,
tracking
Complex Event
Processing
•Provide simpified graphical
views for complex models
•Forward incremental view
maintenance
•Chaining of views
•Sirius integration
View
Maintenance
•Queries for validation
•Complex model
transformation chain
•Extensibility
•Virtual models
(by derived objects)
•Soft traceability links
Tools
•Itemis (developer)
•Ericsson
•Embraer, Thales
•CERN, CEA
•ThyssenKrupp,
•Tools: ARTOP, Capella,
Papyrus, RMF, mbeddr
Known Users

Weitere ähnliche Inhalte

Was ist angesagt?

How to Utilize MLflow and Kubernetes to Build an Enterprise ML Platform
How to Utilize MLflow and Kubernetes to Build an Enterprise ML PlatformHow to Utilize MLflow and Kubernetes to Build an Enterprise ML Platform
How to Utilize MLflow and Kubernetes to Build an Enterprise ML Platform
Databricks
 

Was ist angesagt? (20)

Connecting Capella to IBM ELM platform (IBM Jazz)
Connecting Capella to IBM ELM platform (IBM Jazz)Connecting Capella to IBM ELM platform (IBM Jazz)
Connecting Capella to IBM ELM platform (IBM Jazz)
 
MLOps - Build pipelines with Tensor Flow Extended & Kubeflow
MLOps - Build pipelines with Tensor Flow Extended & KubeflowMLOps - Build pipelines with Tensor Flow Extended & Kubeflow
MLOps - Build pipelines with Tensor Flow Extended & Kubeflow
 
Ml ops deployment choices
Ml ops   deployment choicesMl ops   deployment choices
Ml ops deployment choices
 
Nasscom ml ops webinar
Nasscom ml ops webinarNasscom ml ops webinar
Nasscom ml ops webinar
 
Ml ops intro session
Ml ops   intro sessionMl ops   intro session
Ml ops intro session
 
Developing ML-enabled Data Pipelines on Databricks using IDE & CI/CD at Runta...
Developing ML-enabled Data Pipelines on Databricks using IDE & CI/CD at Runta...Developing ML-enabled Data Pipelines on Databricks using IDE & CI/CD at Runta...
Developing ML-enabled Data Pipelines on Databricks using IDE & CI/CD at Runta...
 
Building machine learning applications locally with Spark — Joel Pinho Lucas ...
Building machine learning applications locally with Spark — Joel Pinho Lucas ...Building machine learning applications locally with Spark — Joel Pinho Lucas ...
Building machine learning applications locally with Spark — Joel Pinho Lucas ...
 
How to Utilize MLflow and Kubernetes to Build an Enterprise ML Platform
How to Utilize MLflow and Kubernetes to Build an Enterprise ML PlatformHow to Utilize MLflow and Kubernetes to Build an Enterprise ML Platform
How to Utilize MLflow and Kubernetes to Build an Enterprise ML Platform
 
Model versioning done right: A ModelDB 2.0 Walkthrough
Model versioning done right: A ModelDB 2.0 WalkthroughModel versioning done right: A ModelDB 2.0 Walkthrough
Model versioning done right: A ModelDB 2.0 Walkthrough
 
Blind spots in big data erez koren @ forter
Blind spots in big data erez koren @ forterBlind spots in big data erez koren @ forter
Blind spots in big data erez koren @ forter
 
Keynote: What’s new in Sirius?
Keynote: What’s new in Sirius?Keynote: What’s new in Sirius?
Keynote: What’s new in Sirius?
 
Next18 Extended Targu Mures - Bringing the Cloud to you
Next18 Extended Targu Mures - Bringing the Cloud to youNext18 Extended Targu Mures - Bringing the Cloud to you
Next18 Extended Targu Mures - Bringing the Cloud to you
 
Legion - AI Runtime Platform
Legion -  AI Runtime PlatformLegion -  AI Runtime Platform
Legion - AI Runtime Platform
 
Continuous Delivery of ML-Enabled Pipelines on Databricks using MLflow
Continuous Delivery of ML-Enabled Pipelines on Databricks using MLflowContinuous Delivery of ML-Enabled Pipelines on Databricks using MLflow
Continuous Delivery of ML-Enabled Pipelines on Databricks using MLflow
 
The Eclipse Layout Kernel sirius con 2017
The Eclipse Layout Kernel   sirius con 2017The Eclipse Layout Kernel   sirius con 2017
The Eclipse Layout Kernel sirius con 2017
 
Seamless MLOps with Seldon and MLflow
Seamless MLOps with Seldon and MLflowSeamless MLOps with Seldon and MLflow
Seamless MLOps with Seldon and MLflow
 
SiriusCon 2017 - 5 years of modelisation, from a prototype to an industrial g...
SiriusCon 2017 - 5 years of modelisation, from a prototype to an industrial g...SiriusCon 2017 - 5 years of modelisation, from a prototype to an industrial g...
SiriusCon 2017 - 5 years of modelisation, from a prototype to an industrial g...
 
“Houston, we have a model...” Introduction to MLOps
“Houston, we have a model...” Introduction to MLOps“Houston, we have a model...” Introduction to MLOps
“Houston, we have a model...” Introduction to MLOps
 
Towards Scalable Validation of Low-Code System Models: Mapping EVL to VIATRA ...
Towards Scalable Validation of Low-Code System Models: Mapping EVL to VIATRA ...Towards Scalable Validation of Low-Code System Models: Mapping EVL to VIATRA ...
Towards Scalable Validation of Low-Code System Models: Mapping EVL to VIATRA ...
 
DAIS Europe Nov. 2020 presentation on MLflow Model Serving
DAIS Europe Nov. 2020 presentation on MLflow Model ServingDAIS Europe Nov. 2020 presentation on MLflow Model Serving
DAIS Europe Nov. 2020 presentation on MLflow Model Serving
 

Ähnlich wie Incremental Queries and Transformations for Engineering Critical Systems

Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Lionel Briand
 

Ähnlich wie Incremental Queries and Transformations for Engineering Critical Systems (20)

Incremental Model Queries for Model-Dirven Software Engineering
Incremental Model Queries for Model-Dirven Software EngineeringIncremental Model Queries for Model-Dirven Software Engineering
Incremental Model Queries for Model-Dirven Software Engineering
 
IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...
IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...
IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...
 
Hardware-Software allocation specification of IMA systems for early simulation
Hardware-Software allocation specification of IMA systems for early simulationHardware-Software allocation specification of IMA systems for early simulation
Hardware-Software allocation specification of IMA systems for early simulation
 
SERENE 2014 School: Daniel varro serene2014_school
SERENE 2014 School: Daniel varro serene2014_schoolSERENE 2014 School: Daniel varro serene2014_school
SERENE 2014 School: Daniel varro serene2014_school
 
SERENE 2014 School: Incremental Model Queries over the Cloud
SERENE 2014 School: Incremental Model Queries over the CloudSERENE 2014 School: Incremental Model Queries over the Cloud
SERENE 2014 School: Incremental Model Queries over the Cloud
 
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery LabsIncquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
 
Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016
 
Presentation Verification & Validation
Presentation Verification & ValidationPresentation Verification & Validation
Presentation Verification & Validation
 
SCM Transformation Challenges and How to Overcome Them
SCM Transformation Challenges and How to Overcome ThemSCM Transformation Challenges and How to Overcome Them
SCM Transformation Challenges and How to Overcome Them
 
Modernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-ArchitectModernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-Architect
 
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
 
Automotive engineering design - Model Based Design
Automotive engineering design - Model Based DesignAutomotive engineering design - Model Based Design
Automotive engineering design - Model Based Design
 
IncQuery Group's presentation for the INCOSE Polish Chapter 20220310
IncQuery Group's presentation for the INCOSE Polish Chapter 20220310IncQuery Group's presentation for the INCOSE Polish Chapter 20220310
IncQuery Group's presentation for the INCOSE Polish Chapter 20220310
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
 
Tools. Techniques. Trouble?
Tools. Techniques. Trouble?Tools. Techniques. Trouble?
Tools. Techniques. Trouble?
 
Application Crisis avoidance six things you can do
Application Crisis avoidance  six things you can doApplication Crisis avoidance  six things you can do
Application Crisis avoidance six things you can do
 
[DSC Europe 23] Petar Zecevic - ML in Production on Databricks
[DSC Europe 23] Petar Zecevic - ML in Production on Databricks[DSC Europe 23] Petar Zecevic - ML in Production on Databricks
[DSC Europe 23] Petar Zecevic - ML in Production on Databricks
 
IEEE Buenaventura cs Chapter March 9 2016 v4
IEEE Buenaventura cs Chapter March 9 2016  v4IEEE Buenaventura cs Chapter March 9 2016  v4
IEEE Buenaventura cs Chapter March 9 2016 v4
 
Eclipse VIATRA Overview 2017
Eclipse VIATRA Overview 2017Eclipse VIATRA Overview 2017
Eclipse VIATRA Overview 2017
 
Decreasing your Coffe Consumption by Incremental Code regeneration
Decreasing your Coffe Consumption by Incremental Code regenerationDecreasing your Coffe Consumption by Incremental Code regeneration
Decreasing your Coffe Consumption by Incremental Code regeneration
 

Mehr von Ákos Horváth

Next-Generation Completeness and Consistency Management in the Digital Threa...
Next-Generation Completeness and Consistency Management in the Digital Threa...Next-Generation Completeness and Consistency Management in the Digital Threa...
Next-Generation Completeness and Consistency Management in the Digital Threa...
Ákos Horváth
 
V for visualization: VIATRA finally goes graphical thanks to Sirius!
V for visualization: VIATRA finally goes graphical thanks to Sirius!V for visualization: VIATRA finally goes graphical thanks to Sirius!
V for visualization: VIATRA finally goes graphical thanks to Sirius!
Ákos Horváth
 
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...
Ákos Horváth
 
CPS(M): Constraint Satisfaction Problem over Models (a.k.a rule based design ...
CPS(M): Constraint Satisfaction Problem over Models (a.k.a rule based design ...CPS(M): Constraint Satisfaction Problem over Models (a.k.a rule based design ...
CPS(M): Constraint Satisfaction Problem over Models (a.k.a rule based design ...
Ákos Horváth
 

Mehr von Ákos Horváth (15)

Next-Generation Completeness and Consistency Management in the Digital Threa...
Next-Generation Completeness and Consistency Management in the Digital Threa...Next-Generation Completeness and Consistency Management in the Digital Threa...
Next-Generation Completeness and Consistency Management in the Digital Threa...
 
Natural Language Understanding of Systems Engineering Artifacts
Natural Language Understanding of Systems Engineering ArtifactsNatural Language Understanding of Systems Engineering Artifacts
Natural Language Understanding of Systems Engineering Artifacts
 
IoT Meetup Budapest - The Open-CPS approach
IoT Meetup Budapest - The Open-CPS approachIoT Meetup Budapest - The Open-CPS approach
IoT Meetup Budapest - The Open-CPS approach
 
Multi-disciplinary simulation of Cyber-Physical Systems – The OpenCPS approach
Multi-disciplinary simulation of Cyber-Physical Systems – The OpenCPS approachMulti-disciplinary simulation of Cyber-Physical Systems – The OpenCPS approach
Multi-disciplinary simulation of Cyber-Physical Systems – The OpenCPS approach
 
V for visualization: VIATRA finally goes graphical thanks to Sirius!
V for visualization: VIATRA finally goes graphical thanks to Sirius!V for visualization: VIATRA finally goes graphical thanks to Sirius!
V for visualization: VIATRA finally goes graphical thanks to Sirius!
 
MoDeS3 - Model-based Demonstrator for Smart and Safe Systems
MoDeS3 - Model-based Demonstrator for Smart and Safe SystemsMoDeS3 - Model-based Demonstrator for Smart and Safe Systems
MoDeS3 - Model-based Demonstrator for Smart and Safe Systems
 
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...
EMF-IncQuery: Blazing-fast reaction time even for very large diagrams (Sirius...
 
Local search-based pattern matching features in EMF-IncQuery
Local search-based pattern matching features in EMF-IncQueryLocal search-based pattern matching features in EMF-IncQuery
Local search-based pattern matching features in EMF-IncQuery
 
VIATRA 3: A reactive model transformation platform
VIATRA 3: A reactive model transformation platformVIATRA 3: A reactive model transformation platform
VIATRA 3: A reactive model transformation platform
 
CPS(M): Constraint Satisfaction Problem over Models (a.k.a rule based design ...
CPS(M): Constraint Satisfaction Problem over Models (a.k.a rule based design ...CPS(M): Constraint Satisfaction Problem over Models (a.k.a rule based design ...
CPS(M): Constraint Satisfaction Problem over Models (a.k.a rule based design ...
 
Szoftverfejlesztés a repülőgépiparban
Szoftverfejlesztés a repülőgépiparbanSzoftverfejlesztés a repülőgépiparban
Szoftverfejlesztés a repülőgépiparban
 
Guaranteed Component Assembly with Round Trip Analysis for Energy Efficient H...
Guaranteed Component Assembly with Round Trip Analysis for Energy Efficient H...Guaranteed Component Assembly with Round Trip Analysis for Energy Efficient H...
Guaranteed Component Assembly with Round Trip Analysis for Energy Efficient H...
 
Software Development for Safety Critical Systems
Software Development for Safety Critical SystemsSoftware Development for Safety Critical Systems
Software Development for Safety Critical Systems
 
Model-Driven Development of ARINC 653 Configuration tables
Model-Driven Development of ARINC 653 Configuration tablesModel-Driven Development of ARINC 653 Configuration tables
Model-Driven Development of ARINC 653 Configuration tables
 
Massif - the love child of Matlab Simulink and Eclipse
Massif - the love child of Matlab Simulink and EclipseMassif - the love child of Matlab Simulink and Eclipse
Massif - the love child of Matlab Simulink and Eclipse
 

Kürzlich hochgeladen

Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
masabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
masabamasaba
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 

Kürzlich hochgeladen (20)

Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 

Incremental Queries and Transformations for Engineering Critical Systems

  • 1. Budapest University of Technology and Economics Department of Measurement and Information Systems INCREMENTAL QUERIES AND TRANSFORMATIONS FOR ENGINEERING CRITICAL SYSTEMS Ákos Horváth, István Ráth Budapest University of Technology and Economics Fault Tolerant Systems Research Group
  • 2. Outline of the Talk Model transformations in Critical Systems Engineering EMF-IncQuery and VIATRA: Incremental Queries and Transformations Industrial applications • Avionics, automotive, telecom, cloud Conclusions  Main Contributors o István Ráth o Ákos Horváth o Gábor Bergmann o Ábel Hegedüs o Zoltán Ujhelyi o Dániel Varró o ... and many more!
  • 3. MODEL TRANSFORMATIONS IN CRITICAL SYSTEMS ENGINEERING
  • 4. Development Process for Critical Systems Unique Development Process (Traditional V-Model) Critical Systems Design  requires a certification process  to develop justified evidence  that the system is free of flaws Software Tool Qualification  obtain certification credit  for a software tool  used in critical system design Qualified Tool  Certified Output DO-178B IEC 61508 Innovative Tool  Better System
  • 5. Model-Driven Engineering of Critical Systems Traditional V-Model Model-Driven Engineering Main ideas of MDE • early validation of system models • automatic source code generation  quality++ tools ++ development cost-- • DO-178B/C: Software Considerations in Airborne Systems and Equipment Certification (RTCA, EUROCAE) • Steven P. Miller: Certification Issues in Model Based Development (Rockwell Collins)
  • 6. Models and Transformations in Critical Systems System Design Model Architecture Design Model Component Design Model Refine Refine Design + V&V Artifacts (Source code, Glue code, Config. Tables, Test Cases, Monitors, Fault Trees, etc.) Code & Test Generation VerticalModelTransformations Component V&V Model Architecture V&V Model System V&V Model Model generation Back-Annotation Model generation Back-Annotation Model generation Back-Annotation Use Use Horizontal Model Transformations Formal methods Formal methods Design rules Design rules Design rules End-to-End Traceability End-to-EndTraceability Model Transformations • knowledge transfer: theoretical resultstools • bridge / integrate existing languages&tools Related projects • CESAR, SAVI, … • HIDE, DECOS, DIANA, MOGENTES, CERTIMOT, GENESYS, SENSORIA
  • 7. Open Source Eclipse.org Projects  Incremental query engine o Declarative language o Incremental, live queries o Highly scalable  Easy integration o On-the-fly validation o Derived features o Custom views o Traceability  Model transformation framework o Event-based + reactive execution platform o Internal DSL over Xtend o Scalable M2M & M2T  High-level features o Complex event processing o Design space exploration o Incremental transform. EMF-IncQuery VIATRA Official Eclipse member 2 Project leads 10 Eclipse committers Tool integration with: Papyrus UML, Sirius, RMF, Capella, ARTOP, mbeddr
  • 8. • Declarative graph query language • Transitive closure, Negative cond., etc. • Compositional, reusable Definition • Incremental evaluation • Cache result set • Maintain incrementally upon model change Execution • Derived features, • On-the-fly validation • View generation, Notifications, Soft links, Databinding, Features EMF-IncQuery: An Open Source Eclipse Project http://eclipse.org/incquery
  • 9. The IncQuery (IQ) Graph Query Language  IQ: declarative query language o Attribute constraints o Local + global queries o Compositionality+Reusabilility o Recursion, Negation, o Transitive Closure o Syntax: DATALOG style pattern routeSensor(sensor: Sensor) = { TrackElement.sensor(switch,sensor); Switch(switch); SwitchPosition. switch(sp, switch); SwitchPosition(sp); Route.switchPosition(route, sp); Route(route); neg find head(route, sensor); } pattern head(R, Sen) = { Route.routeDefinition(R, Sen); } route: Route sp: SwitchPosition Switch: Switchsensor: Sensor switchPosition switch sensor routeDefinition Query(A,B)  ∧condi(Ai,Bi) • all tuples of model elements a,b • satisfying the query condition • along the match A=a and B=b • parameters A,B can be input/ output
  • 10. EMF-INCQUERY Architecture Transaction In-memory EMF model Rete net Indexer layer EMF-INCQUERY Indexing In-memory storage Production network • Stores intermediate query results • Propagates changes
  • 11. Performance of EMF-INCQUERY  Incremental graph queries based on Rete  Models in the Eclipse Modeling Framework model size runtime batch queries incremental queries Exec. time is proportional to the size of the modification. Largest synthetic model (TrainBenchmark) • 2.8 million nodes • 11.2 million edges • revalidation time: 1 ms Largest real model (Eclipse 4.0 source code) • 8.6M nodes+26.2M edges • revalidation: <20 ms (except for 1 query)
  • 12. Motivation: General Tooling Challenges  Interference between functions  Commonalities o Queries, rules, scheduling, conflicts User interaction (modify) SRC TRG Batch/Incremental transformation Traceability links Live validation Live views Derived features
  • 13. Reactive Event Driven Transformations 1. First transformation 2. Source model changes 4. Fire rule activations (in relevant context) SRC1 SRC2 TRG1TRACE1 TRG2TRACE2 3. Detect new activations Pros: • Source incremental: driven by changes of query result • Chaining • Avoids continuous comp. Cons: • Language-level restrictions
  • 14. Reactive Event Driven Transformations VIATRA: Reactive Transformation Engine Observed events Controlled events Actions What has changed? When to react? Perform in consistent state
  • 15. Reactive Event Driven Transformations VIATRA: Reactive Transformation Engine Observed events Controlled events Actions • Model modified • Match appeared • Event sequence identified • „Run” button pushed • Consistent state reached after editing • Transaction committed • Modify model • Add error marker • Update view • Send e-mail
  • 16. VIATRA: Overview of Features •Explore design model candidates •Satisfying multiple criteria •Rule based exploration •Optimization Design Space Exploration •Detect complex event sequences •Rule based reaction •Xtext based language Complex Event Processing •Remove sensitive information from confidential models •Original model  Obfuscated model Model Obfuscator  Reactive MT Platform o MT Language: • Internal DSL over Xtend • Transformation API o MT Engine: • Event-driven virtual machine • Batch + Incremental MTs • Control flow library • Compiles to Java • Debugger • High performance o Integrations: • EMF, IncQuery, Xtend, EMF-UML, …
  • 18. Relevant application projects AUTOSAR (ThyssenKrupp Presta, etc.) •Support standard defined well-formedness rules •On-the-fly validation •Scale to large AUTOSAR models TRANS-IMA (Embraer) •Eclipse based development tooling •HW-SW allocation: avionics architecture •Integration to the distributed Embraer simulator •(1st time in Europe) EMDW (Ericsson) •Executable (UML) modeling •Incremental code generation to C++ •Multiple execution platform support •Model interpretation (ELTESoft) MONDO (EU FP7) •Modeling in the cloud •Scaling out MDE technologies •Collaborative modeling and version control •Access control •Model obfuscation
  • 19. AUTOSAR- Early validation of design rules SystemSignalGroup design rule (from AUTOSAR) o A SystemSignal and its group must be in the same IPdu o Challenge: find violations quickly in large models o New difficulties • reverse navigation • complex manual solution AUTOSAR: • standardized SW architecture of the automotive industry • now supported by modern modeling tools Design Rule/Well-formedness constraint: • each valid car architecture needs to respect • designers are immediately notified if violated Challenge: • >500 design rules in AUTOSAR tools • >1 million elements in AUTOSAR models • models constantly evolve by designers
  • 20. TRANS-IMA – HW-SW allocation and simulation Goal: Allocate SW components to ARINC653 compliant IMA platform 20 Functional Architecture Platform description Component database Allocation Integrated System Model
  • 21. TRANS-IMA – HW-SW allocation and simulation Functional Architecture Platform description Component database Allocation Integrated System Model Inputs: • Platform Independent Model (PIM) (functional + nonfunc. reqs; Simulink) • Platform Description Model (PDM) for ARINC 653 (DSML) Output: • Integrated system model • Ready for simulation  Matlab Simulink • End-to-end traceability
  • 22. Capture constraints Explore alternatives Human decision Automate consequences Functional Architecture Platform description Component database Allocation Integrated System Model Model transformation chains: • Designer-guided manual steps • Automated steps • Communication channels calculation • Integrated architecture model generation • Continuous validation of design rules TRANS-IMA – HW-SW allocation and simulation
  • 23. EMDW – Executable Modeling Executable UML Modeling: • Class models with state machines • Components for modularization • High-level action language - rAlf Target • Ericsson core network servers • Optimized C++ and Java source code Challenges: • >short roundtrip (generate and compile) • >large models (complete 4G radio system)
  • 24. EMDW – Executable modeling EMDW-MC Cpp EMF-UML xUML-RT Cpp rAlf C++ source Editor Model Execution and Compilation E M D W - M E Platform config Input: • Papyrus EMF-UML specification Output: • Optimized C++ and configuration Transformation: • Complex transformation chain • Incremental execution • Workflow based execution mechanism • Text-to-model transformations Integration: • One-way incremental synchronization • On-the-fly execution Model Execution: • Incremental Java generation
  • 25. Scalable MDE: The MONDO Project Models and Languages • Large and heterogeneous • Construction • Visualization Queries and Transformations • Executed over large models • Incremental • Lazy • Parallel Collaboration • Offline (SVN) • Online (Gdocs) • Many collaborators • Secure access Persistent Storage • Efficient • Secure • Interoperability GOALS: • Scale to model sizes >100M elements Prototype tools: • open source software • open benchmarks Academic Partners: • Univ. York (UK) Univ. Autónoma Madrid (ES), ARMINES (FR), BME (HU) Industrial Partners: • The Open Group (UK), Uninova (PT), Softeam (FR), Soft-Maint (FR), IKERLAN (ES)
  • 26. MONDO: From EMF-INCQUERY to INCQUERY-D Transaction In-memory EMF model Rete net Indexer layer EMF-INCQUERY Indexing In-memory storage Production network • Stores intermediate query results • Propagates changes
  • 27. Database shard 0 MONDO: INCQUERY-D Architecture Server 1 Database shard 1 Server 2 Database shard 2 Server 3 Database shard 3 Transaction Server 0 Rete net Indexer layer INCQUERY-D Distributed query evaluation network Distributed indexer Model access adapter Distributed indexing, notification Distributed persistent storage Distributed production network • Each intermediate node can be allocated to a different host • Remote internode communication
  • 28. MONDO: Collaborative Modeling View for HW Supplier1 View for SW Provider2 View for SW Provider1 Version Control System1 Integrated System Model Write-through access control checked by storage Write restrictions by property-based locks (at client) Secured views with filtered and obfuscated model
  • 30. Conclusions •Find design candidates •Rules for operations •Queries for constraints •Hints and guidance •Potentially infinite state space Design Space Exploration •Connect to Matlab Simulink model •Export: Matlab2EMF •Change model in EMF •Re-import: EMF2Matlab •Library handling MASSIF: MATLAB-EMF Bridge •Runtime detection / verification •Live models (refreshed at very fast rate: 25 frame/sec) • E.g. gesture recognition, tracking Complex Event Processing •Provide simpified graphical views for complex models •Forward incremental view maintenance •Chaining of views •Sirius integration View Maintenance •Queries for validation •Complex model transformation chain •Extensibility •Virtual models (by derived objects) •Soft traceability links Tools •Itemis (developer) •Ericsson •Embraer, Thales •CERN, CEA •ThyssenKrupp, •Tools: ARTOP, Capella, Papyrus, RMF, mbeddr Known Users

Hinweis der Redaktion

  1. For a programmer: A piece of code that searches for parts of the model For the scientist: Query = set of constraints that have to be satisfied by (parts of) the (graph) model Result = set of model element tuples that satisfy the constraints of the query Match = bind constraint variables to model elements