Print Email Facebook Twitter Understanding Developers' Needs on Deprecation as a Language Feature Title Understanding Developers' Needs on Deprecation as a Language Feature Author Sawant, A.A. (TU Delft Software Engineering) Aniche, Maurício (TU Delft Software Engineering) van Deursen, A. (TU Delft Software Technology) Bacchelli, A. (University of Zürich) Department Software Technology Date 2018 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. Subject APIdeprecationJava To reference this document use: http://resolver.tudelft.nl/uuid:f7a10177-82fa-4b23-ae4b-090fc9502fc9 Publisher Association for Computer Machinery, New York ISBN 978-1-4503-5638-1 Source ICSE' 18 Proceedings of the 40th International Conference on Software Engineering Event ICSE 2018, 2018-05-27 → 2018-06-03, Gothenburg, Sweden Part of collection Institutional Repository Document type conference paper Rights © 2018 A.A. Sawant, Maurício Aniche, A. van Deursen, A. Bacchelli Files PDF deprecation_interview.pdf 1.17 MB Close viewer /islandora/object/uuid:f7a10177-82fa-4b23-ae4b-090fc9502fc9/datastream/OBJ/view