Microservice Granularity and Development Overhead

Publicerad

Typ

Examensarbete för masterexamen
Master's Thesis

Modellbyggare

Tidskriftstitel

ISSN

Volymtitel

Utgivare

Sammanfattning

Microservices have become more prevalent recently, with several large enterprises adopting them. Microservices promise many advantages, but there are also challenges involved with deciding on their granularity, and this decision has many effects. The thesis explored through an investigative case study whether practitioners at one organisation perceived that a finer-grained microservice architecture resulted in additional work, and it was concluded that they did. Notably, they pointed out that intentionally suboptimal granularity decisions were frequently taken in the interest of time for services with rapidly changing requirements, and that this in part was due to the additional difficulty of splitting the service. Quantitative data from these practitioners’ organisation back this up. Other key results supported by both quantitative and qualitative data from the organisation are that the type of the microservice impacts how the granularity changes over time — that a small subset of microservices with rapidly changing requirements grow large, while most microservices tend to stay the same size after initial development work is done. It is then discussed how this growth can be seen as architectural technical debt caused partly by organisational processes, and that it would be beneficial for the organisation to consider this when planning. This adds further support to literature claiming that organisational processes are crucial for microservice development and that there are additional potential disadvantages beyond the immediately obvious to using microservices, and that it is crucial to consider carefully whether the advantages truly outweigh the disadvantages before choosing to use a microservice architecture, especially for smaller systems.

Beskrivning

Ämne/nyckelord

software engineering, architecture, technical debt, microservice, granularity, overhead, extra work

Citation

Arkitekt (konstruktör)

Geografisk plats

Byggnad (typ)

Byggår

Modelltyp

Skala

Teknik / material

Index

item.page.endorsement

item.page.review

item.page.supplemented

item.page.referenced