首页 | 本学科首页   官方微博 | 高级检索  
     


Visualizing trace of Java collection APIs by dynamic bytecode instrumentation
Affiliation:1. Faculty of Computer Science and Engineering, Ghulam Ishaq Khan Institute of Engineering Sciences and Technology, Topi, Pakistan;2. Department of Computer Science and Information Technology, The University of Lahore, Lahore, Pakistan.;3. College of Computer Engineering and Science, Prince Mohammad Bin Fahd University (PMU), Khobar, Saudi Arabia;1. The Institute of Computer Graphics and Algorithms, TU Wien, Vienna 1040, Austria;2. School of Computer Science and Engineering, University of Aizu, Aizu-Wakamatsu, 965-8580 Japan;3. Graduate School of Frontier Sciences, University of Tokyo, Kashiwa, 277-8561 Japan;1. Ochanomizu University, Japan;2. National Institute of Advanced Industrial Science and Technology, Japan;3. University of Tsukuba, Japan;4. The University of Sydney, Australia
Abstract:Object-oriented languages are widely used in software development to help the developer in using dynamic data structures which evolve during program execution. However, the task of program comprehension and performance analysis necessitates the understanding of data structures used in a program. Particularly, in understanding which application programming interface (API) objects are used during runtime of a program. The objective of this work is to give a compact view of the complete program code information at a single glance and to provide the user with an interactive environment to explore details of a given program. This work presents a novel interactive visualization tool for collection framework usage, in a Java program, based on hierarchical treemap. A given program is instrumented during execution time and data recorded into a log file. The log file is then converted to extensible markup language (XML)-based tree format which proceeds to the visualization component. The visualization provides a global view to the usage of collection API objects at different locations during program execution. We conduct an empirical study to evaluate the impact of the proposed visualization in program comprehension. The experimental group (having the proposed tool support), on average, completes the tasks in 45% less time as compared to the control group (not provided with the proposed tool). Results show that the proposed tool enables to comprehend more information with less effort and time. We have also evaluated the performance of the proposed tool using 20 benchmark software tools. The proposed tool is anticipated to help the developer in understanding Java programs and assist in program comprehension and maintenance by identifying APIs usage and their patterns.
Keywords:
本文献已被 ScienceDirect 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号