Menu

How to use correctly

Carmine Vassallo

CONTEXT

Developers can infer knowledge from the source code itself, either 
software documentation. However, software documentation is very often 
incomplete in practice and source code lacks comments that adequately
describe its behavior. We argue that messages exchanged between 
developers in programming Question and Answer (Q&A) site, e.g
StackOverflow, can be an useful source of information to help 
understanding source code.

NAME

CODES (mining sourCe cOde Descriptions from developErs diScussions),
is an Eclipse plugin to automatically extract method descriptions
of Java Systems from discussions in StackOverflow. CODES consider 
as good descriptions paragraphs describing methods that obtained
the higher score and allows developers to put the chosen description
into the code as a Javadoc comment also becoming de facto an API 
description.

Demo URL: http://youtu.be/Rnc5ni1AAzc

The video of the demo shows CODES in action, illustrating all tool's
features and how the tool is able to identify and visualize good 
descriptions for a particular method. We choose a method and we try
to find its descriptions: as soon as we have found an interested 
description, the tool automatically insert it in Java source code
as Javadoc comment.

INSTALLATION

Put CODES into the Eclipse "dropins" folder of your Eclipse installation.
After a restart of your Eclipse CODES is available and ready for use.

    - ABOUT THE JRE VERSION
      Version 1.7 or later

HOW TO USE CODES CORRECTLY

The Java Project, on which you invoke the tool, it must meet the following conditions:

    1) Insert the classes in package with a well-defined name(no use of "default package")
    2) The name of the Java Project must be equal to corresponding system name (for example, if you want to analyze Lucene system, you have to name the project "Lucene")
    3) Use external libraries unless they are integrated into folders of the Java Project (for example, "lib" folder)

You must respect these conditions too:
    4) Invoke the plugin only when there isn't a "building workspace"
    5) Invoke the plugin only when the selected project doesn't have any errors or compilation problems (all classes have to be been compiled correctly)
    6) If you want to use the online research, you make sure you are connected to the Internet before you start your research and sure the connection can last until the end of the research at least
    7) When you're choosing descriptions, remember that the source code file related to the class must be opened in foreground
    8) You should search descriptions for 4 classes at a time (to avoid excessive latency)
    9) If you want to search descriptions for a class with a lots of methods (above 40), you should select it without other classes (to avoid excessive latency)

Finally you have to:
    10) Avoid to select CLASS search mode (with other modes or alone), because it usually involves a big search time (You should use it in few situations: for example, other search modes haven't generated results)

NOTES

- The plugin has been created on ECLIPSE JUNO.

- For more information send an email to 
  spanichella@gmail.com(alternatively spanichella@unisannio.it) or vassallocarmine@gmail.com

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.