Abstract-The models@run.time paradigm promotes the use of models during the execution of cyber-physical systems to represent their context and to reason about their runtime behaviour. However, current modeling techniques do not allow to cope at the same time with the large-scale, distributed, and constantly changing nature of these systems. In this paper, we introduce a distributed models@run.time approach, combining ideas from reactive programming, peer-to-peer distribution, and large-scale models@run.time. We define distributed models as observable streams of chunks that are exchanged between nodes in a peerto-peer manner. A lazy loading strategy allows to transparently access the complete virtual model from every node, although chunks are actually distributed across nodes. Observers and automatic reloading of chunks enable a reactive programming style. We integrated our approach into the Kevoree Modeling Framework and demonstrate that it enables frequently changing, reactive distributed models that can scale to millions of elements and several thousand nodes.
The work presented in REF combines reactive programming, peer-to-peer distribution and large-scale models-@run.time to leverage the challenges introduced by constantly changing runtime models.
Stream my models: Reactive peer-to-peer distributed models@run.time
2015 ACM/IEEE 18th International Conference on Model Driven Engineering Languages and Systems (MODELS)
2015 ACM/IEEE 18th International Conference on Model Driven Engineering Languages and Systems (MODELS)
Computer Science