[index]

Ariadne Tutorial

For this part of the study, you will again explore the jEdit source code to describe the changes necessary to successfully resolve a change task. For this exploration you will use a software exploration tool called Ariadne. Feel free to ask the investigator any questions during this tutorial.

Overview of Ariadne

Ariadne is a software exploration tool that automatically issues queries on a developer's behalf. As each program elements is examined, Ariadne displays the results from a set of conceptual queries about that element. These conceptual queries include queries such as:

Basic Use

Ariadne is automatic, meaning that it responds to your interactions with the Eclipse environment such as selecting an item from the Outline view. The queries with results are listed in the Dossier view using an Eclipse tree view.

The queries are indicated with the following icon: . Queries in progress are indicated with a small hour-glass: .

The Dossier

The Dossier is made up of five columns:
Description:
A description of the element.
Category:
Queries are grouped by category (discussed below).
#E:
The total number of elements for either the query or the current group.
Clusterings:
The currently selected clustering, or the number of possible clusterings (discussed below).
#G:
The number of groups in the currently selected clustering (discussed below).

Query Categories

Queries are sorted by their category. There are currently four query categories:

declarations:
Queries about relations involving the declarations of elements.
inter-class:
Queries about relations between different classes.
intra-class:
Queries about relations within a class.
hierarchical:
Queries about relations involving type inheritance.

Clusterings

The results of queries may be clustered by their different attributes. For example: the references to a method, which are generally themselves methods, may be clustered into different groups identified by attributes such as their access protection (public, private, package, or default), their containing type, their package, or boolean attributes such as static vs. non-static. Some clusterings may have results belong to multiple groups, such as might arise for a clustering by argument types: the method Arrays.addList(Collection, Object[]) would added to groups for Collection and Object.

The Dossier Toolbar

The Dossier view features four command buttons.

Hands On

Try Ariadne out!

You may wish to try some of the other toolbar buttons.

When you are ready to proceed, please notify the investigator.


last updated: 2006/06/27