The BIC/BFC Mining collects bug fixing commit(BFC). There are three ways to collect bug fixing commit(BFC). 1. Jira 2. Github 3. Commit message. After collecting BFC, BIC (Bug Introducing Commits) is collected by using SZZ algorithm. In this framework, two SZZ algorithm are used.
1. B-SZZ
The B-SZZ algorithm is an algorithm that finds the commit that introduced the bug by executing git blame on the modified line of the commit that fixed the bug. It is a basic szz algorithm.
2. AG-SZZ
The AG-SZZ algorithm uses Annotation Graph to correct blank lines, format changes, comments, and remove outlier BFCs that modify too many files at once. The annotation graph is created from the first commit to the commit that contains the defect correction information, and then the DFS algorithm is applied to the line where the defect is corrected to find the line causing the defect.