Sources of Opacity in Computer Systems: Towards a Comprehensive Taxonomy
This work addresses the challenge of system opacity for requirements engineers and practitioners in domains requiring fairness or accountability, but it is incremental as it synthesizes and extends existing discussions.
The paper tackles the problem of opacity in modern computer systems by proposing a taxonomy of eight sources of opacity across architectural, analytical, and socio-technical categories, with initial suggestions for addressing each to aid practitioners in achieving transparency.
Modern computer systems are ubiquitous in contemporary life yet many of them remain opaque. This poses significant challenges in domains where desiderata such as fairness or accountability are crucial. We suggest that the best strategy for achieving system transparency varies depending on the specific source of opacity prevalent in a given context. Synthesizing and extending existing discussions, we propose a taxonomy consisting of eight sources of opacity that fall into three main categories: architectural, analytical, and socio-technical. For each source, we provide initial suggestions as to how to address the resulting opacity in practice. The taxonomy provides a starting point for requirements engineers and other practitioners to understand contextually prevalent sources of opacity, and to select or develop appropriate strategies for overcoming them.