Abstract
Deprecation is a language feature that allows API producers to mark a feature as obsolete. We aim to gain a deep understanding of the needs of API producers and consumers alike regarding deprecation. To that end, we investigate why API producers deprecate features, whether they remove deprecated features, how they expect consumers to react, and what prompts an API consumer to react to deprecation. To achieve this goal we conduct semi-structured interviews with 17 third-party Java API producers and survey 170 Java developers. We observe that the current deprecation mechanism in Java and the proposal to enhance it does not address all the needs of a developer. This leads us to propose and evaluate three further enhancements to the deprecation mechanism.
Original language | English |
---|---|
Title of host publication | ICSE' 18 Proceedings of the 40th International Conference on Software Engineering |
Place of Publication | New York |
Publisher | Association for Computer Machinery |
Pages | 561-571 |
Number of pages | 11 |
ISBN (Print) | 978-1-4503-5638-1 |
Publication status | Published - 2018 |
Event | ICSE 2018: 40th International Conference on Software Engineering - Gothenburg, Sweden Duration: 27 May 2018 → 3 Jun 2018 Conference number: 40 https://www.icse2018.org/ |
Conference
Conference | ICSE 2018 |
---|---|
Country/Territory | Sweden |
City | Gothenburg |
Period | 27/05/18 → 3/06/18 |
Internet address |
Keywords
- API
- deprecation
- Java
Fingerprint
Dive into the research topics of 'Understanding Developers' Needs on Deprecation as a Language Feature'. Together they form a unique fingerprint.Datasets
-
Data originating from deprecation mechanism interviews
Sawant, A. A. (Creator), TU Delft - 4TU.ResearchData, 2 Apr 2020
DOI: 10.4121/UUID:23752F31-91B0-4C04-B070-C603541E1E90
Dataset/Software: Dataset