Interactively exploring API changes and versioning consistency

TitleInteractively exploring API changes and versioning consistency
Publication TypeConference Paper
Year of Publication2023
AuthorsSerbout, S., D. Carolina M. Hurtado, and C. Pautasso
Conference Name11th IEEE Working Conference on Software Visualization (VISSOFT 2023)
Conference LocationBogota, Colombia
KeywordsAPI Versioning; Software Visualization

Application Programming Interfaces (APIs) evolve
over time. As they change, they are expected to be versioned
based on how changes might affect their clients. In this paper, we
present two novel visualizations specifically designed to represent
all structural changes and the level of adherence to semantic
versioning practices over time. They can also serve for characterizing and comparing the evolution history of different Web
APIs. The API VERSION CLOCK helps to visualize the sequence
of API changes over time and highlight inconsistencies between
major, minor, or patch version changes and the corresponding
introduced breaking or non-breaking changes applied to the
API. The API CHANGES overview aggregates all changes to
an OpenAPI (OAS) description, highlighting the unstable vs.
the stable elements of the API over its entire history. Both
visualizations can be automatically created using the APICTURE,
a command-line and web-based tool that analyzes the histories
of git code repositories containing OAS descriptions, extracting
the necessary data for generating visualizations and computing
metrics related to API evolution and versioning. The visualizations have been successfully applied to classify, compare, and
interactively explore the multi-year evolution history of APIs with
up to hundreds of individual commits.

Citation Keyapiace:2023:vissoft
Refereed DesignationRefereed