Abstract
OpenAPI is a language-agnostic standard used to describe Web APIs which supports the explicit deprecation of interface features. To assess how APIs evolve over time and observe how their developers handle the introduction of breaking changes, we performed an empirical study on a dataset composed of more than one million API operations described using OpenAPI and Swagger format. Our results focus on detecting breaking changes engendered by operations removal and whether and to which extent deprecation is used to warn clients and developers about dependencies they should no longer rely on. Out of the 41,627 APIs considered, we found only 263 (0.6%) in which some operations are deprecated before being removed, while the developers of 10,242 (24.6%) of them directly remove operations without first informing their clients about the potentially breaking change. Furthermore, we found that only 5.2% of the explicit-deprecated operations and 8.0% of the deprecated-in-description operations end with a removal, suggesting a tendency to deprecate operations without removing them. Overall, we observed a low negative correlation between the relative amount of deprecated operations and the age of the corresponding APIs.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
To simplify the analysis and reduce its cost, in this section we focus at the operation level neglecting the parameters, responses and schema levels.
References
Di Lauro, F., Serbout, S., Pautasso, C.: Towards large-scale empirical assessment of web APIs evolution. In: Brambilla, M., Chbeir, R., Frasincar, F., Manolescu, I. (eds.) ICWE 2021. LNCS, vol. 12706, pp. 124–138. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-74296-6_10
Hora, A., Etien, A., Anquetil, N., Ducasse, S., Valente, M.T.: APIEvolutionMiner: keeping API evolution under control. In: Proceedings of IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering (CSMR-WCRE) (2014)
Karlsson, S., Čaušević, A., Sundmark, D.: QuickREST: property-based test generation of OpenAPI-described RESTful APIs. In: IEEE 13th International Conference on Software Testing, Validation and Verification (ICST) (2020)
Lauret, A.: The Design of Web APIs. Manning (2019)
Li, J., Xiong, Y., Liu, X., Zhang, L.: How does web service API evolution affect clients? In: IEEE 20th International Conference on Web Services (2013)
Lübke, D., Zimmermann, O., Pautasso, C., Zdun, U., Stocker, M.: Interface evolution patterns—balancing compatibility and flexibility across microservices lifecycles. In: Proceedings of 24th European Conference on Pattern Languages of Programs (EuroPLoP 2019). ACM (2019)
Murer, S., Bonati, B., Furrer, F.: Managed Evolution - A Strategy for Very Large Information Systems. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-01633-2
OpenAPI Initiative (2022). https://www.openapis.org/. Accessed 11 May 2022
Serbout, S., Pautasso, C., Zdun, U.: How composable si the web? an empirical study on openapi data model compatibility. In: Proceedings of IEEE World Congress on Services (ICWS Symposium on Services for Machine Learning), Barcelona, Spain. IEEE, July 2022
Sohan, S., Anslow, C., Maurer, F.: A case study of web API evolution. In: IEEE World Congress on Services (2015)
Varga, E.: Creating Maintainable APIs. Springer, Heidelberg (2016). https://doi.org/10.1007/978-1-4842-2196-9
Yasmin, J., Tian, Y., Yang, J.: A first look at the deprecation of restful APIs: an empirical study. In: IEEE International Conference on Software Maintenance and Evolution (ICSME) (2020)
Acknowledgements
This work is funded by the SNSF, with the API-ACE project nr. 184692.
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Di Lauro, F., Serbout, S., Pautasso, C. (2022). To Deprecate or to Simply Drop Operations? An Empirical Study on the Evolution of a Large OpenAPI Collection. In: Gerostathopoulos, I., Lewis, G., Batista, T., Bureš, T. (eds) Software Architecture. ECSA 2022. Lecture Notes in Computer Science, vol 13444. Springer, Cham. https://doi.org/10.1007/978-3-031-16697-6_3
Download citation
DOI: https://doi.org/10.1007/978-3-031-16697-6_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-16696-9
Online ISBN: 978-3-031-16697-6
eBook Packages: Computer ScienceComputer Science (R0)