2024-03-29T21:39:12Zhttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_oaipmhoai:ipsj.ixsq.nii.ac.jp:002106642022-10-21T05:24:51Z00581:10433:10437
Constructing Object Groups Corresponding to Concepts for Recovery of a Summarized Sequence DiagramConstructing Object Groups Corresponding to Concepts for Recovery of a Summarized Sequence Diagrameng[一般論文] reverse-engineered sequence diagram, trace summarization, object grouping, meta patterns, program comprehensionhttp://id.nii.ac.jp/1001/00210559/Journal Articlehttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=210664&item_no=1&attribute_id=1&file_no=1Copyright (c) 2021 by the Information Processing Society of JapanTokyo Institute of TechnologyTokyo Institute of TechnologyAdvanced Science, Technology & Management Research Institute of KYOTOKunihiro, NodaTakashi, KobayashiKiyoshi, AgusaComprehending 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 these 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. By 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 than other figures found in the reference literature.------------------------------This is a preprint of an article intended for publication Journal ofInformation Processing(JIP). This preprint should not be cited. Thisarticle should be cited as: Journal of Information Processing Vol.29(2021) (online)DOI http://dx.doi.org/10.2197/ipsjjip.29.305------------------------------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 these 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. By 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 than other figures found in the reference literature.------------------------------This is a preprint of an article intended for publication Journal ofInformation Processing(JIP). This preprint should not be cited. Thisarticle should be cited as: Journal of Information Processing Vol.29(2021) (online)DOI http://dx.doi.org/10.2197/ipsjjip.29.305------------------------------AN00116647情報処理学会論文誌6242021-04-151882-77642021-04-09