Identifying Self-Admitted Technical Debts with Jitterbug: A Two-step Approach
Keeping track of and managing the self-admitted technical debts (SATDs) is important to maintaining a healthy software project. This requires much time and effort from human experts to identify these SATDs manually. Currently, automated solutions do not have high enough 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 by first finding the "easy to find" SATDs automatically with close to 100 pattern recognition technique, then applying machine learning techniques to assist human experts in manually identifying the rest "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.
READ FULL TEXT