Red Hat Research Quarterly

A summer in Europe: US students thrive in open source research opportunities abroad

Red Hat Research Quarterly

A summer in Europe: US students thrive in open source research opportunities abroad

about the author

Patrick Harris

Patrick Harris is studying Computer Science at Baylor University. He has been recognized on the Baylor University Dean’s List and received scholarship awards including the Baylor Computer Science Scholarship and the Baylor Association of Computing Machinery Scholarship. His research interests include the visualization of distributed systems and the security of computer systems.

about the author

Mia Gortney

Mia Gortney is studying Computer Science at Baylor University. She received the Computer Science Scholarship Award in Spring 2022 and has been featured on the Baylor University Dean’s List. Her research interests include static and dynamic code analysis and visualization.

Article featured in

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.


3D representation of a microservice-based System using Three JS

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.

Toward the end of our first month and throughout our second month in Prague at Czech Technical University, we developed a visualization prototype. The main objective of the prototype was to develop a framework to visualize microservice architecture in a holistic and interactive manner.We wanted to frame the visualization in a lightweight web application, so JavaScript seemed like a good choice. Utilizing JavaScript allowed us to rely on visualization libraries that served as the foundation for our prototype. We chose D3 as it provided a two-dimensional force-directed graph and Three JS because it provided the capabilities for a force-directed graph in three-dimensional space. 


2D representation of a microservice-based system using D3 JS

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. 

The research opportunity this summer provided us with valuable practical experience in our field and new cultural experiences outside the United States. Neither of us had previous experience with microservices, but delving into research in this area allowed us not only to learn about a relevant field in the industry right now but also to solve real-world issues and ultimately help advance microservice technologies. Developing a prototype allowed us to enrich our JavaScript skills, which has proven very useful as we are using JavaScript for the front end of our group project in Software Engineering II this semester. Finally, it is important to highlight how key the cultural immersion was in expanding our worldviews and illustrating how unique and beautiful different areas of the globe are. We had an absolute blast this summer, and we are very thankful to Dr. Černý, Mr. Tišnovský, Red Hat, Czech Technical University, and all the amazing people we met during our travels for the experience of a lifetime.

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.”

SHARE THIS ARTICLE

More like this