Why are features deprecated?

An investigation into the motivation behind deprecation

Conference Paper (2018)
Author(s)

Anand Sawant (TU Delft - Software Engineering)

Guangzhe Huang (Student TU Delft)

Gabriel Vilen (Student TU Delft)

Stefan Stojkovski (Student TU Delft)

A Bacchelli (Universitat Zurich)

Research Group
Software Engineering
Copyright
© 2018 A.A. Sawant, Guangzhe Huang, Gabriel Vilen, Stefan Stojkovski, A. Bacchelli
DOI related publication
https://doi.org/10.1109/ICSME.2018.00011
More Info
expand_more
Publication Year
2018
Language
English
Copyright
© 2018 A.A. Sawant, Guangzhe Huang, Gabriel Vilen, Stefan Stojkovski, A. Bacchelli
Research Group
Software Engineering
Bibliographical Note
Accepted author manuscript@en
Pages (from-to)
13-24
ISBN (print)
978-1-5386-7871-8
ISBN (electronic)
978-1-5386-7870-1
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

In this study, we investigate why API producers deprecate features. Previous work has shown us that knowing the rationale behind deprecation of an API aids a consumer in deciding to react, thus hinting at a diversity of deprecation reasons. We manually analyze the Javadoc of 374 deprecated methods pertaining four mainstream Java APIs to see whether the reason behind deprecation is mentioned. We find that understanding the rationale from just the Javadoc is insufficient; hence we add other data sources such as the source code, issue tracker data and commit history. We observe 12 reasons that trigger API producers to deprecate a feature. We evaluate an automated approach to classify these motivations.

Files

Deprecation_reasons.pdf
(pdf | 0.974 Mb)
License info not available