Microservice-based systems are often complex to understand, especially when their sizes grow. Abstracted views help practitioners with the system understanding from a certain perspective. Recent advancement in interactive data visualization begs the question of whether established software engineering models to visualize system design remain the most suited approach for the service-oriented design of microservices. Our recent work proposed presenting a 3D visualization for microservices in augmented reality. This paper analyzes whether such an approach brings any benefits to practitioners when dealing with selected architectural questions related to system design quality. For this purpose, we conducted a controlled experiment involving 20 participants investigating their performance in identifying service dependency, service cardinality, and bottlenecks. Results show that the 3D enables novices to perform as well as experts in the detection of service dependencies, especially in large systems, while no differences are reported for the identification of service cardinality and bottlenecks. We recommend industry and researchers to further investigate AR for microservice architectural analysis, especially to ease the onboarding of new developers in microservice~projects.
翻译:微服务系统通常难以理解,尤其是当其规模增大时。抽象化视图有助于从业者从特定角度理解系统。交互式数据可视化的最新进展引发了一个问题:在面向服务的微服务设计中,已有的软件工程模型是否仍然是可视化系统设计的最合适方法。我们近期的工作提出了在增强现实中为微服务呈现3D可视化的方法。本文分析了这种方法在处理与系统设计质量相关的特定架构问题时,是否能给从业者带来实际益处。为此,我们开展了一项包含20名参与者的受控实验,考察他们在识别服务依赖、服务基数及系统瓶颈方面的表现。结果表明,3D可视化使新手在检测服务依赖(尤其是在大型系统中)时能达到与专家相当的水平,而在服务基数和瓶颈识别方面未发现显著差异。我们建议工业界和研究者进一步探索增强现实在微服务架构分析中的应用,特别是用于简化微服务项目中新开发者的入职过程。