TY - GEN
T1 - A Study on Software Bugs in Unmanned Aircraft Systems
AU - Taylor, Max
AU - Boubin, Jayson
AU - Chen, Haicheng
AU - Stewart, Christopher
AU - Qin, Feng
N1 - Publisher Copyright:
© 2021 IEEE.
PY - 2021/6/15
Y1 - 2021/6/15
N2 - Control firmware in unmanned aircraft systems (UAS) manage the subsystems for in-flight dynamics, navigation and aircraft sensors. Computer systems on-board the aircraft and on gateway machines can now support rich features in the control firmware, such as GPS-driven waypoint missions and autonomy. However, the source code behind control firmware can harbor software bugs whose symptoms are detectable only during flight. Often, software bugs in UAS have serious symptoms that lead to dangerous situations. We studied previously reported bugs in the open-source repositories of ArduPilot and PX4, two widely used control firmware for UAS, and characterized their root causes, severity and position in the firmware architecture. Even though both platforms have employed rigorous software engineering practices, bugs were common and often had severe symptoms (e.g., crashes.) In particular, bugs associated with mishandling aircraft sensor readings were the leading cause for bug-induced crashes. Finally, we used simulation to study the symptoms of sensor bugs and found that source code repositories under reported their frequency and impact. Our study motivates multiple research directions on software reliability in UAS firmware.
AB - Control firmware in unmanned aircraft systems (UAS) manage the subsystems for in-flight dynamics, navigation and aircraft sensors. Computer systems on-board the aircraft and on gateway machines can now support rich features in the control firmware, such as GPS-driven waypoint missions and autonomy. However, the source code behind control firmware can harbor software bugs whose symptoms are detectable only during flight. Often, software bugs in UAS have serious symptoms that lead to dangerous situations. We studied previously reported bugs in the open-source repositories of ArduPilot and PX4, two widely used control firmware for UAS, and characterized their root causes, severity and position in the firmware architecture. Even though both platforms have employed rigorous software engineering practices, bugs were common and often had severe symptoms (e.g., crashes.) In particular, bugs associated with mishandling aircraft sensor readings were the leading cause for bug-induced crashes. Finally, we used simulation to study the symptoms of sensor bugs and found that source code repositories under reported their frequency and impact. Our study motivates multiple research directions on software reliability in UAS firmware.
UR - https://www.scopus.com/pages/publications/85111469903
U2 - 10.1109/ICUAS51884.2021.9476844
DO - 10.1109/ICUAS51884.2021.9476844
M3 - Conference contribution
AN - SCOPUS:85111469903
T3 - 2021 International Conference on Unmanned Aircraft Systems, ICUAS 2021
SP - 1439
EP - 1448
BT - 2021 International Conference on Unmanned Aircraft Systems, ICUAS 2021
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 2021 International Conference on Unmanned Aircraft Systems, ICUAS 2021
Y2 - 15 June 2021 through 18 June 2021
ER -