Sustainable Software Systems: The Core Characteristics and Their Achievement

To define what is exactly what sustainable software is, we gathered from the literature the following text passages that somehow define the main characteristics of sustainable software. The passages show the current comprehension in software engineering about sustainable software considering the multiple dimensions involved (environmental, social, economic, technical, and individual).

ID Text Passages Comments
S1 Green and sustainable software is the design and production of software, having direct or indirect negative effect on country's economy, people, society and environment that result from software pre‐development, development and post‐development phases are negligible and/or which have a positive impact on sustainable production. no comments
S1 In agile methods, “code is documentation” that avoids nonessential deliverables during software development, which results in greener SDLC. In noncritical software systems, extensive documentations do not fit to the needs of software projects, hence should be minimized for environment‐friendly software development. Is a software that avoids non essential deliverables during software development. Also is a project that avoid extensive documentations.
S1 Abbas et al99 argue that agile software developers focus on polymorphic design that fit to meet the long‐term goals of the project. Sustainability of a software project can be compromised if the agile software developers do not consider the impact of simple and polymorphic design in software development. Is a software that is polymorphic and fits to meet the long-term goals of project
S1 Erdelyi45 examines the activities of SDLC from environmental perspectives. The author argues the role of well‐behaved software development in eco‐sustainability, ie, software that requires less effort for development and consumes less energy. The author examines software engineering processes enhanced with green practices for the development of eco‐friendly software. no comments
S2 To start with, a definition displayed as Green and Sustainable Software is software, whose immediate and backhanded negative effects on economy, society, individuals, and environment that come from advancement, organization, and use of the software are negligible and/or which positively affects sustainable improvement 13, . no comments
S2 Nowadays apart from cost, factors such as environment, social, and human sustainability are required to be considered in any planning program, implementation and running software system. Sustainability, normally known as addressing "the requirements of the present without trading off the capacity of future eras to fulfil their own particular needs", is a critical segment of society, government and finance no comments
S2 Financial investments ought to be kept up. The meaning of profit as the sum a person can spend amid a period and still be doing well toward the end of the period can characterize economic sustainability, as it decays on expending interest, as opposed to capital. In various cases, the current monetary circumstance is viewed as a sort of benchmark for assessing choices on their environmental effect. This holds especially for the LCA related studies (e.g. 25, 26, or those incorporating AHP 27, 28, . Definition of economic sustainable software
S3 Green and sustainable software is the design and production of software, having direct or indirect negative effect on country's economy, people, society and environment that result from software pre‐development, development and post‐development phases are negligible and/or which have a positive impact on sustainable production. no comments
S4 Green and sustainable software is clearly elaborated in the literature as "the software, whose direct and indirect negative impacts on economy, society, human beings, and environment that result from development, deployment, and usage of the software are minimal and/or which has a positive effect on sustainable development" 9, . no comments
S4 According to 12, , green software generates as tiny e-waste as possible during its operation and development. Literature reveals that the effect of ICTs on sustainable development particularly on software is a burning issue in green computing now a days 13, . no comments
S5 “software which direct and indirect impacts on economy, society, human being, and environment that result from development, deployment and usage of the software are minimal and/or which has a positive effect on sustainable development” 6, . no comments
S5 Green software is an application that produces as little waste as possible during its development and operation 5, . no comments
S6 Green SE aims to create reliable and durable software that meets users’ needs while reducing environmental impacts 1, . no comments
S7 software, whose impacts on economy, society, human beings, and environment that result from development, deployment, and usage\nof the software are minimal and/or which have a positive effect on sustainable development” 1, no comments
S8 Green IN Software or Sustainable Software Engineering means the software development process where practical application of sustainability aspects takes place. For instance, software that complies with customer software requirements causing less changes during it scope 7, , 8, softwares que possuem uma coleta de requisitos efetivos que são atendidos como necessidades dos clientes e terão o mínimo de alterações no escopo do projeto
S9 as the art of designing, developing, using and disposing the software product that is long-lasting and energy efficient in order to reduce the negative impact on the environment. no comments
S11 Definition 1: “Sustainable software is software whose direct and indirect negative impacts on economy, society, human beings, and the environment resulting from development, and usage of the software is minimal and/or has positive effect on sustainable development” 5, . Definition 2: “The art of developing sustainable software with a sustainable software engineering process so that negative and positive impacts result in and/or are expected to result from the software product over its whole life cycle are continuously assessed, documented, and used for further optimization of the software product” 6, . no comments
S12 The most cited definition of sustainable development 5, is to “meet the needs of the present without compromising the ability of future generations to satisfy their own needs.” According to 5, , sustainable development needs to satisfy the requirements of the three dimensions of society, economy, and environment. A fourth dimension, human sustainability, is less present in the public discussion no comments
S12 “meet the needs of the present without compromising the ability of future generations to satisfy their own needs.” Is a software that met all the needs of the present without compromising the ability of future generations to satisfy their own needs.
S12 Development process aspect: Sustainability in the initial system development process (with responsible use of ecological, human, and financial resources). This aspect focusses on the initial conceptual and constructional development and we distinguish it from the late phase of actual system production for reasons of analysis. Maintenance process aspect: Sustainability of the software system during its maintenance period until replacement by a new system (with continuous monitoring of quality, knowledge management). A green software is produced with a responsible use of resources. Also, it aims to mantain its viability during a maintenance period or replacement by a new system.
S13 Green Software has been defined in the literature as, that Software, whose direct and indirect negative influences on economy/humanity/ human beings/environment due to its creation deployment, and usage minimal and/or which has a positive consequence on sustainable development 21, no comments
S14 Therefore, in our context, sustainable software is energy-efficient, minimizes the environmental impact of the processes it supports, and has a positive impact on social and/or economic sustainability (1 & 2). These impacts can occur direct (energy), indirect (mitigated by service) or as rebound effect 3, . The aim of Software Engineering for Sustainability (SE4S) is to make use of methods and tools in order to achieve this notion of sustainable software no comments
S15 A sustainable software is the one which is developed and used in such a way that it leaves a minimum negative impact on users, environment, economy and society in general 2, no comments
S16 as the development of the software product for long living systems that can meet the needs of the present to the future generations with the integration of the three pillars sustainability concept i.e. (environment, economic, social) as to fulfill the requirements in a timely basis(Brundland Commission Report, 1987). no comments
S18 Sustainable Software is software, whose direct and indirect negative impacts on economy, society, human beings, and\nenvironment that result from development, deployment, and usage of the software are minimal and/or which have a positive\neffect on sustainable development 1, . no comments
S18 Table 2 - PRODUCT QUALITY MODEL OF 25010+S PROPOSED IN 4, A sustainable software is a system that manage time and resources used. Easily learnable and acessible, reusable, modifiable and adaptable
S19 “software, whose impacts on economy, society, human beings, and environment that result from development, deployment and usage of the software are minimal and/or which have a positive effect on sustainable development” 1, no comments
S19 In enviromental dimension, sustainable software promotes energy efficiency, minimizes the environmental impact of the processes it supports, and has a positive impact on social and/or economic sustainability 4, . no comments
S19 Green in software is related to how to make software in a more sustainable way in order to develop a more sustainable software product, i.e., to develop a more environment-friendly software. On the other hand, green by software refers to software developed for domains focusing on the preservation of the environment, as well as to software that helps to manage energy-intensive applications. no comments
S19 Penzendstadler et al. 4, interpret sustainable software in two ways: as software code that is sustainable, agnostic of purpose; and also as a software purpose directed at achieving sustainability goals. no comments
S20 The primary goal of the emerging discipline of IT sustainability is to enable firms to use computing resources more efficiently while maintaining or increasing overall performance. Green software uses computing resources more efficiently while mantaining or increasing overall performance.
S21 Long-living software systems are sustainable if they can be cost-efficiently maintained and evolved over their entire lifecycle. The quality of software architectures determines sustainability to a large extent. no comments
S21 Definition 1. A software-intensive system is long-living if it must be operated for more than 15 years.\n no comments
S21 Definition 2. A long-living software system is sustainable if it can be cost-efficiently maintained and evolved over its entire life-cycle. no comments
S21 The opposite of a sustainable software system is a longliving system that cannot be adapted to changing requirements and environments due to unjustifiable costs or even technical infeasibility. The architecture of a sustainable system may evolve during its life-cycle, but the fulfillment of customer requirements within timing, budget, and quality constraints must be assured. no comments
S22 Sustainability refers 'to capacity to endure' while sustainable software\nrefers to the software that can be continuously assessable, documented and maintainable. no comments
S23 Sustainability refers 'to capacity to endure' while sustainable software\nrefers to the software that can be continuously assessable, documented and maintainable. no comments
Observing the text passages, some similarities and characteristics are mentioned several times in studies and can be summarized. Therefore, we created a new table and group the text passages which are similar, and applied thematic analysis to better understand what is exactly sustainable software.
Study Understanding Characteristics
S1, S3, S4, S5, S7, S11, S14, S18, S19, S20 Sustainable software is software whose direct and indirect negative impacts on economy, society, human beings, and the environment resulting from development, and usage of the software is minimal and/or has positive effect on sustainable development and post‐development phases are negligible and/or which have a positive impact on sustainable production.
  • Minimal negative impacts on economy,society, human beings, and environment
  • Positive impact on sustainable softwareproduction
S4, S5, S20 Green software is a software that generates as tiny e-waste as possible during its operation and development.
  • Less e-waste
S2, S12, S16 Is a software that handles cost, environment, social, and human sustainability. Also, the requirements of the software must not trade off the capacity of future eras to fulfil their own particular needs
  • Alignment to the economic, environmental, social, and individual sustainability
  • Less impact on future human generations
S6, S15 Green SE aims to create reliable and durable software that meets users’ needs while reducing environmental impacts
  • Reliable software
  • Long-living software
  • Less environmental impact
S12, S18 A sustainable software is a system that manage time and resources used. Easily learnable and acessible, reusable, modifiable and adaptable
  • Easy-to-learn software
  • Accessible software
  • Reusable software
  • Modifiable software
  • Adaptable software
S9, S16 A sustainable software is a software that is long-lasting or long living and energy efficient in order to reduce the negative impact on the environment.
  • Long-living software
  • Energy-efficiency software
  • Less environmental impact
S22, S23 Sustainability refers 'to capacity to endure' while sustainable software\nrefers to the software that can be continuously assessable, documented and maintainable.
  • Long-living software
  • Software continuously assessed
  • Software continuously documented
  • Software continuously maintained
S1 Is a software that avoids non essential deliverables during software development. Also is a project that avoid extensive documentations. Is a software that is polymorphic and fits to meet the long-term goals of project. Is a software that requires less effort for development and consumes less energy.
  • Non-extensive software documentation
  • Essential software deliverable production
  • Polymorphic design
  • Satisfaction of current and long-term software goals
  • Less development effort
  • Less energy consumption
S2 Green and Sustainable Software is software, whose immediate and backhanded negative effects on economy, society, individuals, and environment that come from advancement, organization, and use of the software are negligible and/or which positively affects sustainable improvement. ..., Economic sustainable software is a software that profits. The meaning of profit is the sum a person can spend amid a period and still be doing well toward the end of the period can characterize economic sustainability, as it decays on expending interest, as opposed to capital. ...,
  • Positive effect on sustainable develop-ment
  • Negligible effect on the economy, society, individuals, and environment
  • Profitable software
S8 Green or Sustainable Software is a software that follow software development process where practical application of sustainability aspects takes place. For instance, software that complies with customer software requirements causing less changes during it scope
  • Sustainability-driven software development
S11 Green software is a software product that over its whole life cycle are continuously assessed, documented, and used for further optimization of the software product
  • Software continuously assessed
  • Software continuously documented
  • Software continuously reused
S12 A green software is produced with a responsible use of resources. Also, it aims to mantain its viability during a maintenance period or replacement by a new system.
  • Responsible use of resources
  • Software viability during maintenanceor replacement
S19 In enviromental dimension, a sustainable software promotes energy efficiency, minimizes the environmental impact of the processes it supports, and has a positive impact on social and/or economic sustainability. A sustainable software is a software that follow the guidelines to produce more environment-friendly software. On the other hand, green by software refers to software developed for domains focusing on the preservation of the environment, as well as to software that helps to manage energy-intensive applications. ..., Sustainable software in two ways: as software code that is sustainable, agnostic of purpose; and also as a software purpose directed at achieving sustainability goals. ...,
  • Energy efficiency
  • Minimal environmental impact
  • Positive impact on social sustainability
  • Positive impact on economic sustainability
  • Management of energy-intensive applications
  • Alignment to the sustainability goals
S20 Green software uses computing resources more efficiently while mantaining or increasing overall performance.
  • Software performance
  • Efficient computing resource consumption
S21 Long-living software systems are sustainable if they can be cost-efficiently maintained and evolved over their entire lifecycle. The quality of software architectures determines sustainability to a large extent. A software-intensive system is long-living if it must be operated for more than 15 years. The opposite of a sustainable software system is a longliving system that cannot be adapted to changing requirements and environments due to unjustifiable costs or even technical infeasibility. The architecture of a sustainable system may evolve during its life-cycle, but the fulfillment of customer requirements within timing, budget, and quality constraints must be assured.
  • Long-living software systems
  • Cost-efficient maintenance
  • Continuous software evolution
  • Quality software architecture
  • Continuous evolution of software architecture
Return to index See references