论文标题
构建对应于恢复概念概念的对象组
Constructing Object Groups Corresponding to Concepts for Recovery of a Summarized Sequence Diagram
论文作者
论文摘要
仅从其源代码中理解面向对象的系统的行为是麻烦的,这是由于其动态性。为了帮助理解,通过执行痕迹的反向工程序列图可视化程序行为是一种有前途的方法。但是,由于痕迹的质量,恢复的图往往会变得非常大,从而导致可伸缩性问题。为了解决这些问题,我们提出了一种对象分组技术,该技术水平总结了反向设计的序列图。我们的技术根据PREE的元模式构建对象组,其中每个组都对应于主题系统领域中的概念。仅在重要组之间可视化相互作用,我们生成了一个汇总的序列图,描述了系统的行为概述。我们的实验表明,我们的技术在降低反向工程序列图的水平大小方面优于最先进的痕量摘要技术。关于对象分组的质量,我们的技术达到了0.670的F-评分,在#lifelines条件下平均召回0.793(即序列图的水平尺寸)<30,而最新技术的技术分别为0.421和0.670。我们技术施加的运行时间平均为129.2%,在文献中相对较小。
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.