Augmented Reality

The project

In the last three months, we have made an app from the future. We can place our own animations in the space we live in using Augmented Reality. With help of Accenture, we created a Lego city in the real world, which interacts with a virtual model train. This world is visible through the camera of an iPhone 8.
In this app, we have created an augmented-reality movie which explains the transactions of blockchain. Watching the movie is like having hologram projected in the room. It is also informative, and teachers the viewer all about block chain transactions between different parties, using the analogy of an aluminum can production and transport with model trains in the Lego world.


The customer

Our customer, Accenture was very committed to the project. The product owner Alexandra Pitkevich has given us lots of input about our progress. Besides our product owner, Accenture provided us a technology expert Sebastiaan Raven. He helped with Technical issues but also about working together as a team. We learned a lot about:
- Executing the scrum process the right way.
- Use Git in a structured way (Git Flow).
- Minimal Viable Product.

Each week on Thursday we went to Utrecht to meet up with Sebastiaan (and if possible Alexandra). (Almost) Each Tuesday we had a conference call with Sebastiaan to go over the progress, process wise and tackle other issues of that week.

Accenture gave us a lot of motivation, by using our special created demo for an event in Madrid and relaying the positive reactions.

"Working for a real client is a very educational experience."
The team

Our team consisted of six, third-year students from Leiden University. Four from the Informatica bachelor and two from the Informatica & Economie bachelor. This combination made sure we had enough programming experience from the Informatica students and also process and communication experience from the Informatica & Economie students. We completed each other’s missing skills to become a complete functional team. Within the project every team member also mastered other aspects of the app. Some modeled the virtual objects, some created the animations, some focused on the integration of the train and others tested the app. But we always made sure that there was no single point of failure, so no one was the only person who could finish the job (except for testing, since there was only one MacBook and iPhone available, which was needed for testing). The Informatica & Economie students took the role of scrum master, switching halfway through the project.


The technologies

Our project is based on augmented reality, we needed to create Accenture’s storyline into an augmented reality environment. When the app is launched it uses the camera of the iPhone to capture the surroundings, in which our created objects and animations appear.

In order to supply our needs, we used the following programs:

Blender
We have used Blender to model our own 3D-objects.

Unity
The main environment of our project is Unity. The pre-delivered code of Accenture was a complete Unity project, which had to be adjusted and extended to their specific use case.

Xcode
After our work was done in Unity it needs to be deployed to an iPhone 8. Therefore, we build our Unity project to a Xcode project. In Xcode the app will be deployed to the phone.

Git
For our code-management we used Git. We used the SourceTree client with its integrated Git-flow features. Besides Git, we have never used any version control systems. So diving into this project, we encountered a big learning curve. After a few sprints we got very handy with these programs and even gave a two-hour workshop for Accenture staff, to teach them what we learned over several months.