Source: Donald Yip

Improving Agility by Managing Shared Libraries in Microservices

Authors

Saulo S. de Toledo, Antonio Martini, and Dag I. K. Sjøberg

University of Oslo, Norway

Chaperones

Florian Rademacher

IDiAL Institute, University of Applied Sciences and Arts Dortmund

Abstract

Microservices is a way of doing agile architecture that is increasingly gaining popularity. However, if the microservices development is not properly managed, the teams development velocity may be affected, reducing agility and increasing architetural technical debt. This paper investigates how to manage the use of shared libraries in microservices to improve agility during development. We interviewed practitioners from four large international companies involved in microservices projects to identify problems when using shared libraries. We found that the participating companies had issues with shared libraries as follows: coupling among teams, delays on fixes due to overhead on libraries development teams, and need to maintain many versions of the libraries. Our results highlight that the use of shared libraries may hinder agility on microservices. Thus, their use should be restricted to situations where shared libraries cannot be replaced by a microservice and the costs of replicating the code on each service is very high.


Versions of the article

Latests

Link to the article (Version 1)

Previous versions

Version 0