Amida: a Sequence Diagram Extraction Toolkit for Java
OGAN, a tool presented in ICPC 2009, is available here.
OGAN allows you to focus on interactions between
a pair of classes rather than the whole execution trace.
What is Amida?
Amida is a toolkit to record an execution trace of a Java program
and visualize the trace as a sequence diagram.
Amida comprises a profiler that records an execution trace of a Java program
and a viewer that visualizes the trace as a sequence diagram.
The Amida Viewer implements algorithms to detect loops and recursive calls
in an execution trace.
The viewer also supports our novel approach to efficiently detecting phases;
the algorithm precisely divides a long execution trace into
a series of smaller diagrams corresponding
to features (or tasks to achieve a feature).
Amida User's Guide describes the details of the tool.
Download Amida (November 19, 2008)
The distribution archive includes Amida binary, User's Guide and a small example trace.
Version October 2008
Amida August 2008 Version
IWPSE 2005 Version
- [PCODA2008] Yui Watanabe, Takashi Ishio, Yoshiro Ito, Katsuro Inoue:
Visualizing an Execution Trace as a Compact Sequence Diagram Using Dominance Algorithms.
Proceedings of the 4th International Workshop on
Program Comprehension through Dynamic Analysis (PCODA 2008),
October 16, 2008, Antwerp, Belgium.
[WODA2008] Yui Watanabe, Takashi Ishio, Katsuro Inoue:
Feature-level Phase Detection for Execution Trace Using Object Cache.
Proceedings of the Sixth International Workshop on Dynamic Analysis (WODA 2008),
pp.8-14, July 21, 2008, Seattle, WA, USA.
[ICSE2008DEMO] Takashi Ishio, Yui Watanabe, Katsuro Inoue:
AMIDA: a Sequence Diagram Extraction Toolkit Supporting Automatic Phase Detection.
Proceedings of the 30th International Conference on Software Engineering (ICSE 2008),
pp.969-970, May 14-16, 2008, Leipzig, Germany. (Informal Research Demonstration)
Koji Taniguchi, Takashi Ishio, Toshihiro Kamiya, Shinji Kusumoto, Katsuro Inoue:
Extracting Sequence Diagram from Execution Trace of Java Program.
Proceedings of the 8th International Workshop on Principles of Software Evolution (IWPSE 2005),
pp.148-151, September 5-6, 2005, Lisbon, Portugal.
The following people are active members of the project.
- Yui Watanabe is a doctoral student who is developing a phase detection method.
- Satoshi Munakata is a master student who is developing a light-weight profiler using byte-code transformation.
- Takashi Ishio maintains this website, and develops a new GUI for Amida.
- Katsuro Inoue is the supervisor of the research team.
The following people contributed the project.
- Keigo Ryu replaced Perl script of phase detection with a new Java implementation.
- Yoshiro Ito implemented a dominance analysis approach
to filtering out local objects from sequence diagrams.
- Koji Taniguchi is the developer who created the original version of Amida.
- Shinji Kusumoto and Toshihiro Kamiya gave us valuable
comments and helpful criticism to conduct the research.
- Mr. Ken-ichi Maeda and Mr. Shigeo Hanabusa
of Hitachi Systems & Services, Ltd. are acknowledged for supporting our experiment.
Please contact Takashi Ishio if you have any questions about Amida.
ishio at ist.osaka-u.ac.jp (please replace "at" with "@".)
Software Engineering Laboratory
Graduate School of Information Science and Technology, Osaka University