Modern software-based systems operate under rapidly changing conditions and face ever-increasing uncertainty. In response, systems are increasingly adaptive and reliant on artificial-intelligence methods. In addition to the ubiquity of software with respect to users and application areas (e.g., transportation, smart grids, medicine, etc.), these high-impact software systems necessarily draw from many disciplines for foundational principles, domain expertise, and workflows. Recent progress with lowering the barrier to entry for coding has led to a broader community of developers, who are not necessarily software engineers. As such, the field of software engineering needs to adapt accordingly and offer new methods to systematically develop high-quality software systems by a broad range of experts and non-experts. This paper looks at these new challenges and proposes to address them through the lens of Abstraction. Abstraction is already used across many disciplines involved in software development – from the time-honored classical deductive reasoning and formal modeling to the inductive reasoning employed by modern data science. The software engineering of the future requires Abstraction Engineering – a systematic approach to abstraction across the inductive and deductive spaces.

We invite you to join the discussion on building a new discipline of abstraction engineering: with new silo-breaking research questions and research directions to explore!

Read the paper here.


You may also be interested in the articles and events below, including the references collected at the bottom.

References

Books

1991

  1. Software engineering with abstractions
    Valdis Berzins, and Lucia Luqi
    Jan 1991

Journal Articles

2026

  1. An Abstraction Is Worth a Thousand Vibes
    Jan-Philipp Steghöfer, and Markus Borg
    IEEE Software 43(1), Jan 2026

2025

  1. Abstractions
    Peter J. Denning
    Communications of the ACM 68(3), Mar 2025

2023

  1. Modeling 4.0: Conceptual Modeling in a Digital Era
    Araz Jabbari, and Michael Rosemann
    Communications of the Association for Information Systems 53(1), 2023

2021

  1. Abstraction in Computer Science Education: An Overview
    Claudio Mirolo, Cruz Izu, Violetta Lonati, and 1 more author
    Informatics in Education 20(4), Dec 2021

2015

  1. Understanding software through linguistic abstraction
    Eelco Visser
    Science of Computer Programming 97, 2015
    Special Issue on New Ideas and Emerging Results in Understanding Software

2007

  1. Is abstraction the key to computing?
    Jeff Kramer
    Communications of the ACM 50(4), Apr 2007

Conference and Workshop Papers

2008

  1. Concrete Examples of Abstraction As Manifested in Students’ Transformative Experiences
    Jan Erik Moström, Jonas Boustedt, Anna Eckerdal, and 4 more authors
    In Proc. 4th Int’l Workshop on Computing Education Research, 2008
  2. The role of abstraction in software engineering
    Orit Hazzan, and Jeff Kramer
    In Companion of the 13th international conference on Software engineering - ICSE Companion ’08, 2008
  3. A hierarchical abstraction model for software engineering
    Yingxu Wang
    In Proceedings of the 2nd international workshop on The role of abstraction in software engineering, May 2008

1991

  1. Towards a new model of abstraction in software engineering
    G. Kiczales
    In Proceedings 1991 International Workshop on Object Orientation in Operating Systems, 1991

Miscellaneous

2024

  1. Abstraction Engineering
    Nelly Bencomo, Jordi Cabot, Marsha Chechik, and 4 more authors
    2024