Font Size: a A A

Research On Architecture Smell Detection For Microservice Applications

Posted on:2021-05-19Degree:MasterType:Thesis
Country:ChinaCandidate:J Q LiFull Text:PDF
GTID:2428330647450844Subject:Software engineering
Abstract/Summary:PDF Full Text Request
As a research hotspot in the field of software architecture,microservices architecture has many advantages such as independent service deployment and on-demand system scalability.However,there are many challenges in designing microservices architecture,such as services granularity and tight coupling between services,which greatly affect the maintainability of microservice-based applications.Architectural smells are architectural design decisions that negatively affect architectural quality attributes.Researches show that recurring architectural smells challenge the maintenance of software systems,and identifying and analyzing architectural smells can help improve system maintainability.At present,the research on microservices architecture smells only focuses on architectural patterns and related technical practices,paying less attention to the architectural smells of microservices.This study focuses on the architectural smells detection in microservices architecture to identify the problems in architecture,so as to assist architects in evaluating their microservices architecture design,and to improve the maintainability of microservices applications.This thesis defines and formalizes three microservices architecture smells,namely Hub-Like Dependency,Cyclic Dependency and Modularity Violation.Meanwhile,the corresponding smell detection algorithm is proposed,with a tool MASD to instantiate the specific smells detection process.Among them,Hub-Like Dependency and Cyclic Dependency are the call dependencies between microservices,while Modularity Violation is the implicit dependencies between microservices.By analyzing call dependencies and implicit dependencies among microservices,this study helps architects identify tight coupling between microservices.In addition,a microservice-based software system from communication technology is selected as a case to demonstrate how smell detection result can assist architects in identifying problems in microservices architecture.The case study also analyzes the correlation between smell detection results and the maintainability of each microservice,and the results show that both the HubLike Dependency and Modularity Violation are significantly correlated with software system maintainability,and the Modularity Violation are more strongly correlated with the maintainability of the software system.Therefore,the architecture smell detection method we proposed can help architects identify problematic microservices,so as to evaluate and improve the microservices architecture.
Keywords/Search Tags:Microservice, Architecture Smell Detection, Call Dependency, Implicit Dependency
PDF Full Text Request
Related items