What do visualizing microservice architecture and the Punkva Caves have to do with each other? Two summer visitors to Brno can explain.
Summer 2022 marked the fourth time professor Tomáš Černý brought promising undergraduate students from his home institution, Baylor University in Waco, Texas, USA, to the Czech Republic for an innovative research program sponsored in part by the US National Science Foundation. Students split their time between Czech Technical University in Prague and the offices of Red Hat Research in Brno.
Mia Gortney and Patrick Harris are student researchers associated with the Baylor University Department of Computer Science. Mia and Patrick are both Texas natives and had never left the United States before this program. They were offered this opportunity by Dr. Černý and did not hesitate to accept. In this article, they describe their experience with Red Hat, the Czech Republic, and open source research.
Our first month in Czechia was spent in Brno, working alongside Red Hat employees. The main focus of our research was visualizing microservice architecture from the dynamic perspective. While in Brno, we focused on composing research into a mapping study to illustrate work that has been done on the topic. We worked with Red Hat quality assurance engineer Pavel Tišnovský and Dr. Černý to compile a list of articles, which were then filtered based on inclusion and exclusion criteria. After reading through these articles, we more clearly defined our topic into three subtopics: dynamic analysis techniques, tools that accomplish these techniques, and visual perspectives generated by these tools. Using the knowledge acquired through our research, we composed a literature review that has now been submitted to ICSOC and IEEE Access. We are currently waiting to hear from IEEE Access with hopes of getting published.
Throughout this research process, Mr. Tišnovský and Red Hat as a whole were extremely helpful to us. They provided access to their facility and research knowledge from an industry perspective. Through them, we were invited to attend DevConf.CZ 2022, a conference centered around software development. We also got the opportunity to listen to a research presentation given by Dr. Černý to the Red Hat staff. Being in this work environment for the first month was extremely beneficial to us as student researchers. We gained more insight into microservice systems and applied that knowledge to a mapping study and a prototype.
Starting with just a loose connection of nodes and links supplied by the libraries, we added and built many custom features to better handle the visualization of microservice-based systems. Within a few weeks, we had implemented interactive searching, different node shapes to differentiate between system parts, dynamic coloring to highlight areas of high coupling, information boxes to describe each node, a right-click context menu to better interact with nodes, and even features aimed at predicting the impact of changes throughout a system’s evolution.
One of the most important steps was collaborating with our other peers to create a high-level JSON schema that can describe a service-level dependency view of a microservice system. This schema serves as the input for our prototype, translating a static description of a system into a dynamic, interactive graph. Ultimately, by using the knowledge gained from the mapping study, we were able to quickly develop a proof-of-concept prototype that abstractly visualizes a microservice-based system and addresses gaps we identified in current research.
Since returning to the United States, we have continued our research into visualizing microservice systems from the dynamic perspective. We are currently refining an institutional review board (IRB) study for approval, centering around whether a two-dimensional or three-dimensional view is more beneficial for the user when visualizing a microservice system. Once the study is approved, we are going to conduct it with 30 experts in microservice systems to discover which view we should focus on and refine further. We are also redeveloping our three-dimensional prototype so the visual is cleaner and the features are more extended. We are working with other IRES (International Research Experience for Students) research groups that focus on architectural languages, provenance tracking, and anti-pattern detection to incorporate their tools into our own prototype. By the end of the year, we should have a new and improved prototype to effectively visualize distributed systems. Anyone interested can contact us at Mia_Gortney1@baylor.edu and Patrick_Harris3@baylor.edu.
Over the course of the summer, we had the opportunity to visit many incredible places. During the week, we would work our six-hour day and then explore Brno or Prague in the evenings. While in the Czech Republic, we visited the Punkva Caves and participated in a paintball game at Army Park Orechov outside Brno. We also visited the Astronomical Clock and several other historical buildings in Brno and Prague. On the weekends, we would travel by plane or train to other countries. In our first weekend, we visited Budapest, Hungary, and Vienna, Austria, back to back. The following weekend, we went to Bratislava, Slovakia, and later we traveled to Kraków, Poland, and Munich, Germany. Towards the end of the summer, we visited London, Zurich, and Paris. We also visited three places in Italy: Milan, Venice, and Rome. Without this research opportunity presented by Baylor University in collaboration with Red Hat, there is no way we would have been able to visit all of these countries in such a short amount of time. The amount of culture we got to experience all over Europe is something we will never forget.
Dr. Černý spoke to RHRQ about microservices research and his student research initiative in an interview in RHRQ 4:2, “From Brno to Waco: On cross-cultural exchange, microservice evolution, and quality assurance.”