How Are Web APIs Versioned in Practice?A Large-Scale Empirical Study

被引:0
|
作者
Serbout, Souhaila [1 ]
Pautasso, Cesare [1 ]
机构
[1] Software Inst USI, Lugano, Switzerland
来源
JOURNAL OF WEB ENGINEERING | 2024年 / 23卷 / 04期
关键词
API; Web API; OpenAPI; empirical study; versioning;
D O I
10.13052/jwe1540-9589.2341
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Web APIs form the cornerstone of modern software ecosystems, facilitatingseamless data exchange and service integration. Ensuring the compatibilityand longevity of these APIs is paramount. This study delves into the intricaterealm of API versioning practices, a crucial mechanism for managing APIevolution. Exploring an expanded and diverse dataset of 603 293 APIs spec-ifications created during the 2015-2023 timeframe and gathered from fourdifferent sources, we examined the adoption of the following versioning prac-tices: Metadata-based, URL-based, Header-based and Dynamic versioning,with one or more versions in production. API developers use more than 50different version identifier formats to encode information about the changesintroduced with respect to the previous version (i.e., semantic versioning),about when the version was released (i.e., age versioning) and about whichphase of the API development lifecycle the version belongs (i.e., stable vs.preview releases).
引用
收藏
页码:465 / 506
页数:42
相关论文
共 50 条
  • [21] A Large-Scale Empirical Study on Industrial Fake Apps
    Tang, Chongbin
    Chen, Sen
    Fan, Lingling
    Xu, Lihua
    Liu, Yang
    Tang, Zhushou
    Dou, Liang
    [J]. 2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: SOFTWARE ENGINEERING IN PRACTICE (ICSE-SEIP 2019), 2019, : 183 - 192
  • [22] Dockerfile Changes in Practice: A Large-Scale Empirical Study of 4,110 Projects on GitHub
    Wu, Yiwen
    Zhang, Yang
    Wang, Tao
    Wang, Huaimin
    [J]. 2020 27TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2020), 2020, : 247 - 256
  • [23] Branch Use in Practice A Large-Scale Empirical Study of 2,923 Projects on GitHub
    Zou, Weiqin
    Zhang, Weiqiang
    Xia, Xin
    Holmes, Reid
    Chen, Zhenyu
    [J]. 2019 IEEE 19TH INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY AND SECURITY (QRS 2019), 2019, : 306 - 317
  • [24] Mining Preconditions of APIs in Large-Scale Code Corpus
    Hoan Anh Nguyen
    Dyer, Robert
    Nguyen, Tien N.
    Rajan, Hridesh
    [J]. 22ND ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (FSE 2014), 2014, : 166 - 177
  • [25] A Large-Scale Empirical Study on Semantic Versioning in Golang Ecosystem
    Li, Wenke
    Wu, Feng
    Fu, Cai
    Zhou, Fan
    [J]. 2023 38TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE, 2023, : 1604 - 1614
  • [26] A Large-Scale Empirical Study on Code-Comment Inconsistencies
    Wen, Fengcai
    Nagy, Csaba
    Bavota, Gabriele
    Lanza, Michele
    [J]. 2019 IEEE/ACM 27TH INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION (ICPC 2019), 2019, : 53 - 64
  • [27] A large-scale empirical study of code smells in JavaScript projects
    David Johannes
    Foutse Khomh
    Giuliano Antoniol
    [J]. Software Quality Journal, 2019, 27 : 1271 - 1314
  • [28] Software testing and Android applications: a large-scale empirical study
    Fabiano Pecorelli
    Gemma Catolino
    Filomena Ferrucci
    Andrea De Lucia
    Fabio Palomba
    [J]. Empirical Software Engineering, 2022, 27
  • [29] Gaming addiction, definition and measurement: A large-scale empirical study
    Spekman, Marloes L. C.
    Konijn, Elly A.
    Roelofsma, Peter H. M. P.
    Griffiths, Mark D.
    [J]. COMPUTERS IN HUMAN BEHAVIOR, 2013, 29 (06) : 2150 - 2155
  • [30] Understand the Predictability of Wireless Spectrum: A Large-scale Empirical Study
    Song, Chengqi
    Chen, Dawei
    Zhang, Qian
    [J]. 2010 IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS - ICC 2010, 2010,