TopicXP: Exploring topics in source code using Latent Dirichlet Allocation

  • Authors:
  • Trevor Savage;Bogdan Dit;Malcom Gethers;Denys Poshyvanyk

  • Affiliations:
  • Department of Computer Science, The College of William and Mary, Williamsburg, Virginia, USA;Department of Computer Science, The College of William and Mary, Williamsburg, Virginia, USA;Department of Computer Science, The College of William and Mary, Williamsburg, Virginia, USA;Department of Computer Science, The College of William and Mary, Williamsburg, Virginia, USA

  • Venue:
  • ICSM '10 Proceedings of the 2010 IEEE International Conference on Software Maintenance
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Acquiring general understanding of large software systems and components from which they are built can be a time consuming task, but having such an understanding is an important prerequisite to adding features or fixing bugs. In this paper we propose the tool, namely TopicXP, to support developers during such software maintenance tasks by extracting and analyzing unstructured information in source code identifier names and comments using Latent Dirichlet Allocation. TopicXP enables developers to gain an overview of a software system under analysis by extracting and visualizing natural language topics, which generally correspond to concepts or features implemented in software classes. TopicXP is implemented as an open-source Eclipse plug-in, which proposes interactive visualization of topics along with structural dependencies between underlying classes implementing these topics. The paper also presents the results of a preliminary user study aimed at evaluating TopicXP.