Code of ethics doesn’t influence decisions of software developers

Graphic art: binary code

Image credit: Brett Jordan. Shared under a Creative Commons license. Click image for more information.

The world’s largest computing society, the Association for Computing Machinery (ACM), updated its code of ethics in July 2018 – but new research from North Carolina State University shows that the code of ethics does not appear to affect the decisions made by software developers.

“We applauded the decision to update the ACM code of ethics, but wanted to know whether it would actually make a difference,” says Emerson Murphy-Hill, co-author of a paper on the work and an adjunct associate professor of computer science at NC State.

“This issue is timely, given the tech-related ethics scandals in the news in recent years, such as when Volkwagen manipulated its technology that monitored vehicle emissions. And developers will continue to face work-related challenges that touch on ethical issues, such as the appropriate use of artificial intelligence.”

For the study, researchers developed 11 written scenarios involving ethical challenges, most of which were drawn from real-life ethical questions posted by users on the website Stack Overflow. The study included 105 U.S. software developers with five or more years of experience and 63 software engineering graduate students at a university. Half of the study participants were shown a copy of the ACM code of ethics, the other half were simply told that ethics are important as part of an introductory overview of the study. All study participants were then asked to read each scenario and state how they would respond to the scenario.

“There was no significant difference in the results – having people review the code of ethics beforehand did not appear to influence their responses,” Murphy-Hill says.

“While we believe maintaining an up-to-date, robust code of ethics is an admirable thing for ACM to do, we were unable to find any effect of the code of ethics on developer decision making. The question now becomes: What can the computing profession do to promote ethical behavior?”

The paper, “Does ACM’s Code of Ethics Change Ethical Decision Making in Software Development?,” will be presented Nov. 7 at the ACM Symposium on the Foundations of Software Engineering, being held in Lake Buena Vista, Fla. The paper was co-authored by Justin Smith, a Ph.D. student at NC State, and Andrew McNamara, a former graduate student at NC State.

-shipman-

Note to Editors: The study abstract follows.

“Does ACM’s Code of Ethics Change Ethical Decision Making in Software Development?”

Authors: Andrew McNamara, Justin Smith and Emerson Murphy-Hill, North Carolina State University

Presented: ACM Symposium on the Foundations of Software Engineering, Nov. 4-9, Lake Buena Vista, Fla.

Abstract: 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?

This post was originally published in NC State News.