  Defects, or bugs, often form during software development. Identifying the
root cause of defects is essential to improve code quality, evaluate testing
methods, and support defect prediction. Examples of defect-inducing changes can
be found using the SZZ algorithm to trace the textual history of defect-fixing
changes back to the defect-inducing changes that they fix in line-based code.
The line-based approach of the SZZ method is ineffective for visual code that
represents source code graphically rather than textually. In this paper we
adapt SZZ for visual code and present the "SZZ Visual Code" (SZZ-VC) algorithm,
that finds changes in visual code based on the differences of graphical
elements rather than differences of lines to detect defect-inducing changes. We
validated the algorithm for an industry-made AAA video game and 20 music visual
programming defects across 12 open source projects. Our results show that
SZZ-VC is feasible for detecting defects in visual code for 3 different visual
programming languages.
