# On Microservice Analysis and Architecture Evolution:
## 5 Results and Discussion
### RQ2: Goals Addressed by the Papers  
The main goal we found was that of fault analysis, either by detecting and preventing faults [2; 30; 41; 42; 44; 45; 46; 53], or determining their origin through root cause analysis [43; 47; 52; 54; 55; 2]. It is apparent that identification of the cause is important, especially given that microservices run large enterprise systems. Failures in such systems has major economic impacts, whether the users cannot access it or the cloud resource demands peak due to an error. Still, it is a challenge to perform detection in real time, and many challenges remain, as we discuss later when answering RQ4.  
Another common topic addressed was migration to microservice-based architectures either by providing tools to decompose monolithic architectures into microservices [15; 16; 19; 32; 50; 56] or to assist in deciding if migration is beneficial and feasible [48; 49; 64]. Although we could assume a silver bullet by now when it comes to the design of microservice systems, there is no perfect guidance for engineers managing legacy systems.  
Identifying or resolving technical debt in a microservice architecture [29; 39; 63] is an interesting research direction of significant impact. We expect this specific research to grow significantly in the next few years as consequences of system evolution impact the operational budget.  
Other goals involve analysis of the software architecture [14; 28]. Several works discuss the inherent challenges in analyzing microservices versus other architectures such as monolithic systems, or SOA [1; 63]. Several works propose methods of software architecture reconstruction on microservice systems [26; 34; 57], which is especially important to help reason about the system. Software architecture can be represented through various views serving that represent the system slightly differently, meeting the needs of distinct stakeholders.  
Overlapping with technical debt and architecture analysis is the goal of streamlining and protecting the process of microservice evolution. Works performing SAR [26; 34; 57] combat evolutionary problems by providing the user with an up-to-date view of system architecture, giving insights that can prevent architectural degradation. Antipatterns and code smells that threaten sustainability have also been addressed [27; 28; 29; 31], as has the issue of accumulating technical debt [65; 63]. In addition, some works improve the evolutionary outlook of a system by addressing maintainability metrics [39] or performance degradation [40].  
It is quite common to see research addressing various quality concerns of microservices such as security [30; 59] or performance [12; 35; 36; 39; 40; 58]. We must recall that software  
\begin{table}
\begin{tabular}{l l l} \hline \hline
**Method** & **References** & **Total** \\ \hline Static analysis & [14; 15; 16; 17; 18; 19; 20; 21; 22; 23; 24; 25; 26; 28; 29; 30; 31] & 17 \\ \hline Dynamic analysis & [12; 29; 32; 33; 34; 35; 36; 37; 38; 39; 40; 43; 44; 22; 43; 45; 46] & 22 \\ \hline \(\hookrightarrow\)_Log analysis_ & [35; 40; 44; 46] & \(\hookrightarrow\) 4 \\ \hline \(\hookrightarrow\)_Execution trace analysis_ & [33; 35; 43; 44] & \(\hookrightarrow\) 4 \\ \hline Graph-based analysis & [25; 26; 27; 28; 29; 36; 40; 52; 53; 54; 55; 24; 55; 25; 26; 51; 56; 57; 52; 58; 50; 52; 54; 53; 55] & 14 \\ \hline Model-based techniques & [51; 56; 57; 58; 59; 60; 61; 62] & 8 \\ \hline Pattern-based analysis & [27; 28; 29; 30; 31; 61; 62] & 7 \\ \hline \hline \end{tabular}
\end{table}
Table 5: Works relevant to RQ1.  
architecture is the frame for various software qualities. The primary reason to use cloud-native systems might be the performance for some. At the same time, security cannot be omitted. However, there are many other aspects to this not mentioned directly, such as maintainability, which drives the whole category of evolution.  
Finally, many works [1, 14, 63, 64, 65] have performed survey on the state of the art on related topics. Table 6 summarizes specific goals assessed in this study.