Abstract
A software system developed by object-oriented programming operates by message exchanges among the objects allocated by the system. To understand such system behavior we need to grasp how the objects are communicating. However, it is difficult to understand the behavior of such system, since it has many elements determined dynamically, and many objects are usually related to one functionality. We propose a method of extracting a sequence diagram from an execution trace of a Java program in order to understand the behavior of the program. Our method compresses a repetition included in the execution trace. The compressed execution trace is shown as a sequence diagram. This paper presents four compression rules designed for object-oriented program. The experiment illustrates how our rules effectively compress the execution trace and extract a sequence diagram from the result.