Microservice Granularity and Development Overhead

dc.contributor.authorWarfvinge, Philip
dc.contributor.departmentChalmers tekniska högskola / Institutionen för data och informationstekniksv
dc.contributor.departmentChalmers University of Technology / Department of Computer Science and Engineeringen
dc.contributor.examinerHeyn, Hans-Martin
dc.contributor.supervisorAyas, Hamdy Michael
dc.date.accessioned2025-04-23T11:36:00Z
dc.date.issued2025
dc.date.submitted
dc.description.abstractMicroservices 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.
dc.identifier.coursecodeDATX05
dc.identifier.urihttp://hdl.handle.net/20.500.12380/309279
dc.language.isoeng
dc.relation.ispartofseriesCSE 24-142
dc.setspec.uppsokTechnology
dc.subjectsoftware engineering, architecture, technical debt, microservice, granularity, overhead, extra work
dc.titleMicroservice Granularity and Development Overhead
dc.type.degreeExamensarbete för masterexamensv
dc.type.degreeMaster's Thesisen
dc.type.uppsokH
local.programmeSoftware engineering and technology (MPSOF), MSc

Ladda ner

Original bundle

Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
CSE 24-142 PW.pdf
Storlek:
1.47 MB
Format:
Adobe Portable Document Format

License bundle

Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
license.txt
Storlek:
2.35 KB
Format:
Item-specific license agreed upon to submission
Beskrivning: