Software defects have the potential to significantly hinder user productivity, cause delays in scientific and engineering breakthroughs, and even pose threats to human lives in safety-critical situations. As software continues to evolve rapidly, new and unexplored categories of defects are emerging in various software systems. In this talk, I will introduce my efforts in identifying and understanding categories of defects that have not received sufficient attention from the research community. Specifically, I will focus on two types of defects in deep learning applications, i.e., unreliable inferences and deviated behaviors, and one type of defects in compilers named compilation inconsistency modulo debug information. I will introduce the definitions and significance of these defects and then present my automated testing techniques that effectively and efficiently detect them. Lastly, I will share my perspectives on my future work in software testing and debugging.
Biography:
Yongqiang Tian is a Postdoctoral Fellow at the Hong Kong University of Science and Technology. He holds a dual Ph.D. degree from the University of Waterloo and the Hong Kong University of Science and Technology. His research focuses on software testing and debugging, with specific emphasis on deep learning systems and compilers. He has identified over 100 bugs in popular software systems, including GCC and LLVM. His research outcomes have been published in esteemed peer-reviewed journals and conferences, such as TOSEM, ICSE, ASPLOS, FSE, EmSE, and IJCAI. His projects have attracted funding from notable grant agencies and industry partners like Microsoft and Cisco. He has been invited to contribute to several top peer-reviewed venues as a reviewer or program committee member.