On software modernisation due to library obsolescence

Simos Gerasimou, Maria Kechagia, Dimitris Kolovos, Richard Paige, Georgios Gousios

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Software libraries, typically accessible through Application Programming Interfaces (APIs), enhance modularity and reduce development time. Nevertheless, their use reinforces system dependency on third-party software. When libraries become obsolete or their APIs change, performing the necessary modifications to dependent systems, can be time-consuming, labour intensive and error-prone. In this paper, we propose a methodology that reduces the effort developers must spend to mitigate library obsolescence. We describe the steps comprising the methodology, i.e., source code analysis, visualisation of hot areas, code-based transformation, and verification of the modified system. Also, we present some preliminary results and describe our plan for developing a fully automated software modernisation approach.

Original languageEnglish
Title of host publicationProceedings - 2018 ACM/IEEE 2nd International Workshop on API Usage and Evolution, WAPI 2018
PublisherIEEE Computer Society
Pages6-9
Number of pages4
VolumePart F138314
ISBN (Print)9781450357548
DOIs
Publication statusPublished - 2 Jun 2018
EventACM/IEEE 2nd International Workshop on API Usage and Evolution, WAPI 2018, co-located with the 40th International Conference on Software Engineering, ICSE 2018 - Gothenburg, Sweden
Duration: 2 Jun 2018 → …

Conference

ConferenceACM/IEEE 2nd International Workshop on API Usage and Evolution, WAPI 2018, co-located with the 40th International Conference on Software Engineering, ICSE 2018
Country/TerritorySweden
CityGothenburg
Period2/06/18 → …

Bibliographical note

© 2018 Association for Computing Machinery. This is an author-produced version of the published paper. Uploaded in accordance with the publisher’s self-archiving policy. Further copying may not be permitted; contact the publisher for details.

Keywords

  • application programming interfaces
  • Library evolution
  • Software libraries
  • Software modernization
  • Visualisation

Cite this