Academic Journal

API beauty is in the eye of the clients: 2.2 million Maven dependencies reveal the spectrum of client–API usages

التفاصيل البيبلوغرافية
العنوان: API beauty is in the eye of the clients: 2.2 million Maven dependencies reveal the spectrum of client–API usages
المؤلفون: Harrand, Nicolas, Benelallam, Amine, Soto-Valero, César, Bettega, François, Barais, Olivier, Baudry, Benoit
المساهمون: KTH Royal Institute of Technology Stockholm (KTH), Université de Rennes (UR), Inria Rennes – Bretagne Atlantique, Institut National de Recherche en Informatique et en Automatique (Inria), Institut de Recherche en Informatique et Systèmes Aléatoires (IRISA), Université de Rennes (UR)-Institut National des Sciences Appliquées - Rennes (INSA Rennes), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Université de Bretagne Sud (UBS)-École normale supérieure - Rennes (ENS Rennes)-Institut National de Recherche en Informatique et en Automatique (Inria)-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS)-IMT Atlantique (IMT Atlantique), Institut Mines-Télécom Paris (IMT)-Institut Mines-Télécom Paris (IMT), Université Grenoble Alpes (UGA), Diversity-centric Software Engineering (DiverSe), Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-LANGAGE ET GÉNIE LOGICIEL (IRISA-D4), Institut Mines-Télécom Paris (IMT)-Institut Mines-Télécom Paris (IMT)-Université de Rennes (UR)-Institut National des Sciences Appliquées - Rennes (INSA Rennes), Institut Mines-Télécom Paris (IMT)-Institut Mines-Télécom Paris (IMT)-Institut de Recherche en Informatique et Systèmes Aléatoires (IRISA), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Université de Bretagne Sud (UBS)-École normale supérieure - Rennes (ENS Rennes)-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS)-IMT Atlantique (IMT Atlantique)
المصدر: ISSN: 0164-1212 ; Journal of Systems and Software ; https://hal.science/hal-03921298 ; Journal of Systems and Software, 2022, 184, pp.111134. ⟨10.1016/j.jss.2021.111134⟩.
بيانات النشر: HAL CCSD
Elsevier
سنة النشر: 2022
المجموعة: Université de Rennes 1: Publications scientifiques (HAL)
مصطلحات موضوعية: Mining software repositories, Bytecode analysis, Software reuse, Java, Maven Central Repository, [INFO]Computer Science [cs]
الوصف: International audience ; Hyrum’s law states a common observation in the software industry: “With a sufficient number of users of an API, it does not matter what you promise in the contract: all observable behaviors of your system will be depended on by somebody”. Meanwhile, recent research results seem to contradict this observation when they state that “for most APIs, there is a small number of features that are actually used”. In this work, we perform a large scale empirical study of client–API relationships in the Maven ecosystem, in order to investigate this seeming paradox between the observations in industry and the research literature.We study the 94 most popular libraries in Maven Central, as well as the 829,410 client artifacts that declare a dependency to these libraries and that are available in Maven Central, summing up to 2.2M dependencies. Our analysis indicates the existence of a wide spectrum of API usages, with enough clients, most API types end up being used at least once. Our second key observation is that, for all libraries, there is a small set of API types that are used by the vast majority of its clients. The practical consequences of this study are two-fold: (i) it is possible for API maintainers to find an essential part of their API on which they can focus their efforts; (ii) API developers should limit the public API elements to the set of features for which they are ready to have users.
نوع الوثيقة: article in journal/newspaper
اللغة: English
Relation: info:eu-repo/semantics/altIdentifier/arxiv/1908.09757; ARXIV: 1908.09757
DOI: 10.1016/j.jss.2021.111134
الاتاحة: https://hal.science/hal-03921298
https://hal.science/hal-03921298v1/document
https://hal.science/hal-03921298v1/file/1-s2.0-S0164121221002314-main%20%281%29.pdf
https://doi.org/10.1016/j.jss.2021.111134
Rights: http://creativecommons.org/licenses/by/ ; info:eu-repo/semantics/OpenAccess
رقم الانضمام: edsbas.34721F23
قاعدة البيانات: BASE
الوصف
DOI:10.1016/j.jss.2021.111134