@conference {apiace:2024:icwe,
	title = {How Many Web APIs Evolve Following Semantic Versioning?},
	booktitle = {24th International Conference on Web Engineering (ICWE)},
	year = {2024},
	month = {June},
	address = {Tampere, Finland},
	keywords = {API Analytics, API Evolution, Semantic Versioning, Web API},
	author = {Souhaila Serbout and Cesare Pautasso}
}
@article {2022:jwe,
	title = {A Large-scale Empirical Assessment of Web API Size Evolution},
	journal = {Journal of Web Engineering},
	volume = {21},
	year = {2022},
	month = {November},
	pages = {1937{\textendash}1980},
	abstract = {Like any other type of software, also Web Application Programming Interfaces (APIs) evolve over time. In the case of widely used API, introducing changes is never a trivial task, because of the risk of breaking thousands of clients relying on the API. In this paper we conduct an empirical study over a large collection of OpenAPI descriptions obtained by mining open source repositories. We measure the speed at which Web APIs change and how changes affect their size, simply defined as the number of operations. The dataset of API descriptions was collected over a period of one year and includes APIs with histories spanning across up to 7 years of commits. The main finding is that APIs tend to grow, although some do reduce their size, as shown in the case study examples included in the appendix.},
	keywords = {API Evolution},
	doi = {10.13052/jwe1540-9589.2167},
	url = {https://ieeexplore.ieee.org/document/10246943},
	author = {Fabio Di Lauro and Souhaila Serbout and Cesare Pautasso}
}
@conference {apiace:2022:ecsa,
	title = {To deprecate or to simply drop operations? An empirical study on the evolution of a large OpenAPI collection},
	booktitle = {16th European Conference on Software Architecture (ECSA)},
	volume = {13444},
	year = {2022},
	month = {September},
	pages = {38-46},
	publisher = {Springer},
	organization = {Springer},
	address = {Prague, Czech Republic},
	keywords = {API Analytics, API Evolution},
	doi = {doi.org/10.1007/978-3-031-16697-6_3},
	author = {Fabio Di Lauro and Souhaila Serbout 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}
}
@conference {2021:icwe:api-evolution,
	title = {Towards Large-scale Empirical Assessment of Web APIs Evolution},
	booktitle = {21st International Conference on Web Engineering (ICWE2021)},
	year = {2021},
	month = {May},
	pages = {124-138},
	publisher = {Springer},
	organization = {Springer},
	address = {Biarritz, France},
	abstract = {Web Application Programming Interfaces (APIs) decouple the internal implementation of a service from its consumers which can reuse and compose them to rapidly build new applications.
Many Web APIs are described with the OpenAPI Specification (OAS). The goal of our research is to check the feasibility of using API descriptions found in public open source repositories to study how APIs evolve over time. To do so, we collected a large dataset of OAS documents by crawling open source repositories, we parsed the corresponding metadata and measured the API size in order to extract a simple model to track the lifecycle of API artifacts and observe common evolution behaviors. Our preliminary results indicate that only a subset of the APIs changes, but as opposed to the expectation that APIs should only grow to maintain backward compatibility we also detected a number of APIs with a more variable history. We also study the stability of API artifacts over time and whether APIs are more or less likely to change as they age.},
	keywords = {API Evolution, OpenAPI, Web API},
	doi = {10.1007/978-3-030-74296-6_10},
	author = {Fabio Di Lauro and Souhaila Serbout and Cesare Pautasso}
}
@conference {2019:map:europlop,
	title = {Interface Evolution Patterns {\textemdash} Balancing Compatibility and Flexibility across Microservices Lifecycles},
	booktitle = {24th European Conference on Pattern Languages of Programs (EuroPLoP 2019)},
	year = {2019},
	month = {July},
	publisher = {ACM},
	organization = {ACM},
	address = {Irsee, Germany},
	abstract = {Remote Application Programming Interfaces (APIs) are technology enablers for distributed system trends such as cloud-native application development. API providers find it hard to design their remote APIs so that they can be evolved easily; refactoring and extending an API while preserving backward compatibility is particularly challenging. If APIs are evolved poorly, clients are critically impacted; high costs to adapt and compensate for downtimes may result. For instance, if an API provider publishes a new incompatible API version, existing clients might break and not function properly until they are upgraded to support the new version. Hence, applying adequate strategies for evolving service APIs is one of the core problems in API governance, which in turn is a prerequisite for successfully integrating service providers with their clients in the long run. Although many patterns and pattern languages are concerned with API and service design and related integration technologies,patterns guiding the evolution of APIs are missing to date. Extending our pattern language on Microservice API Patterns (MAP), we introduce a set of patterns focusing on API evolution strategies in this paper: API Description, Version Identifier, Semantic Versioning, Eternal Lifetime Guarantee, Limited Lifetime Guarantee, Two in Production, Aggressive Obsolescence, and Experimental Preview.The patterns have been mined from public Web APIs and industry projects the authors have been involved in.},
	keywords = {API, API Evolution, Microservices, patterns},
	doi = {10.1145/3361149.3361164},
	url = {https://dl.acm.org/citation.cfm?id=3361164},
	author = {Daniel L{\"u}bke and Olaf Zimmermann and Cesare Pautasso and Uwe Zdun}
}
