1 of 1

DevOps is innovating the world of software development, optimising efficiency, improving stability while maintaining a focus on people as it becomes more widely adopted by mainstream tech companies. Its practice consists of a vast range of real world tools as well as abstract concepts. As such, DevOps is not typically taught as an exact subject for Software Developers in third level education and is seen as something that has to be both learned and experienced. Virtual Reality based learning offers the user an immersive simulation of concepts, ideas and experiences. Learning in virtual reality can be achieved through both active participation by the user inside a simulated world or by observing the actions of artificially controlled NPCs. This project aims to utilise this sensory enriched learning environment to teach the practice of DevOps concepts and tools through virtual reality in a simulated 3D world by observing simulated AI characters and participating in VR Games.

This project is set in a virtual IT software company office with AI controlled employees whose decisions are controlled by behavioural trees. Each employee represents a member of one of the four teams along the development process. The player can either observe the DevOps practices of the employees such as the morning scrum meeting, the creation, development, testing and completion of user stories and the interactions with the Kanban board or actively take on the role of one of the virtual employees and complete one of four mini games to move the ticket along the development process.

This project resulted in players being able to experience a hands on approach to DevOps and agile practices. It introduced many of the crucial concepts and tools required in the practice of DevOps and retained the player's attention through the gamification of the process.

Abstact

Objectives

This project utilised the immersive nature of Virtual Reality as a means of teaching DevOps by both participation and observation.

The core method behind teaching by observing in this project was by creating AI controlled Agents that used a Behaviour Tree to make decisions. These leaf node decisions were fully animated actions taken by the agents. Selection of these leaf nodes was made by the “Selector” and “Sequencer” nodes throughout the behaviour tree. The player learned DevOps practices by observing scrum meetings, interactions with the kanban board and the journey a user story has from inception to development to test to release.

Materials and Methods

As the idea of teaching DevOps through virtual reality was initially conceived by Brendan O'Reilly this project was a proof of concept for the validity of this methodology for teaching DevOps. The two main conceptual teaching methods in the game are learning by observing and learning by doing.

The concept of learning by observing in this project was achieved by how the NPCs interacted with each other and the Kanban board. Each NPC had a behaviour tree controlling their decisions. These NPCs demonstrated their role within the development process. The player could observe the product owner creating the user story and then placing it in the backlog on the Kanban board for the developer to pull into the in dev swim lane, work on the ticket and then place it into the tested swimlane. From here it could be observed that the member of the testing team went to test the ticket. Once the test had completed, the ticket was either moved backwards into in dev as it had failed or forwards into the release swimlane where the release team would proceed to work on the tickets final stage and move it into done.

This simulation is an accurate representation of how a user story goes through the development process including the tools used to display this process. This demonstrates to a student in third level education the step by step procedure of software development that they can observe in its entirety and with the freedom to move to the different teams to see exactly what they are doing as well as being able to move to the Kanban board and fully observe the movement of tickets to different swimlanes depending on their development stage.

I believe as a proof of concept this aspect of the simulation was a success as it gave an immersive insight into how an IT Company is run and the development process within it. However, where there is room to increase the learning capabilities of the simulation, a more elaborate UI displaying the work progress, the testing having failed or passed etc would give the player more visual signs as to the current state of the development.

The concept of learning by participation in this project was achieved by how the player interacted with the 3D environment, specifically the tickets on the Kanban board and the mini games in each of the four teams' office areas.

The combination of the player actually being able to pick up a ticket in the simulation, walk over to place it on the Kanban board and watch as the NPCs take the ticket from there and continue the development process gives the player an almost real life experience on how this particular process of DevOps works. I believe the player utilising the tools of DevOps in virtual reality like this, alongside his virtual coworkers is the best way of teaching DevOps and is an area that could be expanded upon greatly.

The interactive mini games included basketball, matching shapes and colors, observing the current tickets in testing and manually testing them on the computer in the upstairs office and knocking cups with a baseball. It is my evaluation that the more traditional mini games (Basketball and Knock the cups) were the most fun to participate in, however the testing mini game of actually observing the ticket number and proceeding to test it on the computer was the least abstract mini game of the four. I believe that there is a balance that can be struck between fun and realistic development that could increase learning and entertainment simultaneously.

My final evaluation is that this project serves as a great proof of concept for one of Brendan O'Reilly courses. Bringing DevOps learning to VR has shown to be a fun and insightful learning experience. The many promising ideas inside this project demonstrate viability for teaching DevOps in VR, this also leaves the opportunity open for expanding on them with a full team of developers and making a fully robust commercial product adapted form one of Brendan’s DevOps courses.

Resullts

Conclusions

Virtual Reality is an extremely engaging way of teaching someone through an experience that can be both practically complex as well as conceptually. This can be achieved by both passively observing the simulation or utilising surreal experiences (i.e basketball in the middle of an office) to retain the users attention and enjoyment.

The world is rapidly moving more and more into the digital space with more people than ever working from home, Virtual Reality learning offers an alternative to real life interactions / inductions that has the least amount of compromises that other forms of communication are burdened with. In a simulated world with real life simulated scenarios accompanied by AI agents you can offer someone a real life learning experience that is unmatched by simply reading a book or watching a video and in many cases impossible to experience without costly travel to the real life locations.

While VR learning is currently being underutilised in many professional areas we are seeing increased adoption to the format over time and while the VR equipment itself gets cheaper and less cumbersome and employers and tutors see just how beneficial the learning is in this practice the rate of adoption shows all signs of increasing.

The initial inception of this project was a proof of concept for a commercial VR DevOps learning experience adapted from one of Brendan O'Reilly's DevOps courses. This project has demonstrated there is huge value in bringing DevOps training to virtual reality. This would also mean that Brendan’s courses on DevOps could be much more widely distributed as they could be simply downloaded or rented out to colleges. This could also facilitate remote teaching as more companies look to move their teaching online in light of the logistical complications of covid-19.

References

  1. Virtual Reality-Based Daily Scrum Meetings - Murat Yilmaz
  2. Unity XR Framework / XR Interaction Toolkit
  3. Behavior trees for AI: How they work - Chris Simpson

Acknowledgement & contact

Dr. Martin Harrigan who oversaw the project and offered excellent resources, expert insight and time throughout its duration.

Gerry Moloney for organising meetings that aided my research.

Brendan O’Reilly for his resources / professional knowledge of DevOps.

The core objective of the project is to present a fully immersive VR simulation demonstrating the practice of DevOps within a company. This core goal is achieved through the following objectives:

  • Creating a 3D representation of a software development company.
  • Creating AI controlled agents that each fulfill a role throughout the development process
    • Product Owner/Scrum Master
    • Developer
    • Tester
    • Release
  • Creating an environment that can be interacted and navigated by a player using a VR headset and controllers
  • Creating a mini game for each stage of development that the player can participate in to take on the role of one of the team members and contribute to the development process
  • Creating an interactive KanBan board which will act as the main hub of the game in which the player and the AI controlled agents can interact with.

IT Carlow

Tom Lloyd

Teaching DevOps Through Virtual Reality

The core method teaching by participating in this project was by allowing the VR controlled player to physically participate in the development process. The player could take on the role of any member of the development team and thus have to take on their workload. To gamify this process to make it a truly engaging experience the player had to complete the mini game relevant to the role he/she currently occupied.

Once these games were completed the player actively took part in the agile process by moving his ticket along the Kanban board.

RESEARCH POSTER PRESENTATION DESIGN © 2019

www.PosterPresentations.com

QUICK START GUIDE�(THIS SIDEBAR WILL NOT PRINT)

This PowerPoint template produces a standard screen size (4:3 Ratio) virtual presentation poster. You can use it to create your research poster by placing your title, subtitle, text, tables, charts and photos.

We provide a series of online tutorials that will guide you through the poster design process and answer your poster production questions. For complete template tutorials, go online to PosterPresentations.com and click on the HELP DESK tab.

To print your poster using our same-day professional printing service, go online to PosterPresentations.com and click on "Order your poster".

This is a template for a

presentation poster�Virtual�Standard Size�(4:3 Ratio)

Important: Check the template sizeBefore you start working on your poster and to avoid printing problems check that you have downloaded and that you are using the correct size template for your poster presentation.�This template can also be printed at the following sizes without distortion and without any additional formatting:�30 tall x 40 wide

36 tall x 48 wide�42 tall x 56 wide�48 tall x 64 wide

How to Zoom in and out

Use the PowerPoint zoom tool to adjust the screen magnification to view comfortably. PowerPoint provides 2 ways to zoom: �1. On the top menu bar click on the VIEW tab and then click on ZOOM. Choose the zoom percentage that works best for you. �2. For better zoom flexibility, use the zoom slider at the bottom right of the window.

Ruler and GuidesThe dotted lines on his poster template are guides. The horizontal and vertical guides will help you align your poster elements accurately. Text boxes and other elements will ”snap” to the guides and stay within the boundaries of the columns. To hide the guides go to VIEW and uncheck the Guides box.

Headers and text containersIncluded in this template are commonly used section headers such as Abstract, Objectives, Methods, Results, etc. - Click inside a section header to add its text. - To add another header, click on edge of the section box so that it is outlined. Copy and paste it. - To increase its size, click on the white circles and expand to the the desired size.

Adding content to the poster

Start by adding your text to each section without spending too much time with formatting. Use the default font size even if your text extends beyond the bottom of the poster. Continue until you have added all your content including text, graphics, photos, etc. Once you finish adding your content you can go back and format your text as needed.

  • If you run out of room, try to reduce the size of your fonts and/or the size of your graphics. If there is a lot of empty space try to increase your font sizes and the size of your graphics. The font used for references can be smaller.

Photos

You can add photos by dragging and dropping from your desktop, copy and paste, or by going to INSERT > PICTURES. Resize images proportionally by holding down the SHIFT key and dragging one of the white corner handles (dots). For a professional-looking poster, do not distort your images by stretching them disproportionally.

Quality check your graphics

Zoom in and look at your images at 100%-200% magnification. If they look clear, they will print well.

QUICK START GUIDE�(THIS SIDEBAR WILL NOT PRINT)

How to change the template colors

You can change the overall template color theme by clicking on the COLORS dropdown menu under the DESIGN tab. You can see a tutorial here: https://www.posterpresentations.com/how-to-change-the-research-poster-template-colors.html

You can also manually change the color of individual elements by going to VIEW > SLIDE MASTER. On the left side of your screen select the background master where you can change the template background, column sizes, etc.

After you finish working on the SLIDE MASTER, it is important that you go to VIEW > NORMAL to continue working on your poster.

How to change the column layout configuration

You can manually change the configuration on the columns by going to VIEW > SLIDE MASTER. You can delete columns, resize them or modify them as needed for your layout.

You can see a tutorial here: https://www.posterpresentations.com/how-to-change-the-column-configuration.html

How to hide the QUICK START GUIDE bars from the sides of the template

The Quick Start Guides are outside the template’s printable area and they will not be on the printed poster.

If you create a PDF file from your template, the guides will not be included.

To hide the guides click on the Home tab (top of the screen) and then click on the Layout button below to see the available layouts. Choose the Without Guides layout.

How to preview your poster prior to presenting

You can preview your poster at any time by pressing the F5 key on your keyboard. You will see on the screen what's on your poster and how it should look when printed. Press the ESC key to exit Preview.

F5

How to present your poster

When you finish designing your poster and are ready to virtually present it, follow the conference organizers' instructions.

Publish, present virtually, share, and discuss!

Submit your poster and add it to the Research Poster Virtual Library.��Continuous global reach

Share your research with thousands of students, educators, scientists, and researchers from all over the United States and the World.

Full-featured poster showcase included

Present your poster on a professional full-featured and customizable web page that includes full screen functions, social sharing, your own discussion board, private contact form, narration and more.

Convenience for presenter groups and conference coordinators

Published posters can easily be presented at virtual conferences. Perfect solution for organizers of meetings and conferences.

https://www.PosterPresentations.com/research

© 2020 PosterPresentations.com�2117 Fourth Street , STE C

Berkeley CA 94710 USA

For complete tutorials visit:

https://www.posterpresentations.com/helpdesk.html