A Conceptual Framework for API Refactoring in Service-Oriented Architectures

Fabrizio Montesi, Marco Peressotti, Valentino Picotti, Olaf Zimmermann [2025].
In proceedings of ESOCC 2025, pp. 181-196.

Abstract
In the lifetime of a service-oriented architecture, the Application Programming Interfaces (APIs) offered by services may need to be refactored in order to adapt to changing business and technical requirements. Previous studies focused on the effects that such API refactorings have on API definitions, with general considerations on related forces and smells. By contrast, the development strategies for realising these refactorings have received little attention. This paper addresses this aspect. We introduce EMI, a conceptual framework for the implementation of API refactorings. Our framework is designed to elicit the trade-offs and choices that significantly affect the efficiency, maintainability, and isolation of the resulting architecture. We evaluate our framework by evolving a use case through the implementation of several refactorings, illustrating the different implementation choices that can be made. Based on our experience, we illustrate how to derive mechanical recipes for API refactoring that can follow different strategies in our framework.
Links
doi.org
Additional notes
None
Cite (BibTeX)
Click to expand
@inproceedings{DBLP:conf/esocc/MontesiPPZ25,
  author       = {Fabrizio Montesi and
                  Marco Peressotti and
                  Valentino Picotti and
                  Olaf Zimmermann},
  editor       = {Claus Pahl and
                  Andrea Janes and
                  Tom{\'{a}}s Cern{\'{y}} and
                  Valentina Lenarduzzi and
                  Matteo Esposito},
  title        = {A Conceptual Framework for {API} Refactoring in Service-Oriented Architectures},
  booktitle    = {Service-Oriented and Cloud Computing - 11th {IFIP} {WG} 6.12 European
                  Conference, {ESOCC} 2025, Bolzano, Italy, February 20-21, 2025, Proceedings},
  series       = {Lecture Notes in Computer Science},
  volume       = {15547},
  pages        = {181--196},
  publisher    = {Springer},
  year         = {2025},
  url          = {https://doi.org/10.1007/978-3-031-84617-5\_15},
  doi          = {10.1007/978-3-031-84617-5\_15},
  timestamp    = {Thu, 27 Feb 2025 15:45:25 +0100},
  biburl       = {https://dblp.org/rec/conf/esocc/MontesiPPZ25.bib},
  bibsource    = {dblp computer science bibliography, https://dblp.org}
}

A PDF is available (possibly a preprint):

Download PDF