SlideShare a Scribd company logo
TemporalEMF:
A Temporal Metamodeling
Framework
Abel Gómez, Jordi Cabot, and Manuel Wimmer
Internet Interdisciplinary Institute – Universitat Oberta de Catalunya, Spain
CDL-MINT, TU Wien, Austria
1
Introduction
• Modeling tools have improved drastically in the last decade…
• … but temporal aspect have not received enough attention yet.
• Typical solutions are built on top of (or rely concepts brought from)
generic Version Control Systems: e.g. model versions/snapshots taken at
user-defined times.
• This approximate answer is not enough in scenarios that require a more
precise and immediate response to temporal queries like complex
collaborative co-engineering processes or runtime models.
2
TemporalEMF contributions
• Light-weight extension of current metamodeling standards:
• Models are automatically and transparently treated as temporal…
• … but if the only state is of interest, models are accessed as usual.
• Infrastructure to manage temporal models:
• TemporalEMF is built on top the Eclipse Modeling Framework.
• Models history is stored in a NoSQL database.
• We outline a temporal query language
• Allows retrieving historical information from models at any point in time.
3
Temporal Metamodeling
4
A Profile for Temporal Metamodeling
5
A Profile for Temporal Metamodeling
6
A Profile for Temporal Metamodeling
Now, we can compute execution states of
interest (e.g. for provenance) and KPIs
(such as utilization):
• Q1 — Find all items which have been
processed by machine m.
• Q2 — Find the components which had
an item assigned at a particular point in
time.
• Q3 —Find the components which had
an item assigned within a particular
time frame.
• Q4 — Compute the utilization of
machine e for the whole system
execution lifecycle.
7
A Profile for Temporal Metamodeling
Now, we can compute execution states of
interest (e.g. for provenance) and KPIs
(such as utilization):
• Q1 — Find all items which have been
processed by machine m.
• Q2 — Find the components which had
an item assigned at a particular point in
time.
• Q3 —Find the components which had
an item assigned within a particular
time frame.
• Q4 — Compute the utilization of
machine e for the whole system
execution lifecycle.
8
Component.allInstances()->select(c | not c.hostsAt(instant).oclIsUndefined())
Approach
9
Bigtable
• Map-based (i.e. key-value) stores are especially well-suited to persist
models managed by (meta-)modeling frameworks.
• BigTable is a distributed, scalable, versioned, non-relational and column-
based big data store; where data is stored in tables, which are sparse,
distributed, persistent, and multi-dimensional sorted maps.
• These maps are indexed by the tuple row key, column key, and a
timestamp.
10
Example
11
Example
12
Example
13
Example
14
Example
15
Example
16
Architecture
17
Architecture
18
Experiments
https://github.com/SOM-Research/temporal-emf-benchmarks
19
Questions
• RQ1: Production Cost — Is there a significant difference of the time
required for producing and manipulating temporal model elements?
• RQ2: Storage Cost — Is there a significant difference of the storage size
of temporal models?
• RQ3: Reproduction Cost — Is there a significant difference of restoring
previous versions of temporal model elements?
TemporalEMF vs Saving Historical Data Explicitly
20
RQ1
21
RQ2
22
RQ2
23
RQ3
24
RQ3
25
Related work and conclusions
26
Related work
• Model versioning tools:
• Typically, XMI serialization saved on CVS, SVN or Git.
• Each version is a self-contained model instance.
• Versions are generated by the user.
• Lack of precision.
• Fine grained historical data may require model comparison operations.
• Models@run.time:
• Provide a modeling infrastructure to instantiate models (as we do), they do not
store the history of those changes.
27
Conclusions
• Conceptual schemas are automatically and transparently treated as
temporal models.
• Can be subject to temporal queries to retrieve and compare the model
contents at different points in time.
• An extension to the standard EMF APIs allows modelers to easily express
such temporal queries.
• TemporalEMF relies on HBase to provide an scalable persistence layer to
store all past versions.
28
TemporalEMF:
A Temporal Metamodeling
Framework
Abel Gómez, Jordi Cabot, and Manuel Wimmer
Internet Interdisciplinary Institute – Universitat Oberta de Catalunya, Spain
CDL-MINT, TU Wien, Austria
29

More Related Content

PPTX
PPTX
Matlab Master Thesis Writing Service
PPTX
Raising Abstraction in Timing Analysis for Vehicular Embedded Systems through...
PDF
Stencil computation research project presentation #1
PPTX
Temporal EMF: A temporal metamodeling platform
PDF
Enabling Model Testing of Cyber Physical Systems
PPTX
Simulation and modeling introduction.pptx
PPTX
Promise and Challenge of Runtime Presentation(summary)
Matlab Master Thesis Writing Service
Raising Abstraction in Timing Analysis for Vehicular Embedded Systems through...
Stencil computation research project presentation #1
Temporal EMF: A temporal metamodeling platform
Enabling Model Testing of Cyber Physical Systems
Simulation and modeling introduction.pptx
Promise and Challenge of Runtime Presentation(summary)

Similar to TemporalEMF: A Temporal Metamodeling Framework (20)

PPTX
ppt2.pptx
PPTX
Simulation of Heterogeneous Cloud Infrastructures
PPTX
EDUCON 2010: Adaptation in a PoEML-based E-learning Platform
PPTX
Værktøjer udviklet på AAU til analyse af SCJ programmer
PPT
PPTX
Anshita_Timeseries forcast_usecase_inAI.pptx
PDF
CS8592-OOAD Lecture Notes Unit-5
PDF
It5304 syllabus
PPTX
lecture 1.pptx
PDF
Design Patterns - GOF
PPTX
Design Patterns
PPT
PPTX
Parallel architecture-programming
PPTX
MLOps.pptx
PPTX
Real-Time Design Patterns
PPTX
The art of architecture
PPTX
Parallel architecture &programming
PPT
Design principles & quality factors
PPTX
NoC simulators presentation
PPT
Discrete mATHEMATICS AND cOMPUTER SCIENCE
ppt2.pptx
Simulation of Heterogeneous Cloud Infrastructures
EDUCON 2010: Adaptation in a PoEML-based E-learning Platform
Værktøjer udviklet på AAU til analyse af SCJ programmer
Anshita_Timeseries forcast_usecase_inAI.pptx
CS8592-OOAD Lecture Notes Unit-5
It5304 syllabus
lecture 1.pptx
Design Patterns - GOF
Design Patterns
Parallel architecture-programming
MLOps.pptx
Real-Time Design Patterns
The art of architecture
Parallel architecture &programming
Design principles & quality factors
NoC simulators presentation
Discrete mATHEMATICS AND cOMPUTER SCIENCE
Ad

More from abgolla (6)

PDF
A model based approach for developing event-driven architectures with AsyncAPI
PDF
A Modeling Editor and Code Generator for AsyncAPI
PDF
Enabling Performance Modeling for the Masses: Initial Experiences
PPTX
On the Opportunities of Scalable Modeling Technologies: An Experience Report ...
PPTX
Una herramienta para evaluar el rendimiento de aplicaciones intensivas en datos
PPTX
Fase 2015 - Map-based Transparent Persistence for Very Large Models
A model based approach for developing event-driven architectures with AsyncAPI
A Modeling Editor and Code Generator for AsyncAPI
Enabling Performance Modeling for the Masses: Initial Experiences
On the Opportunities of Scalable Modeling Technologies: An Experience Report ...
Una herramienta para evaluar el rendimiento de aplicaciones intensivas en datos
Fase 2015 - Map-based Transparent Persistence for Very Large Models
Ad

Recently uploaded (20)

PDF
A novel scalable deep ensemble learning framework for big data classification...
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
STKI Israel Market Study 2025 version august
PDF
Hindi spoken digit analysis for native and non-native speakers
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PPTX
TLE Review Electricity (Electricity).pptx
PDF
DP Operators-handbook-extract for the Mautical Institute
PPTX
1. Introduction to Computer Programming.pptx
PDF
Getting started with AI Agents and Multi-Agent Systems
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PPTX
observCloud-Native Containerability and monitoring.pptx
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
2021 HotChips TSMC Packaging Technologies for Chiplets and 3D_0819 publish_pu...
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
A novel scalable deep ensemble learning framework for big data classification...
A contest of sentiment analysis: k-nearest neighbor versus neural network
Final SEM Unit 1 for mit wpu at pune .pptx
1 - Historical Antecedents, Social Consideration.pdf
A comparative study of natural language inference in Swahili using monolingua...
STKI Israel Market Study 2025 version august
Hindi spoken digit analysis for native and non-native speakers
Module 1.ppt Iot fundamentals and Architecture
NewMind AI Weekly Chronicles – August ’25 Week III
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
TLE Review Electricity (Electricity).pptx
DP Operators-handbook-extract for the Mautical Institute
1. Introduction to Computer Programming.pptx
Getting started with AI Agents and Multi-Agent Systems
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
observCloud-Native Containerability and monitoring.pptx
OMC Textile Division Presentation 2021.pptx
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
2021 HotChips TSMC Packaging Technologies for Chiplets and 3D_0819 publish_pu...
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...

TemporalEMF: A Temporal Metamodeling Framework

  • 1. TemporalEMF: A Temporal Metamodeling Framework Abel Gómez, Jordi Cabot, and Manuel Wimmer Internet Interdisciplinary Institute – Universitat Oberta de Catalunya, Spain CDL-MINT, TU Wien, Austria 1
  • 2. Introduction • Modeling tools have improved drastically in the last decade… • … but temporal aspect have not received enough attention yet. • Typical solutions are built on top of (or rely concepts brought from) generic Version Control Systems: e.g. model versions/snapshots taken at user-defined times. • This approximate answer is not enough in scenarios that require a more precise and immediate response to temporal queries like complex collaborative co-engineering processes or runtime models. 2
  • 3. TemporalEMF contributions • Light-weight extension of current metamodeling standards: • Models are automatically and transparently treated as temporal… • … but if the only state is of interest, models are accessed as usual. • Infrastructure to manage temporal models: • TemporalEMF is built on top the Eclipse Modeling Framework. • Models history is stored in a NoSQL database. • We outline a temporal query language • Allows retrieving historical information from models at any point in time. 3
  • 5. A Profile for Temporal Metamodeling 5
  • 6. A Profile for Temporal Metamodeling 6
  • 7. A Profile for Temporal Metamodeling Now, we can compute execution states of interest (e.g. for provenance) and KPIs (such as utilization): • Q1 — Find all items which have been processed by machine m. • Q2 — Find the components which had an item assigned at a particular point in time. • Q3 —Find the components which had an item assigned within a particular time frame. • Q4 — Compute the utilization of machine e for the whole system execution lifecycle. 7
  • 8. A Profile for Temporal Metamodeling Now, we can compute execution states of interest (e.g. for provenance) and KPIs (such as utilization): • Q1 — Find all items which have been processed by machine m. • Q2 — Find the components which had an item assigned at a particular point in time. • Q3 —Find the components which had an item assigned within a particular time frame. • Q4 — Compute the utilization of machine e for the whole system execution lifecycle. 8 Component.allInstances()->select(c | not c.hostsAt(instant).oclIsUndefined())
  • 10. Bigtable • Map-based (i.e. key-value) stores are especially well-suited to persist models managed by (meta-)modeling frameworks. • BigTable is a distributed, scalable, versioned, non-relational and column- based big data store; where data is stored in tables, which are sparse, distributed, persistent, and multi-dimensional sorted maps. • These maps are indexed by the tuple row key, column key, and a timestamp. 10
  • 20. Questions • RQ1: Production Cost — Is there a significant difference of the time required for producing and manipulating temporal model elements? • RQ2: Storage Cost — Is there a significant difference of the storage size of temporal models? • RQ3: Reproduction Cost — Is there a significant difference of restoring previous versions of temporal model elements? TemporalEMF vs Saving Historical Data Explicitly 20
  • 26. Related work and conclusions 26
  • 27. Related work • Model versioning tools: • Typically, XMI serialization saved on CVS, SVN or Git. • Each version is a self-contained model instance. • Versions are generated by the user. • Lack of precision. • Fine grained historical data may require model comparison operations. • Models@run.time: • Provide a modeling infrastructure to instantiate models (as we do), they do not store the history of those changes. 27
  • 28. Conclusions • Conceptual schemas are automatically and transparently treated as temporal models. • Can be subject to temporal queries to retrieve and compare the model contents at different points in time. • An extension to the standard EMF APIs allows modelers to easily express such temporal queries. • TemporalEMF relies on HBase to provide an scalable persistence layer to store all past versions. 28
  • 29. TemporalEMF: A Temporal Metamodeling Framework Abel Gómez, Jordi Cabot, and Manuel Wimmer Internet Interdisciplinary Institute – Universitat Oberta de Catalunya, Spain CDL-MINT, TU Wien, Austria 29