This paper presents a study that explores the use of augmented reality (AR) as a visualization tool for microservices in service-oriented design. Microservice-based systems can be complex to understand, especially as they grow in size, and abstracted views can help practitioners gain system understanding from a certain perspective. Recent advancements in interactive data visualization have led to questions about whether established software engineering models remain the most suited approach for visualizing system design in microservices. The study proposes presenting a 3D visualization for microservices in AR and analyzes whether such an approach brings any benefits to practitioners when dealing with selected architectural questions related to system design quality. The experiment followed a 2x2 crossover design where each participant group used both visualization tools - 2D and AR. The participants were balanced based on system size and experience level, with ten small and ten large systems, and novice and experienced participants assigned to each system. The study aimed to prevent one tool from exerting more influence than the other by using abstract names for the two tools. Additionally, the order of tool execution was randomly ordered so that some participants completed the study in reverse order from others. The experiment duration was one hour, which included ten minutes for training, thirty minutes for executing the experiment and answering tasks related to identifying service dependency, service cardinality, and bottlenecks, and ten minutes for filling out feedback forms. The feedback step consisted of usage-related criteria questions using an ordinal 5-point Likert scale (1 is worst; 5 is best) and open-opinion questions that were analyzed to extract common thoughts and recommendations. Results show that the 3D visualization enables novices to perform as well as experts in detecting service dependencies, especially in large systems while no differences are reported for identifying service cardinality or bottlenecks. Due to compatibility issues with six participants' mobile devices not meeting minimum OS requirements (minimum Android 8 or iOS 11), they struggled to use the AR tool resulting in a lack of AR tool results for four small and two large participants; therefore participant assignments were slightly adjusted. In conclusion, the study recommends industry and researchers further investigate AR for microservice architectural analysis, especially to ease the onboarding of new developers in microservice projects. The assessment of the procedure indicated that all participants were able to carry out the 2D experiment successfully; nonetheless six participants could not install the AR tool due to compatibility issues with their mobile devices.
- - The study explores the use of augmented reality (AR) as a visualization tool for microservices in service-oriented design.
- - The experiment followed a 2x2 crossover design where each participant group used both visualization tools - 2D and AR.
- - The study aimed to prevent one tool from exerting more influence than the other by using abstract names for the two tools and randomly ordering the order of tool execution.
- - Results show that the 3D visualization enables novices to perform as well as experts in detecting service dependencies, especially in large systems while no differences are reported for identifying service cardinality or bottlenecks.
- - Due to compatibility issues with six participants' mobile devices not meeting minimum OS requirements, they struggled to use the AR tool resulting in a lack of AR tool results for four small and two large participants; therefore participant assignments were slightly adjusted.
- - The study recommends industry and researchers further investigate AR for microservice architectural analysis, especially to ease the onboarding of new developers in microservice projects.
The study looked at using a special tool called augmented reality (AR) to help people understand how different parts of a computer program work together. The researchers had two groups of people use both the AR tool and a regular 2D tool to see which one was better. They made sure that each group used both tools in a fair way. The results showed that the AR tool was especially good for helping beginners understand big programs, but some people had trouble using it because their phones were too old. The researchers think that more people should study how AR can help with computer programs, especially for new developers who are just starting out.
Definitions- Augmented reality (AR): A technology that adds digital elements to what you see in the real world.
- Microservices: A way of designing computer programs by breaking them down into small, independent parts.
- Visualization: Creating pictures or diagrams to help explain something.
- Crossover design: An experimental design where participants try different things in different orders to make sure the results are fair.
- Dependencies: When one part of a program needs another part in order to work correctly.
- Cardinality: How many things are connected to each other in a program.
- Bottlenecks: Places where a program slows down or gets stuck because there is too much work happening at once.
Augmented Reality as a Visualization Tool for Microservices in Service-Oriented Design
Microservice-based systems can be complex to understand, especially when they grow in size. Abstracted views can help practitioners gain system understanding from a certain perspective, and recent advancements in interactive data visualization have led to questions about whether established software engineering models remain the most suited approach for visualizing system design in microservices. A study was recently conducted to explore the use of augmented reality (AR) as a visualization tool for microservices in service-oriented design.
The Study
The study proposed presenting a 3D visualization for microservices in AR and analyzed whether such an approach brings any benefits to practitioners when dealing with selected architectural questions related to system design quality. The experiment followed a 2x2 crossover design where each participant group used both visualization tools - 2D and AR. The participants were balanced based on system size and experience level, with ten small and ten large systems, and novice and experienced participants assigned to each system.
In order to prevent one tool from exerting more influence than the other, abstract names were used for the two tools; additionally, the order of tool execution was randomly ordered so that some participants completed the study in reverse order from others. The experiment duration was one hour which included: 10 minutes training; 30 minutes executing tasks related to identifying service dependency, service cardinality, and bottlenecks; 10 minutes filling out feedback forms.
Results & Conclusion
The results showed that 3D visualization enabled novices to perform as well as experts in detecting service dependencies – especially in large systems – while no differences were reported for identifying service cardinality or bottlenecks. Unfortunately due compatibility issues with six participants' mobile devices not meeting minimum OS requirements (minimum Android 8 or iOS 11), they struggled using the AR tool resulting lack of AR tool results for four small and two large participants; therefore participant assignments were slightly adjusted accordingly.
In conclusion, this study recommends industry professionals further investigate AR for microservice architectural analysis – particularly its ability ease onboarding new developers into projects involving microservice architecture designs– given its potential advantages over traditional methods of software engineering model approaches currently employed by many organizations today..