Does ACM's code of ethics change ethical decision making in software development?
Reviewed by Dharun Anandayuvaraj / 2022-03-02
Keywords: Professional Ethics, Psychology of Programming, Social Responsibility
Many engineering organizations have ethical guidelines: for example, the ACM has outlined ethical practices for the software engineering community. This paper evaluates the influence of ACM's code of ethics on software engineering decision-making. The authors surveyed software engineers and students with 11 ethical decisions from real incidents, and concluded that the ACM's code of ethics does not have an observable effect on the participants' decision-making.
So if a code of ethics does not produce ethical decision-making, what could? The authors' data allowed them to answer a follow-up question: "Does awareness of news stories influence software-related ethical decisions?" While their sample was very small, they found that participants who were familiar with a story about unethical practice were less likely to say they'd engage in that practice themselves. Between discriminatory hiring practices in tech, mis-use of personal data, and the ways that social media fuel extremism, it seems there will be no shortage of such stories to use as lessons.
McNamara2018 Andrew McNamara, Justin Smith, and Emerson Murphy-Hill: "Does ACM's code of ethics change ethical decision making in software development?". ESEC/FSE 2018: 2018 European Software Engineering Conference and Symposium on the Foundations of Software Engineering. 10.1145/3236024.3264833
Ethical decisions in software development can substantially impact end-users, organizations, and our environment, as is evidenced by recent ethics scandals in the news. Organizations, like the ACM, publish codes of ethics to guide software-related ethical decisions. In fact, the ACM has recently demonstrated renewed interest in its code of ethics and made updates for the first time since 1992. To better understand how the ACM code of ethics changes software-related decisions, we replicated a prior behavioral ethics study with 63 software engineering students and 105 professional software developers, measuring their responses to 11 ethical vignettes. We found that explicitly instructing participants to consider the ACM code of ethics in their decision making had no observed effect when compared with a control group. Our findings suggest a challenge to the research community: if not a code of ethics, what techniques can improve ethical decision making in software engineering?