2021/08/02 by Ali Shokri, Shokri, Ali, Mehdi Mirakhorli +1
Computer Science · Decision Sciences · #Data Quality and Management #FOS: Computer and information sciences #Natural Language Processing Techniques #Software Engineering (cs.SE) #Topic Modeling #cs.SE
paper · pdf · doi:10.48550/arxiv.2108.01165
arxiv created 2021/08/02 · openalex publication_date 2021/08/02 · arxiv updated 2021/08/04 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28
Reusing code snippets shared by other programmers on Q&A forums (e.g., StackOverflow) is a common practice followed by software developers. However, lack of sufficient information about the fully qualified name (FQN) of identifiers in borrowed code snippets, results in serious compile errors. Programmers either have to manually search for the correct FQN of identifiers which is a tedious and error-prone process, or use tools developed to automatically identify correct FQNs. Despite the efforts made by researchers to automatically identify FQNs in code snippets, the current approaches suffer from low accuracy when it comes to practice. Moreover, while these tools focus on resolving the FQN for an identifier in a code snippet, they leave the challenge of finding the correct third-party library (i.e., dependency) implementing that FQN unresolved. Using an incorrect dependency or incorrect version of a dependency might lead to a semantic error which is not detectable by compilers. Therefore, it can result in serious damages in the run-time. In this paper, we introduce DepRes, a tool that leverages a sketch-based approach to resolve FQNs in java-based code snippets and recommend the correct dependency for each FQN. The source code, documentation, as well as a demo video of DepRes tool is available from its code repository at https://github.com/SoftwareDesignLab/DepRes-Tool.