Aspect Interaction Detection Analysis
The AIDA tool, developed by Nathan Weston from Lancaster University,
detects how aspects interact through changes they cause to the data
flow of a system. For example, one aspect may update a
variable x while another aspect (that was probably introduced
earlier) reads this variable. The earlier aspect which assumed
that x was updated by the original program is now reading
values that were updated by the new aspect. This interaction may lead
to unexpected (and often undesired) modifications to the behavior of
the program. The AIDA tool can analyze the code before it runs and
locate such interactions.
User Guide
Creating an AIDA project
- Go to the menu bar and select File → New → Project.

- Under the CAPE category choose "AIDA". Press
"Next".

- In the AIDA wizard dialog, enter a project name. Press
"Finish".

- Add files to the Input folder in the new AIDA project:
Select the Input folder and from its context menu select "Create Linked
Resources".

- From the linked resources dialog, select all the files that
should be included in the AIDA project (only .java and .aj files).

- If the Eclipse Project mode is set
to Build Automatically then after you add the files to the Input
folder, AIDA will automatically perform the analysis. Otherwise you
will have to invoke the Build command manually. In any case you will
see the progress of the analysis in the AIDA console and the created
dot file will be in the Output Folder. You can use
Graphviz to visualize the
dot graph.

Happy analysis!