[Overview] [Download and Installation] [Documentation] [Contact] [Martin Robillard]

FEAT     An Eclipse Plug-in for Locating, Describing, and Analyzing Concerns in Source Code


[1 January 2006]If you are interested in FEAT you may also want to look at ConcernMapper


Developers working on existing programs repeatedly have to address concerns (features, aspects...) that are not well modularized in the source code comprising a system. In such cases, a developer has to first locate the implementation of the concern in the source code comprising the system, and then document the concern sufficiently to be able to understand it and perform the actual change task. Existing approaches available to help software developers locate and manage scattered concerns use a representation based on lines of source code. Such a line-of-code representation makes it difficult to understand the concern and limits the analysis possibilities.

The FEAT tool allows you to locate, describe, and analyze the code implementing a concern in a Java system. Using FEAT, you can rapidly locate and analyze concerns scattered in an existing code base. By visually navigating structural program dependencies through the tool's graphical interface, you can locate the code implementing a concern, and store the result as an abstract representation consisting of building blocks that are easy to manipulate and query. The representation of a concern supported by FEAT can be used to investigate the relationships between the captured concern and the base code, and between the different parts of the concern itself. Finally, this representation can be used to keep track of the actual source code implementing the concern.

The novelty of FEAT is to capture concerns using an abstract representation that can be mapped back to source code, instead of working directly at the level of program text. The abstract representation can help you manage the code in a concern.

The FEAT Eclipse Plugin was developed by Martin Robillard as a part of his Ph.D. project, under the supervision of Gail Murphy, in the Software Practices Lab, Department of Computer Science, University of British Columbia, Canada. Other contributors to the FEAT Eclipse Plugin include Gail Murphy and Jason Xu.

A Concern Representation in FEAT

Download and Installation

Requirements: Java 1.4, Eclipse 3.0 or higher.

FEAT is distributed freely through a University of British Columbia end user agreement. To install FEAT:

Download and unzip FEAT 2.5.4 in the plugin directory of your Eclipse installation.


Known Bugs

Bug currently known for Release 2.5.4.

110The analyzer experiences problems detecting classes in the default package. Classes in the default package do not appear in a concern graph, and instead appear as inconsistent.


Please address questions, comments, and bug reports to Martin Robillard.