09 Jun 2025
10:00 Master's Defense Room 85 of IC2
Topic on
Guiding microservice decomposition through performance and modularity analysis
Student
Gustavo Frederico Temple Pedrosa
Advisor / Teacher
Breno Bernard Nicolau de França - Co-supervisor: Bruno Barbieri de Pontes Cafeo
Brief summary
Background: The architectural shift from monolithic to microservice-based systems has driven the development of several decomposition techniques to achieve modularity and fine-grained services. However, these approaches often rely on practitioners’ intuition and neglect performance as a quality attribute. This lack of performance-focused guidance contributes to subjective decisions regarding microservice granularity, running the risk of creating oversized microservices that harm long-term maintainability. Objective: This study presents a novel method to refine microservice granularity by weighting dynamic performance requirements and, subsequently, static attributes such as coupling and cohesion. The proposed method, Granify, provides evidence-based criteria for identifying and refining service boundaries while ensuring performance and modularity. Method: Our research approach encompasses a literature review and gap analysis, the development of a method to guide microservice decomposition by combining dynamic analysis to identify high-performance features with subsequent static analysis to improve cohesion and reduce coupling between services, and a feasibility study and evaluation of five microservices in two open-source industrial applications. Results: Empirical results indicate that high-level feature decomposition produces microservices with improved metrics such as Strict Service Implementation Cohesion and Lack of Message-level Cohesion, as well as reduced Afferent and Efferent Coupling, alleviating the overhead of computational resources, enabling efficient request handling, and reducing response time by up to 65%. Conclusion: The proposed approach provides a performance-focused method to refine the granularity of microservices. The integration of dynamic and static analysis aids in the decomposition of maintainable microservices. Furthermore, the method may lead to new tools and techniques for managing the evolution of microservice architectures.
Examination Board
Headlines:
Breno Bernard Nicolau de França IC / UNICAMP
Wesley Klewerton Guêz Assunção North Carolina State University
Edson Borin IC / UNICAMP
Substitutes:
Luiz Fernando Bittencourt IC / UNICAMP
Edna Dias Canedo CIC / UnB