Sustainability has emerged as a broad concern for society. Many engineering disciplines have been grappling with challenges in how we sustain technical, social and ecological systems. In the software engineering community, for example, maintainability has been a concern for a long time. But too often, these issues are treated in isolation from one another. Misperceptions among practitioners and research communities persist, rooted in a lack of coherent understanding of sustainability, and how it relates to software systems research and practice. This article presents a cross-disciplinary initiative to create a common ground and a point of reference for the global community of research and practice in software and sustainability, to be used for effectively communicating key issues, goals, values and principles of sustainability design for software-intensive systems.The centrepiece of this effort is the Karlskrona Manifesto for Sustainability Design, a vehicle for a much needed conversation about sustainability within and beyond the software community, and an articulation of the fundamental principles underpinning design choices that affect sustainability. We describe the motivation for developing this manifesto, including some considerations of the genre of the manifesto as well as the dynamics of its creation. We illustrate the collaborative reflective writing process and present the current edition of the manifesto itself. We assess immediate implications and applications of the articulated principles, compare these to current practice, and suggest future steps.
Since the 1950s, artificial intelligence (AI) has been a recurring topic in research. However, this field has only recently gained significant momentum because of the advances in technology and algorithms, along with new AI techniques such as machine learning methods for structured data, modern deep learning, and natural language processing for unstructured data. Although companies are eager to join the fray of this new AI trend and take advantage of its potential benefits, it is unclear what implications AI will have on society now and in the long term. Using the five dimensions of sustainability to structure the analysis, we explore the impacts of AI on several domains. We find that there is a significant impact on all five dimensions, with positive and negative impacts, and that value, collaboration, sharing responsibilities; ethics will play a vital role in any future sustainable development of AI in society. Our exploration provides a foundation for in-depth discussions and future research collaborations.
Software's critical role in society demands a paradigm shift in the software engineering mind-set. This shift's focus begins in requirements engineering. This article is part of a special issue on the Future of Software Engineering.