TY - JOUR A1 - Krupitzer, Christian A1 - Temizer, Timur A1 - Prantl, Thomas A1 - Raibulet, Claudia T1 - An Overview of Design Patterns for Self-Adaptive Systems in the Context of the Internet of Things JF - IEEE Access N2 - The Internet of Things (IoT) requires the integration of all available, highly specialized, and heterogeneous devices, ranging from embedded sensor nodes to servers in the cloud. The self-adaptive research domain provides adaptive capabilities that can support the integration in IoT systems. However, developing such systems is a challenging, error-prone, and time-consuming task. In this context, design patterns propose already used and optimized solutions to specific problems in various contexts. Applying design patterns might help to reuse existing knowledge about similar development issues. However, so far, there is a lack of taxonomies on design patterns for self-adaptive systems. To tackle this issue, in this paper, we provide a taxonomy on design patterns for self-adaptive systems that can be transferred to support adaptivity in IoT systems. Besides describing the taxonomy and the design patterns, we discuss their applicability in an Industrial IoT case study. KW - Design patterns KW - Internet of Things KW - IoT KW - self-adaptive systems KW - software engineering Y1 - 2020 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-229984 VL - 8 ER - TY - JOUR A1 - Grohmann, Johannes A1 - Herbst, Nikolas A1 - Chalbani, Avi A1 - Arian, Yair A1 - Peretz, Noam A1 - Kounev, Samuel T1 - A Taxonomy of Techniques for SLO Failure Prediction in Software Systems JF - Computers N2 - Failure prediction is an important aspect of self-aware computing systems. Therefore, a multitude of different approaches has been proposed in the literature over the past few years. In this work, we propose a taxonomy for organizing works focusing on the prediction of Service Level Objective (SLO) failures. Our taxonomy classifies related work along the dimensions of the prediction target (e.g., anomaly detection, performance prediction, or failure prediction), the time horizon (e.g., detection or prediction, online or offline application), and the applied modeling type (e.g., time series forecasting, machine learning, or queueing theory). The classification is derived based on a systematic mapping of relevant papers in the area. Additionally, we give an overview of different techniques in each sub-group and address remaining challenges in order to guide future research. KW - taxonomy KW - survey KW - failure prediction KW - anomaly prediction KW - anomaly detection KW - self-aware computing KW - self-adaptive systems KW - performance prediction Y1 - 2020 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-200594 SN - 2073-431X VL - 9 IS - 1 ER -