recovering and using use-case-diagram-to-source-code traceability links
Use case diagrams (UCDs) are widely used to describe requirements and desired functionality of software products. However, UCDs are loosely linked to source code, and maintaining traces between the source code and elements of UCDs is a manual, tedious, and laborious process. These traces help programmers to understand code that they maintain and evolve. Our contribution is twofold. First, we offer a novel approach for automating part of the process of recovering traceability links (TLs) between types and variables in Java programs and elements of UCDs. We evaluate our prototype implementation on open-source and commercial software, and the results suggest that our approach can recover many TLs with a high degree of automation and precision. Second, we developed an Eclipse plugin that enables programmers to trace program types and variables to elements of UCDs and vice versa using recovered TLs. We conducted a case study that shows that programmers could maintain and evolve software more efficiently with our plugin. These results demonstrate that modest programmer effort to create TLs together with automated program mining and analysis is a promising approach than can increase program understanding while reducing programmer burden.
traceability links use case diagram machine learning program analysis leanart