Abstract
AbstractModern software systems are intricate and operate in highly dynamic environments for which few assumptions can be made at design-time. This setting has sparked an interest in solutions that use a runtime model which reflects the system state and operational context to monitor and adapt the system in reaction to changes during its runtime. Few solutions focus on the evolution of the model over time, i.e., its history, although history is required for monitoring temporal behaviors and may enable more informed decision-making. One reason is that handling the history of a runtime model poses an important technical challenge, as it requires tracing a part of the model over multiple model snapshots in a timely manner. Additionally, the runtime setting calls for memory-efficient measures to store and check these snapshots. Following the common practice of representing a runtime model as a typed attributed graph, we introduce a language which supports the formulation of temporal graph queries, i.e., queries on the ordering and timing in which structural changes in the history of a runtime model occurred. We present a querying scheme for the execution of temporal graph queries over history-aware runtime models. Features such as temporal logic operators in queries, the incremental execution, the option to discard history that is no longer relevant to queries, and the in-memory storage of the model, distinguish our scheme from relevant solutions. By incorporating temporal operators, temporal graph queries can be used for runtime monitoring of temporal logic formulas. Building on this capability, we present an implementation of the scheme that is evaluated for runtime querying, monitoring, and adaptation scenarios from two application domains.
Funder
Hasso-Plattner-Institut für Digital Engineering gGmbH
Publisher
Springer Science and Business Media LLC
Subject
Modeling and Simulation,Software
Reference112 articles.
1. Alpern, B., Schneider, F.B.: Recognizing safety and liveness. Distrib. Comput. 2(3), 117–126 (1987). https://doi.org/10.1007/BF01782772
2. Apache Foundation (n.d.) EventStrategy - Apache TinkerPop Reference Documentation. https://tinkerpop.apache.org/docs/3.5.1/reference/#_eventstrategy, Accessed on 23 Oct 2021
3. Barkowsky, M., Giese, H.: Hybrid search plan generation for generalized graph pattern matching. J. Log. Algebraic Methods Program. (2020). https://doi.org/10.1016/j.jlamp.2020.100563
4. Barmpis, K., Shah, S., Kolovos, D.S.: Towards incremental updates in large-scale model indexes. In: Taentzer, G., Bordeleau, F. (eds.) Modelling Foundations and Applications, pp. 137–153. Springer International Publishing, Cham (2015)
5. Barquero, G., Burgueño, L., Troya, J., Vallecillo, A.: Extending complex event processing to graph-structured information. In: Proceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, Association for Computing Machinery, New York, NY, USA, MODELS ’18, pp 166–175 (2018). https://doi.org/10.1145/3239372.3239402
Cited by
6 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. On an Exemplar Supporting Model-based Quality Assurance Research for Healthcare Systems-of-Systems;Proceedings of the 12th ACM/IEEE International Workshop on Software Engineering for Systems-of-Systems and Software Ecosystems;2024-04-14
2. Foundations for Query-based Runtime Monitoring of Temporal Properties over Runtime Models;Lecture Notes in Computer Science;2024
3. Incremental Model Transformations with Triple Graph Grammars for Multi-version Models;2023 ACM/IEEE 26th International Conference on Model Driven Engineering Languages and Systems (MODELS);2023-10-01
4. Human-Machine Teaming with small Unmanned Aerial Systems in a MAPE-K Environment;ACM Transactions on Autonomous and Adaptive Systems;2023-09-04
5. Extending MAPE-K to support human-machine teaming;Proceedings of the 17th Symposium on Software Engineering for Adaptive and Self-Managing Systems;2022-05-18