Software Sustainability: A Systematic Literature Review and Comprehensive Analysis

Software Sustainability: A Systematic Literature Review and   Comprehensive Analysis
Notice: This research summary and analysis were automatically generated using AI technology. For absolute accuracy, please refer to the [Original Paper Viewer] below or the Original ArXiv Source.

Software Engineering is a constantly evolving subject area that faces new challenges every day as it tries to automate newer business processes. One of the key challenges to the success of a software solution is attaining sustainability. The inability of numerous software to sustain for the desired time-length is caused by limited consideration given towards sustainability during the stages of software development. This review aims to present a detailed and inclusive study covering both the technical and non-technical challenges and approaches of software sustainability. A systematic and comprehensive literature review was conducted based on 107 relevant studies that were selected using the Evidence-Based Software Engineering (EBSE) technique. The study showed that sustainability can be achieved by conducting specific activities at the technical and non-technical levels. The technical level consists of software design, coding, and user experience attributes. The non-technical level consists of documentation, sustainability manifestos, training of software engineers, funding software projects, and leadership skills of project managers to achieve sustainability. This paper groups the existing research efforts based on the above aspects. Next, how those aspects affect open and closed source software is tabulated. Based on the findings of this review, it is seen that both technical and non-technical sustainability aspects are equally important, taking one into contention and ignoring the other will threaten the sustenance of software products.


💡 Research Summary

The paper presents a systematic literature review of software sustainability, analyzing 107 peer‑reviewed studies selected through an Evidence‑Based Software Engineering (EBSE) protocol. The authors categorize sustainability activities into two complementary dimensions. The technical dimension encompasses design principles (modular architecture, standards), coding practices (coding standards, refactoring, code‑smell detection, change management, security, availability) and user‑experience considerations (UX design, feedback loops). The non‑technical dimension includes effective documentation (requirements, design, test and maintenance artifacts), sustainability manifestos (policy guidelines), training of engineers in sustainable development methods, financial support (grants, crowd‑funding, corporate investment) and leadership skills (change, cost and personnel management).

Through a PICOC‑guided search across major databases (IEEE Xplore, ACM DL, ScienceDirect, Web of Science, Springer, Google Scholar, URSSI, SSI, Scopus) and a rigorous inclusion/exclusion process, the authors answer three research questions: (RQ1) identification of technical and non‑technical challenges, (RQ2) causal relationships between these challenges and software engineering practices, and (RQ3) differences between open‑source and closed‑source contexts. The analysis shows that open‑source projects benefit from easy access to source code and community contributions, facilitating rapid adoption of innovative design, coding, and UX techniques; however, they often lack stable funding for non‑technical sustainability measures. Closed‑source projects, by contrast, typically have more reliable financial resources to support documentation, training, and governance, but they tend to rely on legacy processes and are slower to incorporate cutting‑edge technical improvements.

The review highlights gaps in the existing literature: most prior work focuses on isolated technical aspects (e.g., code comments, test automation) or environmental friendliness, while comprehensive studies that integrate both dimensions, especially concerning requirement prioritization, data stewardship, and organizational culture, are scarce. Consequently, the authors call for future research to develop integrated sustainability frameworks, standardize sustainability manifestos, devise quantitative metrics for long‑term maintainability and reliability, and explore sustainable financing models for open‑source ecosystems. The paper concludes that achieving lasting software sustainability requires simultaneous attention to both technical and non‑technical factors; neglecting either side jeopardizes the software’s longevity.


Comments & Academic Discussion

Loading comments...

Leave a Comment