Special Issue on Architecting for the Digital Society

Journal of Systems and Software

Guest editors

Stefan Biffl, Technical University of Vienna, Austria (Stefan.Biffl@tuwien.ac.at)

Elena Navarro, University of Castilla-La Mancha, Spain (Elena.Navarro@uclm.es)

Raffaela Mirandola, Politecnico di Milano, Italy (raffaela.mirandola@polimi.it)

Danny Weyns, KU Leuven, Belgium (danny.weyns@kuleuven.be)

Theme

Recent events, in particular the COVID-19 pandemic, have made evident the need of providing our society with digital tools allowing people to meet, interact, and collaborate, considering the different dimensions that distinguish us as human beings. Software-enabled systems must facilitate not only collaborative work, but also humanitarian needs like healthcare of the population, online learning from kindergarten to postgraduate levels, and social networking. They must be developed considering personal needs, the diversity of the population, their privacy needs, and physical safety. Moreover, this new generation of software-enabled systems must be developed to provide human beings with a more sustainable world by being energy-aware as well as providing tools that make spaces, such as industries, cities, and houses smart and sustainable. All these challenges highlight critical considerations on what software-enabled systems to develop in the coming years, and especially on how to design these systems to offer a more sustainable and habitable Digital Society.

The software engineering community is facing these challenges by developing solutions, such as IoT, Cyber Physical Systems, and Cloud/Edge-computing. These solutions facilitate improved healthcare, Smart Cities, and Industry 4.0. Evidence shows that one of the most critical success factors for the design and development of these systems has been raising the level of abstraction by focusing on their software architecture. The architecture of a software system describes its static and dynamic structures in terms of its software components, their inter-connection and properties as well the rationale explaining its design and evolution. A prescriptive architecture can be an artifact devised by an architect to make a decision about what design to choose among alternatives, as well as an artifact dynamically composed by a running system that uses it to make decisions about selecting alternative configurations to deal with runtime change.

This special issue is a step forward to architecting the software systems demanded by a Digital Society. Among others, this special issue will contribute with automation, tools, and techniques that software architects and engineers need in order to ensure that the architectures of these software-enabled systems demanded by our Digital Society will be adaptable, evolvable, verifiable, and meet their functional and quality requirements. Contributions are expected to be presented by showcasing to what extent they pursue such a Digital Society. Moreover, case studies compiling both success and failure experiences will be a contribution of this Special Issue for exploitation in future research.