Ignoring human values in software development may result in breaching those values (e.g., privacy leaks) and introducing biases in software. This may lead to user dissatisfaction as well as reputational damage and financial loss to organizations. Such negative consequences can be prevented if software developers are informed about the value implications of their choices and take initiatives to mitigate value breaches in software. To this end, we have proposed the notion of Value Programming with three main principles: (P1) annotating source code and its related artifacts with respect to human values; (P2) inspecting source code to detect conditions that lead to biases and value breaches in software, i.e., Value Smells; and (P3) making recommendations to mitigate biases and value breaches. To enable value programming in software projects, we contribute a framework that allows for automated annotation of software code based on human values. The proposed framework relies on a catalog of commonly adopted APIs, whose relevance to values is specified, to identify the relevance of the code elements (e.g., classes and functions) to values. The framework lays a solid foundation for inspecting human values in software and making recommendations to overcome biases and value breaches. %We have demonstrated the practicality of our proposed framework in the context of mobile app development.
Dr. Davoud Mougouei is a lecturer in Computing (USQ) with several years of industrial experience and Entrepreneurship. His research focuses on considering human values and emotions in computing. He has lead and contributed to international projects at the intersection of artificial intelligence, data science, psychology, and social sciences. Davoud also has been the recipient of prestigious awards (e.g., from Australian Academy of Science) to carry out multidisciplinary research on the emotional impacts of COVID-19.