TY - JOUR A1 - Seibel, Andreas A1 - Neumann, Stefan A1 - Giese, Holger T1 - Dynamic hierarchical mega models : comprehensive traceability and its efficient maintenance N2 - In the world of model-driven engineering (MDE) support for traceability and maintenance of traceability information is essential. On the one hand, classical traceability approaches for MDE address this need by supporting automated creation of traceability information on the model element level. On the other hand, global model management approaches manually capture traceability information on the model level. However, there is currently no approach that supports comprehensive traceability, comprising traceability information on both levels, and efficient maintenance of traceability information, which requires a high-degree of automation and scalability. In this article, we present a comprehensive traceability approach that combines classical traceability approaches for MDE and global model management in form of dynamic hierarchical mega models. We further integrate efficient maintenance of traceability information based on top of dynamic hierarchical mega models. The proposed approach is further outlined by using an industrial case study and by presenting an implementation of the concepts in form of a prototype. Y1 - 2010 UR - http://www.springerlink.com/content/109378 U6 - https://doi.org/10.1007/s10270-009-0146-z SN - 1619-1366 ER - TY - JOUR A1 - Ghahremani, Sona A1 - Giese, Holger T1 - Evaluation of self-healing systems BT - An analysis of the state-of-the-art and required improvements JF - Computers N2 - Evaluating the performance of self-adaptive systems is challenging due to their interactions with often highly dynamic environments. In the specific case of self-healing systems, the performance evaluations of self-healing approaches and their parameter tuning rely on the considered characteristics of failure occurrences and the resulting interactions with the self-healing actions. In this paper, we first study the state-of-the-art for evaluating the performances of self-healing systems by means of a systematic literature review. We provide a classification of different input types for such systems and analyse the limitations of each input type. A main finding is that the employed inputs are often not sophisticated regarding the considered characteristics for failure occurrences. To further study the impact of the identified limitations, we present experiments demonstrating that wrong assumptions regarding the characteristics of the failure occurrences can result in large performance prediction errors, disadvantageous design-time decisions concerning the selection of alternative self-healing approaches, and disadvantageous deployment-time decisions concerning parameter tuning. Furthermore, the experiments indicate that employing multiple alternative input characteristics can help with reducing the risk of premature disadvantageous design-time decisions. KW - self-healing KW - failure model KW - performance KW - simulation KW - evaluation Y1 - 2020 U6 - https://doi.org/10.3390/computers9010016 SN - 2073-431X VL - 9 IS - 1 PB - MDPI CY - Basel ER - TY - GEN A1 - Giese, Holger ED - Kouchnarenko, Olga ED - Khosravi, Ramtin T1 - Formal models and analysis for self-adaptive cyber-physical systems BT - (extended abstract) T2 - Lecture notes in computer science N2 - In this extended abstract, we will analyze the current challenges for the envisioned Self-Adaptive CPS. In addition, we will outline our results to approach these challenges with SMARTSOS [10] a generic approach based on extensions of graph transformation systems employing open and adaptive collaborations and models at runtime for trustworthy self-adaptation, self-organization, and evolution of the individual systems and the system-of-systems level taking the independent development, operation, management, and evolution of these systems into account. Y1 - 2017 SN - 978-3-319-57666-4 SN - 978-3-319-57665-7 U6 - https://doi.org/10.1007/978-3-319-57666-4_1 SN - 0302-9743 SN - 1611-3349 VL - 10231 SP - 3 EP - 9 PB - Springer CY - Cham ER - TY - JOUR A1 - Giese, Holger A1 - Wagner, Robert T1 - From model transformation to incremental bidirectional model synchronization N2 - The model-driven software development paradigm requires that appropriate model transformations are applicable in different stages of the development process. The transformations have to consistently propagate changes between the different involved models and thus ensure a proper model synchronization. However, most approaches today do not fully support the requirements for model synchronization and focus only on classical one-way batch-oriented transformations. In this paper, we present our approach for an incremental model transformation which supports model synchronization. Our approach employs the visual, formal, and bidirectional transformation technique of triple graph grammars. Using this declarative specification formalism, we focus on the efficient execution of the transformation rules and how to achieve an incremental model transformation for synchronization purposes. We present an evaluation of our approach and demonstrate that due to the speedup for the incremental processing in the average case even larger models can be tackled. Y1 - 2009 UR - http://www.springerlink.com/content/109378 U6 - https://doi.org/10.1007/s10270-008-0089-9 SN - 1619-1366 ER - TY - JOUR A1 - Barkowsky, Matthias A1 - Giese, Holger T1 - Hybrid search plan generation for generalized graph pattern matching JF - Journal of logical and algebraic methods in programming N2 - In recent years, the increased interest in application areas such as social networks has resulted in a rising popularity of graph-based approaches for storing and processing large amounts of interconnected data. To extract useful information from the growing network structures, efficient querying techniques are required. In this paper, we propose an approach for graph pattern matching that allows a uniform handling of arbitrary constraints over the query vertices. Our technique builds on a previously introduced matching algorithm, which takes concrete host graph information into account to dynamically adapt the employed search plan during query execution. The dynamic algorithm is combined with an existing static approach for search plan generation, resulting in a hybrid technique which we further extend by a more sophisticated handling of filtering effects caused by constraint checks. We evaluate the presented concepts empirically based on an implementation for our graph pattern matching tool, the Story Diagram Interpreter, with queries and data provided by the LDBC Social Network Benchmark. Our results suggest that the hybrid technique may improve search efficiency in several cases, and rarely reduces efficiency. KW - graph pattern matching KW - search plan generation Y1 - 2020 U6 - https://doi.org/10.1016/j.jlamp.2020.100563 SN - 2352-2208 VL - 114 PB - Elsevier CY - New York ER - TY - JOUR A1 - Ghahremani, Sona A1 - Giese, Holger A1 - Vogel, Thomas T1 - Improving scalability and reward of utility-driven self-healing for large dynamic architectures JF - ACM transactions on autonomous and adaptive systems N2 - Self-adaptation can be realized in various ways. Rule-based approaches prescribe the adaptation to be executed if the system or environment satisfies certain conditions. They result in scalable solutions but often with merely satisfying adaptation decisions. In contrast, utility-driven approaches determine optimal decisions by using an often costly optimization, which typically does not scale for large problems. We propose a rule-based and utility-driven adaptation scheme that achieves the benefits of both directions such that the adaptation decisions are optimal, whereas the computation scales by avoiding an expensive optimization. We use this adaptation scheme for architecture-based self-healing of large software systems. For this purpose, we define the utility for large dynamic architectures of such systems based on patterns that define issues the self-healing must address. Moreover, we use pattern-based adaptation rules to resolve these issues. Using a pattern-based scheme to define the utility and adaptation rules allows us to compute the impact of each rule application on the overall utility and to realize an incremental and efficient utility-driven self-healing. In addition to formally analyzing the computational effort and optimality of the proposed scheme, we thoroughly demonstrate its scalability and optimality in terms of reward in comparative experiments with a static rule-based approach as a baseline and a utility-driven approach using a constraint solver. These experiments are based on different failure profiles derived from real-world failure logs. We also investigate the impact of different failure profile characteristics on the scalability and reward to evaluate the robustness of the different approaches. KW - self-healing KW - adaptation rules KW - architecture-based adaptation KW - utility KW - reward KW - scalability KW - performance KW - failure profile model Y1 - 2020 U6 - https://doi.org/10.1145/3380965 SN - 1556-4665 SN - 1556-4703 VL - 14 IS - 3 PB - Association for Computing Machinery CY - New York ER - TY - JOUR A1 - Vogel, Thomas A1 - Giese, Holger T1 - Model-Driven engineering of self-adaptive software with EUREMA JF - ACM transactions on autonomous and adaptive systems N2 - The development of self-adaptive software requires the engineering of an adaptation engine that controls the underlying adaptable software by feedback loops. The engine often describes the adaptation by runtime models representing the adaptable software and by activities such as analysis and planning that use these models. To systematically address the interplay between runtime models and adaptation activities, runtime megamodels have been proposed. A runtime megamodel is a specific model capturing runtime models and adaptation activities. In this article, we go one step further and present an executable modeling language for ExecUtable RuntimE MegAmodels (EUREMA) that eases the development of adaptation engines by following a model-driven engineering approach. We provide a domain-specific modeling language and a runtime interpreter for adaptation engines, in particular feedback loops. Megamodels are kept alive at runtime and by interpreting them, they are directly executed to run feedback loops. Additionally, they can be dynamically adjusted to adapt feedback loops. Thus, EUREMA supports development by making feedback loops explicit at a higher level of abstraction and it enables solutions where multiple feedback loops interact or operate on top of each other and self-adaptation co-exists with offline adaptation for evolution. KW - Design KW - Languages Model-driven engineering KW - modeling language KW - models at runtime KW - model interpreter KW - self-adaptive software KW - feedback loops KW - layered architecture KW - software evolution Y1 - 2014 U6 - https://doi.org/10.1145/2555612 SN - 1556-4665 SN - 1556-4703 VL - 8 IS - 4 PB - Association for Computing Machinery CY - New York ER - TY - JOUR A1 - Henkler, Stefan A1 - Oberthuer, Simon A1 - Giese, Holger A1 - Seibel, Andreas T1 - Model-driven runtime resource predictions for advanced mechatronic systems with dynamic data structures JF - Computer systems science and engineering N2 - The next generation of advanced mechatronic systems is expected to enhance their functionality and improve their performance by context-dependent behavior. Therefore, these systems require to represent information about their complex environment and changing sets of collaboration partners internally. This requirement is in contrast to the usually assumed static structures of embedded systems. In this paper, we present a model-driven approach which overcomes this situation by supporting dynamic data structures while still guaranteeing that valid worst-case execution times can be derived. It supports a flexible resource manager which avoids to operate with the prohibitive coarse worst-case boundaries but instead supports to run applications in different profiles which guarantee different resource requirements and put unused resources in a profile at other applications' disposal. By supporting the proper estimation of worst case execution time (WCET) and worst case number of iteration (WCNI) at runtime, we can further support to create new profiles, add or remove them at runtime in order to minimize the over-approximation of the resource consumption resulting from the dynamic data structures required for the outlined class of advanced systems. KW - Model-Driven Engineering KW - Safety Critical Systems KW - Dynamic Data Structures KW - Flexible Resource Manager KW - Runtime WCET Analysis Y1 - 2011 SN - 0267-6192 VL - 26 IS - 6 SP - 505 EP - 518 PB - IOP Publ. Ltd. CY - Leicester ER - TY - GEN A1 - Ghahremani, Sona A1 - Giese, Holger T1 - Performance evaluation for self-healing systems BT - Current Practice & Open Issues T2 - 2019 IEEE 4th International Workshops on Foundations and Applications of Self* Systems (FAS*W) N2 - Evaluating the performance of self-adaptive systems (SAS) is challenging due to their complexity and interaction with the often highly dynamic environment. In the context of self-healing systems (SHS), employing simulators has been shown to be the most dominant means for performance evaluation. Simulating a SHS also requires realistic fault injection scenarios. We study the state of the practice for evaluating the performance of SHS by means of a systematic literature review. We present the current practice and point out that a more thorough and careful treatment in evaluating the performance of SHS is required. KW - self-healing KW - failure profile KW - evaluation KW - simulator KW - performance Y1 - 2019 SN - 978-1-7281-2406-3 U6 - https://doi.org/10.1109/FAS-W.2019.00039 SP - 116 EP - 119 PB - IEEE CY - New York ER - TY - BOOK A1 - Giese, Holger T1 - Quo vadis, Modellierung? : Antrittsvorlesung 2008-12-11 N2 - Zum Thema "Quo vadis, Modellierung?" hält Prof. Dr. Holger Giese am 11. Dezember 2008 seine Antrittsvorlesung an der Universität Potsdam. Der Wissenschaftler bekleidet eine Professur für Systemanalyse und Modellierung. Es handelt sich um eine gemeinsame Berufung der Universität Potsdam mit dem Hasso-Plattner- Institut für Softwaresystemtechnik an der Universität Potsdam. Seit den Anfängen der Informatik vollzieht sich die Entwicklung von detaillierten, lösungsorientierten und eher technisch geprägten Modellen hin zu solchen, die immer abstrakter und eher an den Problemen beziehungsweise Anwendungsbereichen orientiert sind. Diese ermöglichen es, die Komplexität heutiger Systeme besser zu beherrschen. Der Einsatz führt in einigen Anwendungsbereichen heute schon zu bedeutend höherer Produktivität und Qualität sowie geringeren Entwicklungszeiten. Anderseits hat sich aber auch in anderen Anwendungsgebieten gezeigt, dass die ständige Anpassung der Software an sich ändernde Anforderungen oder Organisationsstrukturen dazu führt, dass in frühen Entwicklungsphasen entstandene Modelle in der Praxis oft sehr schnell nicht mehr mit der Software übereinstimmen. In seiner Antrittsvorlesung will Holger Giese diese Entwicklung Revue passieren lassen und der Frage nachgehen, was dies für die Zukunft der Modellierung bedeutet, mit welchen aktuellen Ansätzen man diesem Problem zu begegnen versucht und welche zukünftigen Entwicklungen für die Modellierung zu erwarten sind. Y1 - 2008 UR - http://info.ub.uni-potsdam.de/multimedia/show_projekt.php?projekt_id=24 PB - Univ.-Bibl. CY - Potsdam ER -