@demo {apiace:2024:ecsa,
	title = {OAS2Tree: Visual API-First Design},
	year = {2024},
	month = {September},
	publisher = {Springer},
	address = {Luxembourg},
	abstract = {OAS2Tree is a tool designed to transform OpenAPI Specification (OAS) documents into tree-like visualizations, aiding in the understanding and navigation of the structure of REST APIs. By converting the detailed, verbose, and often complex OAS files into a visual tree structure, OAS2tree simplifies the comprehension of a Web API, highlighting the hierarchical relationships between endpoints, operations, and parameters. This visual representation is particularly useful for developers and stakeholders who need a quick overview of an API without delving into the intricate details of its technical specifications. OAS2tree can be integrated into the IDE through a Visual Studio code extension or used as a standalone web application. The tool currently has about 400 users and has been used on teaching, research, and development projects. In this paper, we present the design and implementation of OAS2tree, highlighting its features and use cases. We also highlight the limitations of the current version and discuss future improvements and potential extensions.},
	keywords = {API Analytics, demo, visualization},
	author = {Souhaila Serbout and Cesare Pautasso}
}
@conference {apiace:2023:vissoft,
	title = {Interactively exploring API changes and versioning consistency},
	booktitle = {11th IEEE Working Conference on Software Visualization (VISSOFT 2023)},
	year = {2023},
	month = {October},
	pages = {28-39},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Bogota, Colombia},
	abstract = {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.},
	keywords = {API Versioning; Software Visualization, visualization},
	doi = {10.1109/VISSOFT60811.2023.00013},
	url = {https://ieeexplore.ieee.org/document/10350155},
	author = {Souhaila Serbout and Diana Carolina Mu{\~n}oz Hurtado and Cesare Pautasso}
}
@book {2021:bapie,
	title = {Beautiful API Evolution},
	year = {2021},
	publisher = {LeanPub},
	organization = {LeanPub},
	abstract = {This book presents the catalog of a virtual exhibition featuring different visualizations of the structural evolution of 51 Web APIs of different sizes and shapes, showing how they mostly grow but sometimes also shed some dead branches over the years.

The diagrams are drawn based on the exact OpenAPI specifications as they were versioned on some open source repository.

While there are many books on how to improve the design of existing APIs, the goal of this book is to show a small sample of actual API designs undergoing change. Learn from these examples to avoid false starts and discover which structures turn out to be stable over the years.

All APIs represented are Web APIs: they come from the age when many attempted with very different results to use the HTTP protocol to remotely invoke software delivered as a service.

The APIs have been selected mainly due to their visual appearance.},
	keywords = {API, API Evolution, visualization},
	url = {https://leanpub.com/beautiful-api-evolution/},
	author = {Cesare Pautasso}
}
@inproceedings {saw:2011:shark,
	title = {Goals, questions and metrics for architectural decision models},
	year = {2011},
	month = {May},
	pages = {21{\textendash}28},
	publisher = {ACM},
	address = {Waikiki, Hawaii, USA},
	abstract = {Architectural decisions are the key element behind the design process leading to a software architecture. Making software architects aware of the implications of their decisions is only the beginning of what can be achieved by capturing the rationale and the constraints influencing the decision making process in a reusable body of architectural knowledge. In this paper we propose a metric-based approach to the analysis of architectural decision models. Using a hierarchically-structured approach we identify a number of useful goals and stakeholders involved in the architectural design process. Next, we sketch a set of metrics to provide data for the evaluation of the aforementioned goals. Our aim is to stimulate a discussion on how to find indicators relevant for software architects by measuring the intrinsic properties of architectural knowledge.},
	keywords = {architectural decision modeling, metrics, SAW, software architecture, visualization},
	isbn = {978-1-4503-0596-9},
	doi = {10.1145/1988676.1988682},
	author = {Marcin Nowak and Cesare Pautasso}
}
