Bibliography | Wójcik, Pawel: Towards empirical evidence for the impact of microservice API patterns on software quality: a controlled experiment. University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Master Thesis No. 44 (2023). 61 pages, english.
|
Abstract | Encapsulating parts of a software system into separate, small, independent modules, called microservices, is currently very popular in software development. Design patterns are templates that can help professionals to solve commonly occurring problems. Currently, there exists only a sparse amount of empirical evidence that supports the positive impact on the quality of a software, by incorporating the quite newly defined Microservice API patterns. Therefore, the purpose of this research is to examine the impact of 6 chosen Microservice API patterns on software quality, with a conducted controlled experiment with 65 participants. For each of the six design patterns, two tasks were created. Each task has a Pattern version P, where the scenario actively uses one of the six design patterns, and a Non-Pattern version N, where an almost identical scenario was constructed without the use of the respective pattern. For the web-based online survey, the participants were randomly put into one of two groups. Depending on the group, different task versions were shown to the participants. A crossover design with a fixed task order was used. The participants were asked to answer 12 comprehension questions. The correctness and the needed time for responding were tracked and aggregated for the analysis into one variable: Timed Actual Understandability (TAU). The results show that for five out of six Microservice patterns, the software quality was indeed increased significantly. Only the Request Bundle pattern did not increase the software quality significantly. The effect size for all significant findings was of either medium or small size. The results of this research provide empirical evidence for the improvement of two software quality attributes. Further research is needed if a generalization to a broader set of design patterns or to additional quality attributes is desired. Additionally, future research could focus on tasks in which several design patterns are combined, to get results for scenarios that are closer to environments in practice.
|