Academic Journal

How do developers react to API evolution? A large-scale empirical study.

Bibliographic Details
Title: How do developers react to API evolution? A large-scale empirical study.
Authors: Hora, André, Robbes, Romain, Valente, Marco Tulio, Anquetil, Nicolas, Etien, Anne, Ducasse, Stéphane
Source: Software Quality Journal; Mar2018, Vol. 26 Issue 1, p161-191, 31p
Subject Terms: Application program interfaces, Computer software development, Empirical research, Functionality doctrine (Trademarks), Ecosystems
Abstract: Software engineering research now considers that no system is an island, but it is part of an ecosystem involving other systems, developers, and users. When a framework or a library evolves, its clients often must adapt. For example, client developers might need to adapt to functionalities, client systems might need to be adapted to a new API, and client users might need to adapt to a new user interface. The consequences of these changes are yet unclear: what proportion of the ecosystem might be expected to react, how long might it take for a change to diffuse in the ecosystem, do all clients react in the same way? This paper reports an exploratory study aimed at observing API evolution and its impact on a large software ecosystem, Pharo, which has about 3600 distinct systems, and 6 years of evolution. We analyze 118 API changes in the context of method replacement and suggestion, and answer research questions regarding the magnitude, duration, extension, and consistency of such changes in the ecosystem. The results of this study help to characterize the impact of API evolution in large software ecosystems and provide the basis to better understand how such impact can be alleviated. [ABSTRACT FROM AUTHOR]
Copyright of Software Quality Journal is the property of Springer Nature and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
Database: Complementary Index
FullText Links:
  – Type: other
Text:
  Availability: 0
CustomLinks:
  – Url: https://dx.doi.org/doi:10.1007/s11219-016-9344-4
    Name: EDS - Springer Nature Journals (s7799221)
    Category: fullText
    Text: View record at Springer
Header DbId: edb
DbLabel: Complementary Index
An: 128149631
RelevancyScore: 862
AccessLevel: 6
PubType: Academic Journal
PubTypeId: academicJournal
PreciseRelevancyScore: 861.628051757813
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: How do developers react to API evolution? A large-scale empirical study.
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Hora%2C+André%22">Hora, André</searchLink><br /><searchLink fieldCode="AR" term="%22Robbes%2C+Romain%22">Robbes, Romain</searchLink><br /><searchLink fieldCode="AR" term="%22Valente%2C+Marco+Tulio%22">Valente, Marco Tulio</searchLink><br /><searchLink fieldCode="AR" term="%22Anquetil%2C+Nicolas%22">Anquetil, Nicolas</searchLink><br /><searchLink fieldCode="AR" term="%22Etien%2C+Anne%22">Etien, Anne</searchLink><br /><searchLink fieldCode="AR" term="%22Ducasse%2C+Stéphane%22">Ducasse, Stéphane</searchLink>
– Name: TitleSource
  Label: Source
  Group: Src
  Data: Software Quality Journal; Mar2018, Vol. 26 Issue 1, p161-191, 31p
– Name: Subject
  Label: Subject Terms
  Group: Su
  Data: <searchLink fieldCode="DE" term="%22Application+program+interfaces%22">Application program interfaces</searchLink><br /><searchLink fieldCode="DE" term="%22Computer+software+development%22">Computer software development</searchLink><br /><searchLink fieldCode="DE" term="%22Empirical+research%22">Empirical research</searchLink><br /><searchLink fieldCode="DE" term="%22Functionality+doctrine+%28Trademarks%29%22">Functionality doctrine (Trademarks)</searchLink><br /><searchLink fieldCode="DE" term="%22Ecosystems%22">Ecosystems</searchLink>
– Name: Abstract
  Label: Abstract
  Group: Ab
  Data: Software engineering research now considers that no system is an island, but it is part of an ecosystem involving other systems, developers, and users. When a framework or a library evolves, its clients often must adapt. For example, client developers might need to adapt to functionalities, client systems might need to be adapted to a new API, and client users might need to adapt to a new user interface. The consequences of these changes are yet unclear: what proportion of the ecosystem might be expected to react, how long might it take for a change to diffuse in the ecosystem, do all clients react in the same way? This paper reports an exploratory study aimed at observing API evolution and its impact on a large software ecosystem, Pharo, which has about 3600 distinct systems, and 6 years of evolution. We analyze 118 API changes in the context of method replacement and suggestion, and answer research questions regarding the magnitude, duration, extension, and consistency of such changes in the ecosystem. The results of this study help to characterize the impact of API evolution in large software ecosystems and provide the basis to better understand how such impact can be alleviated. [ABSTRACT FROM AUTHOR]
– Name: Abstract
  Label:
  Group: Ab
  Data: <i>Copyright of Software Quality Journal is the property of Springer Nature and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract.</i> (Copyright applies to all Abstracts.)
PLink https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edb&AN=128149631
RecordInfo BibRecord:
  BibEntity:
    Identifiers:
      – Type: doi
        Value: 10.1007/s11219-016-9344-4
    Languages:
      – Code: eng
        Text: English
    PhysicalDescription:
      Pagination:
        PageCount: 31
        StartPage: 161
    Subjects:
      – SubjectFull: Application program interfaces
        Type: general
      – SubjectFull: Computer software development
        Type: general
      – SubjectFull: Empirical research
        Type: general
      – SubjectFull: Functionality doctrine (Trademarks)
        Type: general
      – SubjectFull: Ecosystems
        Type: general
    Titles:
      – TitleFull: How do developers react to API evolution? A large-scale empirical study.
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Hora, André
      – PersonEntity:
          Name:
            NameFull: Robbes, Romain
      – PersonEntity:
          Name:
            NameFull: Valente, Marco Tulio
      – PersonEntity:
          Name:
            NameFull: Anquetil, Nicolas
      – PersonEntity:
          Name:
            NameFull: Etien, Anne
      – PersonEntity:
          Name:
            NameFull: Ducasse, Stéphane
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 01
              M: 03
              Text: Mar2018
              Type: published
              Y: 2018
          Identifiers:
            – Type: issn-print
              Value: 09639314
          Numbering:
            – Type: volume
              Value: 26
            – Type: issue
              Value: 1
          Titles:
            – TitleFull: Software Quality Journal
              Type: main
ResultId 1