SEMar 10, 2020

Engineering Human Values in Software through Value Programming

arXiv:2003.04477v14 citations
AI Analysis

This addresses the problem of value breaches and biases in software for developers and users, but it is incremental as it builds on existing software engineering practices.

The paper tackles the problem of human values being ignored in software development, which can disadvantage users through biases and value breaches, by proposing Value Programming with three principles to annotate, inspect, and mitigate these issues in code.

Ignoring human values in software development may disadvantage users by breaching their values and introducing biases in software. This can be mitigated by informing developers about the value implications of their choices and taking initiatives to account for human values in software. To this end, we propose the notion of Value Programming with three principles: (P1) annotating source code and related artifacts with respect to values; (P2) inspecting source code to detect conditions that lead to biases and value breaches in software, i.e., (P3) making recommendations to mitigate biases and value breaches. To facilitate value programming, we propose a framework that allows for automated annotation of software code with respect to human values. The proposed framework lays a solid foundation for inspecting human values in code and making recommendations to overcome biases and value breaches in software.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes