Explanations in Everyday Software Systems: Towards a Taxonomy for Explainability Needs
Jakob Droste, Hannah Deters, Martin Obaidi, Kurt Schneider
TL;DR
This paper addresses the opacity of everyday software by proposing an explainability taxonomy and empirically grounding it with a survey of 84 users, yielding 315 explainability needs categorized into five main areas with 11 subcategories. The authors demonstrate that explainability needs extend beyond model-centric system-behavior explanations to cover interaction, domain knowledge, privacy/security, and UI explanations, and show that needs vary by software type. Through rigorous labeling and high interrater agreement, they validate the taxonomy and reveal that interaction explanations are the most prevalent need across many software types, while privacy/security needs are especially prominent in systems software. The work has practical implications for requirements engineering, suggesting that explainability should be integrated early in design with attention to software type and user context, and it outlines plans for practical validation and cross-cultural analyses. Overall, the study broadens the view of explainability in software beyond XAI, providing a robust, data-driven framework to guide the design of explainability features in everyday applications.
Abstract
Modern software systems are becoming increasingly complex and opaque. The integration of explanations within software has shown the potential to address this opacity and can make the system more understandable to end-users. As a result, explainability has gained much traction as a non-functional requirement of complex systems. Understanding what type of system requires what types of explanations is necessary to facilitate the inclusion of explainability in early software design processes. In order to specify explainability requirements, an explainability taxonomy that applies to a variety of different software types is needed. In this paper, we present the results of an online survey with 84 participants. We asked the participants to state their questions and confusions concerning their three most recently used software systems and elicited both explicit and implicit explainability needs from their statements. These needs were coded by three researchers. In total, we identified and classified 315 explainability needs from the survey answers. Drawing from a large pool of explainability needs and our coding procedure, we present two major contributions of this work: 1) a taxonomy for explainability needs in everyday software systems and 2) an overview of how the need for explanations differs between different types of software systems.
