Litcius/Paper detail

Detecting Code Comment Inconsistencies using LLM and Program Analysis

Yichi Zhang

202417 citationsDOI

Abstract

Code comments are the most important medium for documenting program logic and design. Nevertheless, as modern software undergoes frequent updates and modifications, maintaining the accuracy and relevance of comments becomes a labor-intensive endeavor. Drawing inspiration from the remarkable performance of Large Language Model (LLM) in comprehending software programs, this paper introduces a program analysis based and LLM-driven methodology for identifying inconsistencies in code comments. Our approach capitalizes on LLMs' ability to interpret natural language descriptions within code comments, enabling the extraction of design constraints. Subsequently, we employ program analysis techniques to accurately identify the implementation of these constraints. We instantiate this methodology using GPT 4.0, focusing on three prevalent types of constraints. In the experiment on 13 open-source projects, our approach identified 160 inconsistencies, and 23 of them have been confirmed and fixed by the developers.

Topics & Concepts

Computer scienceCode (set theory)Programming languageSet (abstract data type)Software Engineering ResearchWeb Application Security VulnerabilitiesNatural Language Processing Techniques