Abstract
Understanding the dynamic behavior of a software system is one of the most important and time-consuming tasks for today’s software maintainers. In practice, understanding the inner workings of software requires studying the source code and documentation and inserting logging code in order to map high-level descriptions of the program behavior with low-level implementation, i.e., the source code. Unfortunately, for large codebases and large log les, such cognitive mapping can be quite challenging. To bridge the cognitive gap between the source code and detailed models of program behavior, we propose a fully automatic approach to present a semantic abstraction with different levels of functional granularity from full execution traces. Our approach builds multi-level abstractions and identifies frequent behaviors at each level based on a number of execution traces, and then, it labels phases within individual execution traces according to the identified major functional behaviors of the system. To validate our approach, we conducted a case study on a large-scale subject program, Javac, to demonstrate the effectiveness of the mining result. Furthermore, the results of a user study demonstrate that our approach is capable of presenting users a high-level comprehensible abstraction of execution behavior. Based on a real world subject program the participants in our user study were able to achieve a mean accuracy of 70%.
Original language | English |
---|---|
Title of host publication | Proceedings of the 26th Conference on Program Comprehension, ICPC 2018 |
Place of Publication | New York, NY |
Publisher | Association for Computing Machinery (ACM) |
Pages | 86-96 |
Number of pages | 11 |
ISBN (Electronic) | 978-1-4503-5714-2 |
DOIs | |
Publication status | Published - 2018 |
Event | ICPC 2018: IEEE/ACM International Conference on Program Comprehension 2018 - Gothenburg, Sweden Duration: 27 May 2018 → 28 May 2018 https://conf.researchr.org/home/icpc-2018 |
Conference
Conference | ICPC 2018 |
---|---|
Country/Territory | Sweden |
City | Gothenburg |
Period | 27/05/18 → 28/05/18 |
Other | Co-located with ICSE 2018 |
Internet address |