Article by John Favaro, SWForum project (Trust-IT Services)
In a recent event hosted by SWForum.eu, researchers and practitioners came together to discuss the evolving landscape of software engineering, revealing the challenges and opportunities that lie ahead. This“Way Forward Workshop on Future Challenges in Software Engineering” took place on 27 June 2023 at the Politecnico di Milano. However, the insights gathered are not just event-specific, but resonate with a broader audience, especially those engaged in cloud, edge, and IoT domains. The discussions revolved around four pivotal areas that are shaping the future of the discipline.
- Security in the Computing Continuum. There have been significant efforts to incorporate “security by design” into software development, but challenges likewise remain, including those related to technologies like machine learning.
- Software Engineering and AI. The remarkable worldwide impact of the new Large Language Models is only the latest manifestation of the growing mutual influence that AI and software engineering are exerting on each other.
- Software Engineering for Quantum Computing. Can we identify effective design and programming abstractions to take advantage of the enormous power of quantum computing while keeping the complexity of design and programming activities under control?
- Sustainable Software Engineering. Can the concept of sustainable software engineering contribute to urgent challenges such as the United Nations Sustainable Development Goals?
A pair of major themes emerged, with implications for the way forward in software engineering. The first theme concerned uncertainty about the true applications of the new technologies. The workshop revealed high levels of uncertainty about where the new, cutting-edge technologies will find their true use cases, even after a number of years of research and development. In fields ranging from quantum computing to blockchain and distributed ledger technologies, a challenge going forward will be to teach students in software engineering to be able to seek out and recognize the appropriate applications for the new technologies they are being taught.
The second theme emerged as presenters described a phenomenon of siloed communities in their respective fields, where each was concerned with its own perspective, each speaking about problems in the language of its own community. How will integrated development approaches – “DevSecOps”, “MLOps”, “QuantumOps”, “EcoOps” – be possible when there is no shared base of cross-cutting expertise? This will be a challenge once again for teachers, to ensure that students receive a balanced, broad-based education in software engineering.
One conclusion agreed by all participants was that we have not reached “the end of software engineering” as a core discipline. We will need a full cycle of renewal and adaptation of consolidated practices to help us build the systems accommodating both the current technologies and those yet to come.