A Vision on Intentions in Software Engineering

Jacob Krüger, Yi Li, Chenguang Zhu, Marsha Chechik, Thorsten Berger, Julia Rubin

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

4 Citations (Scopus)
13 Downloads (Pure)

Abstract

Intentions are fundamental in software engineering, but they are typically only implicitly considered through different abstractions, such as requirements, use cases, features, or issues. Specifically, software engineers develop and evolve (i.e., change) a software system based on such abstractions of a stakeholder’s intention—something a stakeholder wants the system to be able to do. Unfortunately, existing abstractions are (inherently) limited when it comes to representing stakeholder intentions and are mostly used for documenting only. So, whether a change in a system fulfills its underlying intention (and only this one) is an essential problem in practice that motivates many research areas (e.g., testing to ensure intended behavior, untangling intentions in commits). We argue that none of the existing abstractions is ideal for capturing intentions and controlling software evolution, which is why intentions are often vague and must be recovered, untangled, or understood in retrospect. In this paper, we reflect on the role of intentions (represented by changes) in software engineering and sketch how improving their management may support developers. Particularly, we argue that continuously managing and controlling intentions as well as their fulfillment has the potential to improve the reasoning about which stakeholder requests have been addressed, avoid misunderstandings, and prevent expensive retrospective analyses. To guide future research for achieving such benefits for researchers and practitioners, we discuss the relationships between different abstractions and intentions, and propose steps towards managing intentions.
Original languageEnglish
Title of host publicationESEC/FSE 2023
Subtitle of host publicationProceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering
EditorsSatish Chandra, Kelly Blincoe, Paolo Tonella
PublisherAssociation for Computing Machinery, Inc
Pages2117-2121
Number of pages5
ISBN (Electronic)979-8-4007-0327-0
DOIs
Publication statusPublished - 30 Nov 2023
Event31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2023 - San Francisco, United States
Duration: 3 Dec 20239 Dec 2023

Conference

Conference31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2023
Abbreviated titleESEC/FSE 2023
Country/TerritoryUnited States
CitySan Francisco
Period3/12/239/12/23

Keywords

  • Software evolution
  • Intention
  • Quality assurance
  • quality assurance
  • intention
  • software evolution

Fingerprint

Dive into the research topics of 'A Vision on Intentions in Software Engineering'. Together they form a unique fingerprint.

Cite this