Skip to main content

Architectural Tactics for Energy-Aware Robotics Software: A Preliminary Study

  • Conference paper
  • First Online:
Software Architecture (ECSA 2021)

Abstract

In software engineering, energy awareness refers to the conscious design and development of software that is able to monitor and react to energy state. Energy awareness is the key building block for energy efficiency and for other quality aspects of robotics software, such as mission completion time and safety. However, as of today, there is no guidance for practitioners and researchers on how to architect robotics software with energy awareness in mind. The goal of this paper is to identify architectural tactics for energy-aware robotics software. Specifically, using a dataset of 339493 data points extracted from five complementary data sources (e.g., source code repositories, Stack Overflow), we identified and analyzed 97 data points that considered both energy consumption and architectural concerns. We then synthesized a set of energy-aware architectural tactics via thematic analysis. In this preliminary investigation we focus on two representative architectural tactics.

Copyright 2021 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 99.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://answers.ros.org.

  2. 2.

    https://discourse.ros.org.

  3. 3.

    https://github.com/S2-group/ecsa-2021-replication-package.

  4. 4.

    https://github.com/vortexntnu/rov-control.

  5. 5.

    https://github.com/aau-ros/aau_multi_robot.

References

  1. International Technology Roadmap for Semiconductors. https://www.itrs2.net/itrs-reports.html. Accessed 04 June 2021

  2. ROS.org — Powering the world’s robots. https://www.ros.org/. Accessed 12 Mar 2021

  3. Albonico, M., Malavolta, I., Pinto, G., Guzmán, E., Chinnappan, K., Lago, P.: Mining energy-related practices in robotics software. In: International Conference on Mining Software Repositories, MSR, New York, NY. IEEE/ACM, May 2021

    Google Scholar 

  4. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 3rd edn. Addison-Wesley Professional, Boston (2012)

    Google Scholar 

  5. Carabin, G., Wehrle, E., Vidoni, R.: A review on energy-saving optimization methods for robotic and automatic systems. MDPI (2017)

    Google Scholar 

  6. Clements, P., Garlan, D., Little, R., Nord, R., Stafford, J.: Documenting software architectures: views and beyond. In: Proceedings of 25th International Conference on Software Engineering, pp. 740–741. IEEE (2003)

    Google Scholar 

  7. De Matteis, T., Mencagli, G.: Proactive elasticity and energy awareness in data stream processing. J. Syst. Softw. 127, 302–319 (2017)

    Article  Google Scholar 

  8. Fonseca, A., Kazman, R., Lago, P.: A manifesto for energy-aware software. IEEE Softw. 36(6), 79–82 (2019)

    Article  Google Scholar 

  9. Malavolta, I., Chinnappan, K., Swanborn, S., Lewis, G., Lago, P.: Mining the ROS ecosystem for green architectural tactics in robotics and an empirical evaluation. In: Proceedings of the 18th International Conference on Mining Software Repositories, MSR, pp. 300–311. ACM, May 2021

    Google Scholar 

  10. Malavolta, I., Lewis, G., Schmerl, B., Lago, P., Garlan, D.: How do you architect your robots? State of the practice and guidelines for ROS-based systems. In: IEEE/ACM 42nd International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP), pp. 31–40 (2020)

    Google Scholar 

  11. Malavolta, I., Lewis, G.A., Schmerl, B., Lago, P., Garlan, D.: Mining guidelines for architecting robotics software. J. Syst. Softw. 178, 110969 (2021)

    Article  Google Scholar 

  12. Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Hoboken (1996)

    MATH  Google Scholar 

  13. Vikhorev, K., Greenough, R., Brown, N.: An advanced energy management framework to promote energy awareness. J. Clean. Prod. 43, 103–112 (2013)

    Article  Google Scholar 

Download references

Acknowledgments

This research is partially supported by the Dutch Research Council (NWO) through the OCENW.XS2.038 grant; and the CNPQ/FA through the PPP-CP-20/2018 call.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michel Albonico .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Chinnappan, K., Malavolta, I., Lewis, G.A., Albonico, M., Lago, P. (2021). Architectural Tactics for Energy-Aware Robotics Software: A Preliminary Study. In: Biffl, S., Navarro, E., Löwe, W., Sirjani, M., Mirandola, R., Weyns, D. (eds) Software Architecture. ECSA 2021. Lecture Notes in Computer Science(), vol 12857. Springer, Cham. https://doi.org/10.1007/978-3-030-86044-8_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-86044-8_11

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-86043-1

  • Online ISBN: 978-3-030-86044-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics