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
Open Access logo originally created by the Public Library of Science (PLoS)
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 SizeFormat 
thesis_schaarschmidt.pdfPräsentationsformat14,72 MBAdobe PDF
thesis_schaarschmidt.pdf
Thumbnail
View/Open


Items in osnaDocs repository are protected by copyright, with all rights reserved, unless otherwise indicated. rightsstatements.org