  Comprehending the behavior of an object-oriented system solely from its
source code is troublesome, owing to its dynamism. To aid comprehension,
visualizing program behavior through reverse-engineered sequence diagrams from
execution traces is a promising approach. However, because of the massiveness
of traces, recovered diagrams tend to become very large, causing scalability
issues. To address the issues, we propose an object grouping technique that
horizontally summarizes a reverse-engineered sequence diagram. Our technique
constructs object groups based on Pree's meta patterns, in which each group
corresponds to a concept in the domain of a subject system. Visualizing
interactions only among important groups, we generate a summarized sequence
diagram depicting a behavioral overview of the system. Our experiment showed
that our technique outperformed the state-of-the-art trace summarization
technique in terms of reducing the horizontal size of reverse-engineered
sequence diagrams. Regarding the quality of object grouping, our technique
achieved an F-score of 0.670 and a Recall of 0.793 on average under the
condition of #lifelines (i.e., the horizontal size of a sequence diagram) < 30,
whereas those of the state-of-the-art technique were 0.421 and 0.670,
respectively. The runtime overhead imposed by our technique was 129.2% on
average, which is relatively smaller in the literature.
