Course combines software design, ethics, and real-world clients
Most people don’t associate computer software with issues of discrimination or physical safety.
But the way software is developed — if it includes a bias in the algorithm used for making flight reservations, for instance, or causes programming errors in radiation therapy machines — can produce serious ethical issues.
How can software designers know their programs will be used in the way they intend? And how can they reduce the “digital divide,” or the gap in access to computing technology between various populations?
These are the questions that students in St. Olaf College Professor of Psychology Chuck Huff’s Ethical Issues in Software Design course spent the semester examining.
In this project-based course, students act as computing consultants for real-world clients. The programs they analyze include everything from key-card access systems to software for students with disabilities.
Using what they learn in the course, students delve into concepts such as ethical dissent, intellectual property, and free speech. The goal, Huff says, is to teach students to think about the ethical issues associated with software while they design it.
“The course content spans multiple fields,” says Nick Nooney ‘16. “ It’s a mix of legal issues, ethical issues, and technology that is very practical and informative.”
At the end of the course, they present their clients with an ethical analysis report that also includes their suggested solutions and a feasibility analysis of those solutions.
“I don’t have to convince the students in this class that ethics are important; they see it through the work they do,” says Huff. “They see it in real software other people are designing and using. They see real people who have been hurt or whose privacy has been compromised.”
One example that Huff uses to illustrate this is Therac 25, a machine used for radiation therapy that administered several fatal overdoses due to improper design. The machine was not properly fixed until Fritz Hager, one of the medical physicists using the machine, blew the whistle by informing other users — and federal regulators — of the system.
As part of a research project, Huff interviewed Hager about the case. Nooney and Xandra Best ‘15 worked with Huff this semester to publish the interview as part of an argument for proper software error reporting.
“We’re looking at recent software error reporting literature to understand how the technology has changed since this case, and we are arguing for the need for human intervention in software error reporting systems,” says Nooney.
Best says Huff’s course and this research project taught her an important lesson.
“Several rounds of thorough user testing, including a wide variety of users in accurate field conditions, is crucial to designing a usable, ethical product,” she says.
Huff studied computer science and moral psychology separately, but didn’t think to put them together until he was on a National Science Foundation panel that helped create a curriculum in computer ethics that is now being used nationwide. He has even been described as “one of the founding fathers of the field.”
“St. Olaf students care about the ethical aspect of their work,” says Huff. “It’s one of the reasons I like teaching here.”