Understanding Software Behaviors via API Usage Visualization

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.

Authors

Institutions

Publication Details

Published
2024-11-27
DOI
https://doi.org/10.1109/acompa64883.2024.00024
Primary Topic
Software Engineering Research
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Understanding Software Behaviors via API Usage Visualization

Lam-Son Lê, Tran Tri Dang
Software Engineering Research
article

Understanding Software Behaviors via API Usage Visualization

Lam-Son Lê, Tran Tri Dang
article en

Abstract

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.

RMIT Vietnam (VN)
Openalex Percentile: Top 61%
Software Engineering Research
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Understanding Software Behaviors via API Usage Visualization — Lam-Son Lê, Tran Tri Dang · (2024) | TGRS Research Map | TGRS