  Fundamental building blocks for managing and understanding software evolution
in the context of model-driven engineering are differencing operators one can
use for model comparisons. Semantic model differencing deals with the
definition and computation of semantic diff operators for model comparison,
operators whose input consists of two models and whose output is a set of diff
witnesses, instances of one model that are not instances of the other. However,
in many cases the complete set of diff witnesses is too large to be efficiently
computed and effectively presented. Moreover, many of the witnesses are very
similar and hence not interesting. Thus, an important challenge of semantic
differencing relates to witness selection and presentation. In this paper we
propose to address this challenge using a summarization technique, based on a
notion of equivalence that partitions the set of diff witnesses. The result of
the computation is a summary set, consisting of a single representative witness
from each equivalence class. We demonstrate our ideas using two concrete diff
operators, for class diagrams and for activity diagrams, where the computation
of the summary set is efficient and does not require the enumeration of all
witnesses.
