  Keeping track of and managing Self-Admitted Technical Debts (SATDs) are
important to maintaining a healthy software project. This requires much time
and effort from human experts to identify the SATDs manually. The current
automated solutions do not have satisfactory precision and recall in
identifying SATDs to fully automate the process. To solve the above problems,
we propose a two-step framework called Jitterbug for identifying SATDs.
Jitterbug first identifies the "easy to find" SATDs automatically with close to
100% precision using a novel pattern recognition technique. Subsequently,
machine learning techniques are applied to assist human experts in manually
identifying the remaining "hard to find" SATDs with reduced human effort. Our
simulation studies on ten software projects show that Jitterbug can identify
SATDs more efficiently (with less human effort) than the prior state-of-the-art
methods.
