Understanding Software Behaviors via API Usage Visualization

Tran Tri Dang, Lam-Son Lê · 2024

Due to the increasing complexity of business processes and the growing number of required features, modern software rarely operates independently. Rather, it often relies on third-party services, many of which are available in the form of API calls, to perform recurring computing tasks. While software developers and programmers alike may enjoy the benefits of API calls (e.g., integrability, efficiency, shorter time-to-market), it is crucial for them to have a thorough understanding of API usage in the entire software code. Research in API usage analysis ranges from supporting the understanding of codebase semantics to identifying important software dependencies and recognizing threats from suspicious API calls. To our knowledge, most existing work in the realm is focused on the statistical properties of large codebases. While understanding these large codebases as a whole is important, gaining knowledge of how specific software utilizes APIs is equally crucial. In this work, we propose a tool proposal for visualizing API usage of a software project. To evaluate the effectiveness of our visualization techniques, we demonstrate using a couple of open-source programs in C#. The experimental results revealed some promising aspects as well as some issues that may be addressed in future research with regard to understanding API usage.

Read the paper · More papers on PaperTik