Skip to main content

To Deprecate or to Simply Drop Operations? An Empirical Study on the Evolution of a Large OpenAPI Collection

  • Conference paper
  • First Online:
Software Architecture (ECSA 2022)

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 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

  1. 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

    Chapter  Google Scholar 

  2. 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)

    Google Scholar 

  3. 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)

    Google Scholar 

  4. Lauret, A.: The Design of Web APIs. Manning (2019)

    Google Scholar 

  5. 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)

    Google Scholar 

  6. 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)

    Google Scholar 

  7. 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

    Book  Google Scholar 

  8. OpenAPI Initiative (2022). https://www.openapis.org/. Accessed 11 May 2022

  9. 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

    Google Scholar 

  10. Sohan, S., Anslow, C., Maurer, F.: A case study of web API evolution. In: IEEE World Congress on Services (2015)

    Google Scholar 

  11. Varga, E.: Creating Maintainable APIs. Springer, Heidelberg (2016). https://doi.org/10.1007/978-1-4842-2196-9

    Book  Google Scholar 

  12. 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)

    Google Scholar 

Download references

Acknowledgements

This work is funded by the SNSF, with the API-ACE project nr. 184692.

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Fabio Di Lauro , Souhaila Serbout or Cesare Pautasso .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

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)

Publish with us

Policies and ethics