Amida: A Sequence Diagram Extraction Toolkit for Java

Amida is a toolkit to record an execution trace of a Java program and visualize the trace as a sequence diagram.

This document describes how to visualize dynamic behavior of a Java program using Amida.

Note: This tool is free to use for academic research. We would like to distribute Amida as an open source software but its license is not determined yet.

Table of Contents


Amida requires the following software as a runtime environment.

How to use Amida

How to execute Amida: If you already have JRE, GNU Trove and SWT library, you may execute Amida as follows.

(Windows) java -classpath swt.jar;trove-2.0.3.jar;amida.jar amida.Amida
(Other)   java -classpath swt.jar:trove-2.0.3.jar:amida.jar amida.Amida

Data Files for Amida: An important file is a .log file that contains an execution trace. Phase detection analyzes a .log file and stores the result into several files such as .log.amd.

To create a .log file, you have to record an execution trace of a Java program. You may apply phase detection to .log file or visualize it as sequence diagrams.

A .log file is a text file with some structural elements. If you would like to know the detail of the format, please contact us.

Features of Amida: Please follows the links for three topics: recording an execution trace, applying phase detection and visualizing a phase or a trace.


Amida has a configuration file named A configuration file is not necessary to use the current version of Amida, but you can configure Amida for your environment.


This value specifies a default Java command in Amida Profile Launcher window.

amida.log.dir This value specifies a home directory for a file open dialog to load a log file. . (current directory)
amida.log.default A default log file name used in phase detection window. test.log
amida.phase.count.summary The number of method calls shown in a phase summary window. 5
amida.phase.count.tooltip The number of method calls shown in a phase summary tooltip text. 3
amida.phase.param.PARAM.KIND The default values for phase detection parameters. PARAM is one of "cache", "window", "threshold" and "scope". KIND is one of "from", "to" and "step". vary

Contact Information

Amida website is available at

Takashi Ishio
ishio at (please replace "at" with "@".)
Software Engineering Laboratory
Graduate School of Information Science and Technology, Osaka University