Managing Ethical Requirements Elicitation - Siakas, Errikos; Rahanu, Harjinder; Loveday, Joanna; Georgiadou, Elli; Siakas, Kerstin; Ross, Margaret (Springer, 2023)
The process of Requirements Elicitation (RE) demands from a software development team the need to communicate and engage with a variety of stakeholders, for numerous purposes regarding many aspects of the project. The aim is to translate the needs of the “customer” into accurate and actionable requirements. In this initial step of the software life cycle process several ethical challenges are invoked, which, if left unresolved, may lead to unintended consequences. Computer Ethics focuses on the questions of right and wrong that arise from the development and deployment of computers. Thus, it urges that the ethical and social impact of computers must be analysed. The purpose of normative ethics is to scrutinise standards about the rightness and wrongness of actions, the goal being the identification of the true human good. A rational appeal can be made to normative ethical principles to arrive at a judicious, ethically justifiable judgement. In software engineering, the Software Process Improvement (SPI) Manifesto was developed by groups of experts in the field, aimed to improve the software produced, through improving the process, the attitudes of software engineers, and the organisational culture and practices. In this position and constructive design research paper, we argue that software developers, in accordance with the SPI Manifesto aim of improving the software produced, address the ethical challenges invoked in the Requirements Elicitation process. The steps taken in this paper are: First we report on the findings of a broad literature review of related research, which refers to the current challenges in RE. Second, we source from ethical theory, generic Deontological and Teleological ethical principles that can serve as normative guidelines for addressing the challenges identified in the initial step. Third, we prescribe a set of ethical rights and duties that must be exercised and fulfilled by software developers for them to exhibit ethical behaviour. Each of these suggested actions are substantiated via an appeal to one, or several normative guidelines, identified in the second step. By identifying and recommending a set of defensible ethical obligations that must be fulfilled in the RE process, software developers can fulfil their ethical duties and thus reduce the number of unintended consequences that plague Requirements Elicitation. Ultimately RE must be underpinned with ethical consideration.
Keywords: Computer Ethics; Ethical Theory; Requirements Elicitation; SPI Manifesto