ICPC 2018
Sun 27 - Mon 28 May 2018 Gothenburg, Sweden
co-located with * ICSE 2018 *
Sun 27 May 2018 11:17 - 11:34 at R2 - Static and Dynamic Analysis Chair(s): Aiko Yamashita

Background. Source code analysis techniques usually rely on metric-based assessment. However, most of these techniques have low accuracy. One possible reason is because metric thresholds are extracted from classes driven by distinct design decisions. Previous studies have already shown that classes implemented according to some coarse-grained design decisions, such as programming languages, have different distribution of metric values. Therefore, these design decisions should be taken into account when using benchmarks for metric-based source code analysis. Goal. Our goal is to investigate whether other fine-grained design decisions also influence over distribution of software metrics. Method. We conduct an empirical study to evaluate the distributions of four metrics applied over fifteen real-world systems based on three different domains. Initially, we evaluated the influence of the class design role on the distributions of measures. For this purpose, we have defined an automatic approach to identify the design role played by each class. Then, we looked for other fine-grained design decisions that could have influenced the measures. Results. Our findings show that distribution of metrics are sensitive to the following design decisions: (i) design role of the class (ii) used libraries, (iii) coding style, (iv) exception handling, and (v) logging and debugging code mechanisms. Conclusion. The distribution of software metrics are sensitive to fine-grained design decisions and we should consider taking them into account when building benchmarks for metric-based source code analysis.

Sun 27 May

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

11:00 - 12:30
Static and Dynamic AnalysisTechnical Research at R2
Chair(s): Aiko Yamashita Oslo Metropolitan University
11:00
17m
Full-paper
JIT Feedback - what experienced developers like about static analysisTechnical Research
Technical Research
Yuriy Tymchuk Swisscom AG, Mohammad Ghafari University of Bern, Oscar Nierstrasz University of Bern, Switzerland
Link to publication DOI Pre-print
11:17
17m
Full-paper
How do Design Decisions Influence the Distribution of Software Metrics?Technical Research
Technical Research
Marcos Dosea Federal University of Sergipe and Federal Univeresity of Bahia, Claudio Sant'Anna Federal University of Bahia, Bruno da Silva California Polytechnic State University
DOI Pre-print
11:34
10m
Short-paper
SDExplorer: a generic toolkit for smoothly exploring massive-scale sequence diagramTool Demo
Technical Research
Kaixie Lyu , Kunihiro Noda Tokyo Institute of Technology, Takashi Kobayashi Tokyo Institute of Technology
Pre-print
11:44
17m
Full-paper
Hierarchical Abstraction of Execution Traces for Program ComprehensionTechnical Research
Technical Research
Yang Feng University of California, Irvine, Kaj Dreef University of California, Irvine, James Jones University of California, Irvine, Arie van Deursen Delft University of Technology
DOI Pre-print
12:01
17m
Full-paper
Component Interface Identification and Behavioral Model Discovery from Software Execution DataTechnical Research
Technical Research
Cong Liu Eindhoven University of Technology, Boudewijn Van Dongen Eindhoven University of Technology, Nour Assy Eindhoven University of Technology, Wil van der Aalst RWTH Aachen University, Germany
12:18
10m
Industry talk
CodeCompass: An Open Software Comprehension FrameworkIndustry Track
Technical Research
Zoltan Porkolab Eotvos Lorond University, Dániel Krupp Ericsson Ltd, Tibor Brunner Ericsson Hungary, Marton Csordas Ericsson Hungary
Link to publication DOI Pre-print