How do Developers React to API Evolution? ...
Document type :
Article dans une revue scientifique: Article original
Title :
How do Developers React to API Evolution? a Large-Scale Empirical Study
Author(s) :
Hora, André [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Robbes, Romain [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Computer Science Department [Santiago] [DCC]
Tulio Valente, Marco [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Departamento de Ciência da Computação [Minas Gerais] [DCC - UFMG]
Anquetil, Nicolas [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Etien, Anne [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Ducasse, Stephane [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Robbes, Romain [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Computer Science Department [Santiago] [DCC]
Tulio Valente, Marco [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Departamento de Ciência da Computação [Minas Gerais] [DCC - UFMG]
Anquetil, Nicolas [Auteur]

Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Etien, Anne [Auteur]

Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Ducasse, Stephane [Auteur]

Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Journal title :
Software Quality Journal
Publisher :
Springer Verlag
Publication date :
2016-10-27
ISSN :
0963-9314
HAL domain(s) :
Informatique [cs]/Langage de programmation [cs.PL]
English abstract : [en]
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. ...
Show more >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 3,600 distinct systems, and six 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.Show less >
Show more >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 3,600 distinct systems, and six 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.Show less >
Language :
Anglais
Peer reviewed article :
Oui
Audience :
Internationale
Popular science :
Non
Collections :
Source :
Files
- https://hal.inria.fr/hal-01417930/document
- Open access
- Access the document
- https://hal.inria.fr/hal-01417930/document
- Open access
- Access the document
- https://hal.inria.fr/hal-01417930/document
- Open access
- Access the document
- document
- Open access
- Access the document
- 2017-sqj.pdf
- Open access
- Access the document
- document
- Open access
- Access the document
- 2017-sqj.pdf
- Open access
- Access the document