A Comprehensive Study of Open-Source Printed Circuit Board (PCB) Design Software Bugs

Xu Zhao, He Jiang*, Shikai Guo, Dong Liu, Hui Liu, Chongyang Shi, Xiaochen Li

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

1 Citation (Scopus)

Abstract

Printed circuit board (PCB) design software is an important category of electronic design automation (EDA) tool which aims to simplify PCB design through graphical interaction. As a type of software, PCB design software is also susceptible to software bugs. Bugs in PCB design software may cause huge losses since they could directly affect the correctness of the final PCBs, which are often used in safety-critical fields. Unfortunately, the lack of understanding of bugs in PCB design software impedes the effective handling of these bugs. To this end, we present the first empirical study to analyze the characteristics of PCB design software bugs. Specifically, we collect 349 bugs from two popular open-source PCB design software projects (i.e., KiCAD and LibrePCB) and investigate the root causes, symptoms, relationships between root causes and symptoms, bug-prone components, and bug fix characteristics. Based on the analysis, we get 13 findings. For example, the majority of bugs are caused by implementation logic errors, resulting from lacking/misunderstanding domain knowledge, such as electrical engineering principles, component placement and arrangement, hierarchical layout techniques, and signal transmission considerations. From these findings, we draw the guidelines for PCB design software development and future research in bug detection, localization, and repair.

Original languageEnglish
Article number2005816
JournalIEEE Transactions on Instrumentation and Measurement
Volume73
DOIs
Publication statusPublished - 2024

Keywords

  • Empirical study
  • open-source software
  • printed circuit board (PCB) design software
  • software bugs
  • software reliability

Fingerprint

Dive into the research topics of 'A Comprehensive Study of Open-Source Printed Circuit Board (PCB) Design Software Bugs'. Together they form a unique fingerprint.

Cite this