Abstract
A power consumption optimization for battery-powered and resource-constrained embedded systems is typically performed on the hardware layer while the application layer is often neglected. Because software applications affect the hardware behavior directly, power-related optimizations can result in major application design and workflow changes. Such in-depth modifications should be considered in early design phases, where they are most effective. For embedded software development, current trends in software engineering such as Model-Driven Development (MDD) can be used for an early power consumption analysis and optimization even if the hardware platform is not yet finalized. However, power consumption aspects on the application layer are currently not sufficiently considered in MDD. In this paper, we present an approach to abstract hardware components of an embedded system using the Unified Modeling Language (UML) and annotate UML-based models with power characteristics. Additionally, we define a novel UML profile to capture the dynamic behavior of hardware components while interacting with software applications. With our approach, energy profiles can be derived to make the impact of software on power consumption in early design stages visible. Energy profiles are also suitable for software optimization and energy bug detection, which is demonstrated using a sensor node use case example.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
To improve readability, the abbr. IBM Rhapsody is used for the rest of this article.
- 2.
For a better readability, the shortened notation (value|expr, unit) is used in the following sections.
- 3.
References
Abd El-Mawla, N., Badawy, M., Arafat, H.: IoT for the failure of climate-change mitigation and adaptation and IIoT as a future solution. World J. Environ. Eng. 6(1), 7–16 (2019). https://doi.org/10.12691/wjee-6-1-2
Andrade, E., Maciel, P., Falcão, T., Nogueira, B., Araujo, C., Callou, G.: Performance and energy consumption estimation for commercial off-the-shelf component system design. Innovations Syst. Softw. Eng. 6(1–2), 107–114 (2010). https://doi.org/10.1007/s11334-009-0110-7
Arpinen, T., Salminen, E., Hämäläinen, T.D., Hännikäinen, M.: Marte profile extension for modeling dynamic power management of embedded systems. J. Syst. Archit. 58(5), 209–219 (2012). https://doi.org/10.1016/j.sysarc.2011.01.003
Atitallah, Y.B., Mottin, J., Hili, N., Ducroux, T., Godet-Bar, G.: A power consumption estimation approach for embedded software design using trace analysis. In: Proceedings of the 41st Euromicro Conference on Software Engineering and Advanced Applications, Madeira, Portugal, 26–28 August 2015, pp. 61–68 (2015). https://doi.org/10.1109/SEAA.2015.34
Banerjee, A., Chattopadhyay, S., Roychoudhury, A.: On testing embedded software. In: Advances in Computers, vol. 101, pp. 121–153. Elsevier (2016)
Banerjee, A., Chong, L.K., Chattopadhyay, S., Roychoudhury, A.: Detecting energy bugs and hotspots in mobile apps. In: Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering, FSE 2014, Hong Kong, China, 16–21 November 2014, pp. 588–598 (2014). https://doi.org/10.1145/2635868.2635871. ISBN 978-1-450-33056-5
Benini, L., Bogliolo, A., de Micheli, G.: A survey of design techniques for system-level dynamic power management. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. 8(3), 299–316 (2000). https://doi.org/10.1109/92.845896
Bosch Sensortec GmbH: BME280 - Data sheet, Version 1.9. Document Number BST-BME280-DS001-18. https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme280-ds002.pdf (2020). Accessed 09 Jul 2021
Bouguera, T., Diouris, J.F., Chaillout, J.J., Jaouadi, R., Andrieux, G.: Energy consumption model for sensor nodes based on LoRa and LoRaWAN. Sensors 18(7), 2104 (2018)
Caplat, G., Sourrouille, J.L.: Considerations about model mapping. In: Bezivin, J., Gogolla, M. (eds.) Workshop in Software Model Engineering (WiSME) at the 6th International Conference of the Unified Modeling Language, Modeling Languages and Applications (UML 2003), San Francisco, CA, USA, 21 October 2003
Cisco Systems: Cisco annual internet report (2018–2023). White Paper C11–741490-01. https://www.cisco.com/c/en/us/solutions/collateral/executive-perspectives/annual-internet-report/white-paper-c11-741490.html (2020)
Danese, A., Pravadelli, G., Zandonà, I.: Automatic generation of power state machines through dynamic mining of temporal assertions. In: Proceedings of the 2016 Conference on Design, Automation & Test in Europe, Dresden, Germany, DATE 2016, 14–18 March 2016, pp. 606–611. EDA Consortium, San Jose (2016). ISBN 9783981537062
Douglass, B.P.: Design Patterns for Embedded Systems in C: An Embedded Software Engineering Toolkit. Newnes/Elsevier, Oxford and Burlington (2011)
Elijah, O., Rahman, T.A., Orikumhi, I., Leow, C.Y., Hindia, M.N.: An overview of internet of things (IoT) and data analytics in agriculture: benefits and challenges. IEEE Internet Things J. 5(5), 3758–3773 (2018)
Friedli, M., Kaufmann, L., Paganini, F., Kyburz, R.: Energy efficiency of the internet of things: technology and energy assessment report prepared for IEA 4e EDNA (2016). https://www.iea-4e.org/document/384/energy-efficiency-of-the-internet-of-things-technology-and-energy-assessment-report
Georgiou, K., Xavier-de Souza, S., Eder, K.: The IoT energy challenge: a software perspective. IEEE Embed. Syst. Lett. 10(3), 53–56 (2018)
Gomez, C., DeAntoni, J., Mallet, F.: Multi-view power modeling based on UML, MARTE and SysML. In: Proceedings of the 2012 38th Euromicro Conference on Software Engineering and Advanced Applications, Cesme, Turkey, 05–08 September 2012, pp. 17–20 (2012). https://doi.org/10.1109/SEAA.2012.66
Gries, M.: Methods for evaluating and covering the design space during early design development. Integr. VLSI J. 38(2), 131–183 (2004). https://doi.org/10.1016/j.vlsi.2004.06.001
Grunwald, A., Schaarschmidt, M., Westerkamp, C.: LoRaWAN in a rural context: Use cases and opportunities for agricultural businesses. In: Roer, P. (ed.) Proceedings of the Mobile Communication-Technologies and Applications; 24. ITG-Symposium, ITG-Fachbericht, 15–16 May 2019, pp. 134–139. VDE-Verl. GmbH, Osnabrück, Germany (2019)
Gupta, A., Tsai, T., Rueb, D., Yamaji, M., Middleton, P.: Forecast: internet of things: endpoints and associated services, worldwide, vol. 2017 (2017). https://www.gartner.com/en/documents/3840665/forecast-internet-of-things-endpoints-and-associated-ser
Hagner, M., Aniculaesei, A., Goltz, U.: UML-based analysis of power consumption for real-time embedded systems. In: Proceedings of the 10th International Conference on Trust, Security and Privacy in Computing and Communications, 16–18 November 2011, pp. 1196–1201. IEEE, Changsha, HN,China (2011). https://doi.org/10.1109/TrustCom.2011.161. ISBN 978-1-4577-2135-9
Holst, A.: Number of internet of things (IoT) connected devices worldwide from 2019 to 2030 (2021). https://www.statista.com/statistics/1183457/iot-connected-devices-worldwide/
Holst, A.: Number of internet of things (IoT) connected devices worldwide from 2019 to 2030, by communications technology (2021). https://www.statista.com/statistics/1194688/iot-connected-devices-communications-technology/
IBM: IBM Engineering Systems Design Rhapsody - Developer (2021). https://www.ibm.com/products/uml-tools. Accessed 12 July 2021
IEEE SA: IEEE Standard for IP-XACT, Standard Structure for Packaging, Integrating, and Reusing IP within Tool Flows. Document Number IEEE 1685–2014. https://standards.ieee.org/standard/1685-2014.html (2014)
Iyenghar, P., Pulvermueller, E.: A model-driven workflow for energy-aware scheduling analysis of IoT-enabled use cases. IEEE Internet Things J. 5(6), 4914–4925 (2018). https://doi.org/10.1109/JIOT.2018.2879746
Julien, N., Laurent, J., Senn, E., Martin, E.: Power consumption modeling and characterization of the TI c6201. IEEE Micro 23(5), 40–49 (2003). https://doi.org/10.1109/MM.2003.1240211
Martinez, B., Monton, M., Vilajosana, I., Prades, J.D.: The power of models: modeling power consumption for IoT devices. IEEE Sens. J. 15(10), 5777–5789 (2015). https://doi.org/10.1109/JSEN.2015.2445094
Nurseitov, N., Paulson, M., Reynolds, R., Izurieta, C.: Comparison of JSON and XML data interchange formats: a case study. In: Che, D. (ed.) Proceedings of the 22nd International Conference on Computer Applications in Industry and Engineering (CAINE), 4–6 November 2009, pp. 157–162. ISCA, San Francisco, CA, USA (2009)
NXP Semiconductors: LPC5411x - Product data sheet, Rev. 2.5. Document identifier LPC5411x. https://www.nxp.com/docs/en/data-sheet/LPC5411X.pdf (2019). Accessed 07 Sep 2021
Object Management Group: Unified Modeling Language, Version 2.5.1. OMG Document Number formal/17-12-05. https://www.omg.org/spec/UML/2.5.1/ (2017)
Object Management Group: A UML Profile for MARTE: Modeling and Analysis of Real-Time and Embedded Systems, Version 1.2. OMG Document Number formal/19-04-01. https://www.omg.org/spec/MARTE/1.2/ (2019). Accessed 07 Sep 09 2021
Object Management Group (gG): Model Driven Architecture (MDA): MDA Guide rev. 2.0. OMG Document Number ormsc/2014-06-01. https://www.omg.org/cgi-bin/doc?ormsc/14-06-01 (2014). Accessed 07 Sep 2021
Pang, C., Hindle, A., Adams, B., Hassan, A.E.: What do programmers know about software energy consumption? IEEE Softw. 33(3), 83–89 (2016)
Pathak, A., Hu, Y.C., Zhang, M.: Bootstrapping energy debugging on smartphones: a first look at energy bugs in mobile devices. In: Proceedings of the 10th ACM Workshop on Hot Topics in Networks, HotNets-X, Cambridge, MA, USA, 14–15 November 2011, 6 p. (2011). https://doi.org/10.1145/2070562.2070567. Article No. 5. ISBN 978-1-4503-1059-8
Pinto, G., Castor, F., Liu, Y.D.: Mining questions about software energy consumption. In: Proceedings of the 11th Working Conference on Mining Software Repositories, MSR 2014, 31 May–1 June 2014, pp. 22–31. ACM, Hyderabad, India (2014). https://doi.org/10.1145/2597073.2597110. ISBN 978-1-4503-2863-0
Schaarschmidt., M., Uelschen., M., Pulvermüller., E.: Power consumption estimation in model driven software development for embedded systems. In: Proceedings of the 16th International Conference on Software Technologies - ICSOFT, 6–8 July 2021, pp. 47–58. INSTICC, SciTePress, Online Streaming (2021). https://doi.org/10.5220/0010522700470058. ISBN 978-989-758-523-4. ISSN 2184-2833
Schaarschmidt, M., Uelschen, M., Pulvermüller, E., Westerkamp, C.: Framework of software design patterns for energy-aware embedded systems. In: Proceedings of the 15th International Conference on Evaluation of Novel Approaches to Software Engineering - ENASE, 5–6 May 2020, pp. 62–73. INSTICC, SciTePress, Online Streaming (2020). https://doi.org/10.5220/0009351000620073. ISBN 978-989-758-421-3, ISSN 2184-4895
Selic, B., Gérard, S.: Modeling and analysis of real-time and embedded systems with UML and MARTE: Developing cyber-physical systems. Morgan Kaufmann, Waltham (2014)
Silicon Labs: Energy debugging tools for embedded applications. Technical Report (2010)
SparxSystems: Enterprise architect (2020). https://sparxsystems.com/products/ea/index.html. Accessed 12 Jul 2021
Tan, T.K., Raghunathan, A., Jha, N.K.: Software architectural transformations: a new approach to low energy embedded software. In: Design, Automation, and Test in Europe Conference and Exhibition, 7 March 2003, pp. 1046–1051. IEEE Computer Society, Munich, Germany (2003). https://doi.org/10.1109/DATE.2003.1253742. ISBN 978-0-7695-1870-1
The MathWorks Inc: MATLAB (2021). https://www.mathworks.com/products/matlab. Accessed 12 Jul 2021
Vuran, M.C., Salam, A., Wong, R., Irmak, S.: Internet of underground things in precision agriculture: architecture and technology aspects. Ad Hoc Netw. 81, 160–173 (2018). https://doi.org/10.1016/j.adhoc.2018.07.017
Zanella, A., Bui, N., Castellani, A., Vangelista, L., Zorzi, M.: Internet of things for smart cities. IEEE Internet Things J. 1(1), 22–32 (2014)
Zhou, H.Y., Luo, D.Y., Gao, Y., Zuo, D.C.: Modeling of node energy consumption for wireless sensor networks. Wirel. Sens. Netw. 03(01), 18–23 (2011). https://doi.org/10.4236/wsn.2011.31003
Zhu, Z., Olutunde Oyadiji, S., He, H.: Energy awareness workflow model for wireless sensor nodes. Wirel. Commun. Mob. Comput. 14(17), 1583–1600 (2014). https://doi.org/10.1002/wcm.2302
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 Springer Nature Switzerland AG
About this paper
Cite this paper
Schaarschmidt, M., Uelschen, M., Pulvermüller, E. (2022). Towards Power Consumption Optimization for Embedded Systems from a Model-driven Software Development Perspective. In: Fill, HG., van Sinderen, M., Maciaszek, L.A. (eds) Software Technologies. ICSOFT 2021. Communications in Computer and Information Science, vol 1622. Springer, Cham. https://doi.org/10.1007/978-3-031-11513-4_6
Download citation
DOI: https://doi.org/10.1007/978-3-031-11513-4_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-11512-7
Online ISBN: 978-3-031-11513-4
eBook Packages: Computer ScienceComputer Science (R0)