More about HKUST
Utilizing Code Change Information for Better Automated Debugging
PhD Thesis Proposal Defence
Title: "Utilizing Code Change Information for Better Automated Debugging"
by
Mr. Ming WEN
Abstract:
Software debugging is always time-consuming and labor-intensive. It has
been estimated that the debugging process costs nearly 50% of developers'
time and efforts.The excessively high cost in debugging motivates the
researches on debugging software automatically.Over the years, various
techniques have been proposed to help developers detect bugs, locate bugs,
and repair programs automatically.Although the effectiveness of these
techniques have been demonstrated, their usefulness is still compromised
in practice. For instance, fault localization techniques are still
suffering from the problem of lacking contextual information, and
automated program repair techniques are suffering from the problem of
search space explosion.
Morden software systems are commonly maintained by version control systems
(VCS), and we observe that the changes documented by VCS can facilitate
the design of better automated debugging techniques. It is because that
those changes contain rich information, including bug-inducing changes,
those changes that introduced bugs, and bug-fixing changes, those changes
that repaired bugs. We observe that developers frequently look for the
information of bug-inducing changes during their debugging practice and
such information is critical for them to understand and locate a bug's
root cause. Besides, we also observe that bug-fixing changes contain rich
knowledge about how developers repair real bugs in practice, from which
substantial patterns can be learned to repair new bugs automatically.
Motivated by these observations, in this thesis, we propose first a
technique, Locus, which leverages information-retrieval techniques to
locate bug-inducing changes automatically based on bug reports. Second, we
propose HSFL, which constructs historical spectra along the change
histories starting from bug-inducing changes, to locate bugs at the
statement level. We then propose CapGen, which is a context-aware patch
generation system for automated program repair. Specifically, the mutation
operators are designed and prioritized considering the context information
guided by substantial real bug-fixing changes. Finally, we propose MutAPI,
an automated approach to discover library API misuses. Specifically, it
actively makes changes to introduce bugs of API misuses, and then
leverages mutation analysis to validate whether these changes indeed
introduce bugs. Our evaluation results show that all our proposed
techniques outperform existing state-of-the-art approaches.
Date: Monday, 22 October 2018
Time: 4:00pm - 6:00pm
Venue: Room 4472
(lifts 25/26)
Committee Members: Prof. Shing-Chi Cheung (Supervisor)
Dr. Tao Wang (Chairperson)
Dr. Xiaojuan Ma
Dr. Wei Wang
**** ALL are Welcome ****