Toward an Architectural Blueprint to Observe Sustainability in and by Software Systems
This work addresses the problem of enabling sustainability monitoring in software systems for developers who lack technical expertise, though it appears incremental as it builds on existing observability concepts.
The authors tackled the challenge of adding sustainability observability to software systems by proposing an architectural blueprint and deployment code, which they demonstrated in two use cases to facilitate measuring energy consumption and other dimensions.
Enabling observability in software systems brings many benefits. It can, for example, ease the identification of issues or the implementation of improvements. It is especially critical to be able to observe sustainability-related dimensions of systems to know and mitigate their impact. However, adding observability to a system, especially related to software sustainability, requires technical knowledge that may not be available in every project that would benefit from it. In this work, we propose an architectural blueprint along with its deployment code that can be used to facilitate the addition of observability in software systems. As a special case, it includes measuring the energy consumption of software. This toolkit provides support in defining which components are necessary for a given use case and for structuring their deployment. Moreover, we exemplify the addition of observability in two different use cases.