SATDBailiff - Mining and Tracking Self-Admitted Technical Debt


Self-Admitted Technical Debt (SATD) is a metaphorical concept to describe the self-documented addition of technical debt to a software project in the form of source-code comments.SATD can linger in projects and degrade source-code quality, but can also be more visible than unintentionally added or undocumented technical debt. Understanding the implications of adding SATD to a software project is important for developers to understand the quality trade-offs they are intentionally making. However, little has been done to establish a quality and large scale empirical history for SATD in software projects. SATDBailiff is a first attempt at an empirical aggregation tool for collecting SATD instances from Git repositories. The tool mines empirical histories of SATD comments by looking at all versions of source code, and identifying SATD using a previously published Natural Language Processing tool designed specifically for SATD detection.

What is SATDBailiff?

SATDBailiff is a Java tool designed to mine the empirical history of SATD instances from Java project Git repositories on a large scale. This is done with the goal of tracking the additions, removals, and changes to SATD instances that occur during the process of software development. SATDBailiff’s output can be used to better understand the prominence of SATD in software projects at different points over the course of those projects’ lifetimes, while also offering new ways to interpret and visualize those SATD instances. While SATDBailiff accomplishes its objective using a state-of-the-art classification model and a scalable output format, the tool was also designed with modularity in mind, to allow for the implementation of new classification models and output formats.


How to run SATDBailiff through docker?


How to run SATDBailiff without docker?


If you are interested to learn more about the process we followed, please refer to our paper.


Related Paper

Eman Abdullah AlOmar, Ben Christian, Mihal Busho, Ahmed AlKhalid, Ali Ouni, Christian Newman, Mohamed Wiem Mkaouer."SATDBailiff - Mining and Tracking Self-Admitted Technical Debt", the Science of Computer Programming (SCP'2021). [preprint]