Automatically detecting and describing high level actions within methods

  • Sridhara G
  • Pollock L
  • Vijay-Shanker K
  • 100

    Readers

    Mendeley users who have this article in their library.
  • 62

    Citations

    Citations of this article.

Abstract

One approach to easing program comprehension is to reduce the amount of code that a developer has to read. Describing the high level abstract algorithmic actions associated with code fragments using succinct natural language phrases potentially enables a newcomer to focus on fewer and more abstract concepts when trying to understand a given method. Unfortunately, such descriptions are typically missing because it is tedious to create them manually. We present an automatic technique for identifying code fragments that implement high level abstractions of actions and expressing them as a natural language description. Our studies of 1000 Java programs indicate that our heuristics for identifying code fragments implementing high level actions are widely applicable. Judgements of our generated descriptions by 15 experienced Java programmers strongly suggest that indeed they view the fragments that we identify as representing high level actions and our synthesized descriptions accurately express the abstraction.

Get free article suggestions today

Mendeley saves you time finding and organizing research

Sign up here
Already have an account ?Sign in

Find this document

Authors

  • Giriprasad Sridhara

  • Lori Pollock

  • K. Vijay-Shanker

Cite this document

Choose a citation style from the tabs below

Save time finding and organizing research with Mendeley

Sign up for free