Course Proposal: Debugging Fundamentals and Techniques; Virtue Ethics Analysis of Boeing 737 MAX’s Design and Decisions

Author:
Lin, David, School of Engineering and Applied Science, University of Virginia
Advisors:
Laugelli, Benjamin, EN-Engineering and Society, University of Virginia
Vrugtman, Rosanne, EN-Comp Science Dept, University of Virginia
Morrison, Briana, EN-Comp Science Dept, University of Virginia
Abstract:

My technical project and my STS paper are related through best engineering practices, whether it is best coding practices or virtues of an engineer. My technical project seeks to enforce best engineering practices by improving the computer science curriculum at the University of Virginia with additional debugging exposure. I propose a course, or additions to an existing course, to provide novice software developers with more guidance to debugging and learning the best practices to write reliable and maintainable code. My STS paper reinforced the best engineering practices by viewing the ethics of the decisions that led to the Boeing 737 MAX crashes in 2018 and 2019 through the lenses of virtue ethics. By reviewing the consequences of these unvirtuous decisions, future engineers will better understand why the established “best practices” should be followed.
My technical project seeks to enforce best engineering practices by proposing a new course, or addition to an existing course, to the current computer science curriculum. This course aims to provide novice software engineers with debugging exposure and guidance. During this exposure, students will learn how to use debugging tools, how to write bug-proof code, about common bugs and errors, and many more concepts. Since debugging is a transferable skill in software development, providing students with debugging exposure will, I hope, make other computer science courses less frustrating and more enjoyable, thus enabling students to focus on the important, overarching concepts. I believe that this would enable the University to produce better software engineers.
My STS paper explores the decisions that led to the Boeing 737 MAX crashes in 2018 and 2019 through the lenses of virtue ethics. This exploration identifies what engineer practices or virtues were not followed and demonstrates the consequences of not following those virtues. My analysis also draws on Michael Pritchard’s virtues of morally responsible engineers to provide a basis for my argument as to why Boeing’s decisions were unethical and unvirtuous. With virtue ethics and Pritchards virtues of morally responsible engineers, I determined that Boeing's decisions were unethical.
I was inspired to work on my technical project after learning that the Boeing 737 MAX crashes were caused by violations of engineering virtues and best practices. As an aspiring software engineer, I believe that it is important for every software engineer to understand how to locate and solve errors in software and to learn how to write maintainable and error-proof code. As years pass and technology progress, software will touch more lives, and more lives will be dependent on software. It is critical that software engineers follow best coding practices as well as the virtues of morally responsible engineers.

Degree:
BS (Bachelor of Science)
Keywords:
Debug, Debugging Course, Boeing, 737 Max
Notes:

School of Engineering and Applied Science

Bachelor of Science in Computer Science

Technical Advisor: Briana Morrison

STS Advisor: Benjamin Laugelli

Technical Team Members: David Lin

Language:
English
Rights:
All rights reserved (no additional license for public reuse)
Issued Date:
2024/05/07