Power Consumption Modeling and Estimation for Software Applications in Model-Driven Development of Embedded Systems
Please use this identifier to cite or link to this item:
https://doi.org/10.48693/436
https://doi.org/10.48693/436
Title: | Power Consumption Modeling and Estimation for Software Applications in Model-Driven Development of Embedded Systems |
Authors: | Schaarschmidt, Marco |
ORCID of the author: | https://orcid.org/0000-0001-8260-5326 |
Thesis advisor: | Prof. Dr.-Ing. Elke Pulvermüller |
Thesis referee: | Prof. Dr.-Ing. Clemens Westerkamp Assoc. Prof. Dr. Hany Elgala |
Abstract: | Nowadays, embedded systems are ubiquitous and inherent in almost all areas of life. In recent years, trends like the Internet of Things (IoT) have been a primary driver for the growing embedded systems market. Many of those IoT devices are battery-powered and more resource-constrained. In addition to economic constraints like total costs and short time-to-market, technical constraints lead to multiple challenges in embedded software development. For battery-powered systems, electrical energy is one of the most critical constraints. For instance, uncontrolled power consumption or an exhausted energy source caused by software applications may lead to failure and costly damage to the device or the environment. Developers often lack knowledge and suitable design concepts to specify, implement, and evaluate energy-efficient software applications. Additionally, constantly changing technologies, extensive functionalities, and various requirements further increase the complexity of embedded software applications while making their development a critical and complex task. To manage the complexity of software applications and the development process, methodologies such as Model-driven Development (MDD) have gained importance. However, power-related non-functional aspects are insufficiently considered in MDD. This thesis addresses the aforementioned gaps and presents a novel framework for energy-aware software design patterns. Developers and engineers may use the framework to specify and describe design patterns addressing power-related issues of software applications. The introduced design pattern template provides a set of metrics to describe possible energy savings and the effort-saving ratio when applying a design pattern. The template also contains a unified graphical representation to visualize the effects of design patterns. In addition, a first catalog of energy-aware design patterns is provided, which may be used to design software applications in MDD and traditional development. To further enhance the development of energy-efficient software applications in MDD, this thesis also introduces a novel power consumption estimation approach for models based on the Unified Modeling Language (UML). The approach is specifically designed for early development stages when optimizations are most effective. A concept for hardware component models is presented, which can be integrated into the software application model. With the provided UML profile, aspects related to power and timing can be modeled. In addition, methods for indirect and direct power analysis are introduced. While the indirect power analysis is based on simulated hardware behavior, the direct power analysis relies on a real hardware platform and a measuring device. Along with the novel and formal description of energy bugs, software applications can be evaluated and energy-related issues detected. A real-world example of an IoT sensor node and a proof-of-concept implementation of the power consumption estimation approach illustrate the application of proposed modeling and estimation concepts. Moreover, the detection of energy bugs is demonstrated, and the accuracy of the analysis methods is compared. Additionally, the overall performance of the direct power analysis is investigated in depth. The results have shown that the concepts and approaches are suitable for analyzing and predicting the power consumption of software applications in early development phases. Furthermore, the process can be integrated into existing development workflows to support developers using MDD to design energy-efficient software applications. |
URL: | https://doi.org/10.48693/436 https://osnadocs.ub.uni-osnabrueck.de/handle/ds-2023120110114 |
Subject Keywords: | Embedded Software Engineering; Model-driven Development; Embedded Systems; Power Consumption Estimation; Energy Bug; Energy Efficiency; Energy-aware Software Design Pattern; Internet of Things; Model-In-The-Loop; UML |
Issue Date: | 1-Dec-2023 |
Type of publication: | Dissertation oder Habilitation [doctoralThesis] |
Appears in Collections: | FB06 - E-Dissertationen |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
thesis_schaarschmidt.pdf | Präsentationsformat | 14,72 MB | Adobe PDF | thesis_schaarschmidt.pdf View/Open |
Items in osnaDocs repository are protected by copyright, with all rights reserved, unless otherwise indicated. rightsstatements.org