Microservice system solutions are driving digital transformation; however, fundamental tools and system perspectives are missing to better observe, understand, and manage these systems, their properties, and their dependencies. Microservices architecture leads towards decentralization, which implies many advantages to system operation; it, however, brings challenges to their development. Microservice systems often lack a system-centric perspective that would help engineers better cope with system evolution and quality assessment. In this work, we explored microservice-specific architecture reconstruction based on static analysis. Such reconstruction typically results in system models to visualize selected system-centric perspectives. Conventional models involve 2D methods; however, these methods are limited in utility when services proliferate. We considered various architectural perspectives relevant to microservices and assessed the relevancy of the traditional method, comparing it to alternative data visualization using 3D space. As a representative of the 3D method, we considered a 3D graph model presented in augmented reality. To begin testing the feasibility of deriving such perspectives from microservice systems, we developed and implemented prototype tools for software architecture reconstruction and visualization of compared perspectives. Using these prototypes, we performed a small user study with software practitioners to highlight the potentials and limitations of these innovative visualizations used for common practitioner reasoning and tasks.
翻译:微服务系统结构导致权力下放,这意味着系统运作有许多好处;然而,这给微服务系统的发展带来了挑战。微服务系统往往缺乏一个系统中心视角,它有助于工程师更好地应对系统演变和质量评估。在这项工作中,我们探讨了基于静态分析的微服务特定架构重建。这种重建通常导致系统模型,以可视化选定的系统中心视角。常规模型涉及2D方法;然而,当服务激增时,这些方法在效用上有限。我们考虑了与微服务有关的各种建筑视角,评估了传统方法的适切性,用3D空间将它与替代数据可视化进行比较。我们作为3D方法的代表,审议了3D方法提出的3D图表模型。为了开始测试从微服务系统获取这种视角的可行性,我们开发并实施了软件结构重建和可视化观点对比的原型工具。使用这些原型模型,我们与软件业者进行了小型用户研究,以突出用于视觉化的通用思维方式的潜力和局限性。