Many software systems fail to meet the needs of the diverse end-users in society and are prone to pose problems, such as accessibility and usability issues. Some of these problems (partially) stem from the failure to consider the characteristics, limitations, and abilities of diverse end-users during software development. We refer to this class of problems as human-centric issues. Despite their importance, there is a limited understanding of the types of human-centric issues encountered by developers. In-depth knowledge of these human-centric issues is needed to design software systems that better meet their diverse end-users' needs. This paper aims to provide insights for the software development and research communities on which human-centric issues are a topic of discussion for developers on GitHub. We conducted an empirical study by extracting and manually analysing 1,691 issue comments from 12 diverse projects, ranging from small to large-scale projects, including projects designed for challenged end-users, e.g., visually impaired and dyslexic users. Our analysis shows that eight categories of human-centric issues are discussed by developers. These include Inclusiveness, Privacy & Security, Compatibility, Location & Language, Preference, Satisfaction, Emotional Aspects, and Accessibility. Guided by our findings, we highlight some implications and possible future paths to further understand and incorporate human-centric issues in software development to be able to design software that meets the needs of diverse end users in society.
翻译:许多软件系统未能满足社会不同终端用户的需要,而且容易造成问题,如无障碍和易用问题。其中一些问题(部分)源于在软件开发过程中未能考虑不同终端用户的特点、限制和能力。我们将这类问题称为以人为中心的问题。尽管这些问题很重要,但对开发者遇到的以人为中心的问题类型了解有限。设计更能满足其不同终端用户需求的软件系统需要对这些以人为中心的问题的深入了解。本文件旨在为软件开发和研究界提供见解,而以人为中心的问题是GitHub开发者讨论的主题。我们进行了一项实证研究,通过提取和手动分析1,691个不同项目(从小型到大型项目,包括为有挑战的终端用户设计的项目,例如,视障和易读性用户。我们的分析表明,开发者讨论了八类以人为中心的问题。这八类问题包括包容性、隐私和安全性、兼容性、位置和语言问题,是开发者讨论的主题。我们通过提取和手动分析1,分析1,691问题,从小到大型项目,包括视障者和易懂的用户,以及可能理解的方式问题。