Improving Software Ethics with Empirically Validated Software Practices
Advances in modern technology have provided software teams with the means for building software that makes smarter, more objective decisions and automating more tasks. Because of these advances, software is increasingly being used to augment, and sometimes replace, human intervention in our day to day lives with the goal of improving quality of life. While machine learning allows software to automate more decisions, and has the potential to decrease bias in decision-making, it also increases the likelihood that software will behave in unexpected and undesired ways that can have a negative impact on quality of life. This potential for negative societal impact presents an ethical challenge regarding how software should work and, more importantly, the role we play in minimizing the negative impact these software systems can have. Now, more than ever, it is important for us to understand the tools and processes software teams use to build software so that we can ensure they are equipped to effectively build ethically-sound, high quality software. My research explores how we can help software teams efficiently and effectively produce high quality, ethically-sound software by evaluating and improving the tools and processes they use in their day to day work and development environments.
Bio: Dr. Johnson is a Postdoctoral Fellow in the College of Information and Computer Sciences at the University of Massachusetts Amherst. She received her Ph.D. in Computer Science from North Carolina State University (2017), after getting her B.A. in Computer Science from the College of Charleston (2011). Her research focuses on improving developer productivity and satisfaction through evaluating and improving the tools and processes they use to develop software. Her current focus is on software fairness and ethical software engineering practices. Her research is interdisciplinary, cross-cutting with research in software engineering, human-computer interaction, and machine learning.