RELEASE 2 - Mobile Application Demo

RELEASE 2 - Navigation Demo

RELEASE 2 - Travel Guide Filtering AI Demo

RELEASE 2 - UI Revamp

RELEASE 2 - New Features

Travel Guide and Itinerary Navigation

Navigation is used to navigate users from 1 location to another, and allowing them to play the associated travel guide of the location. We create 2 types of navigation:

- Travel Guide Navigation - We created this type of navigation for when a user only wants to visit 1 location. Typically, this is for users with limited amount of time. This navigator will direct user from their current location to their destination, and allowing them to play the travel guide associated to the destination when they have arrived.

- Itinerary Navigation - We created this type of navigation for when a user wants to visit multiple locations.

Travel Guide Filtering AI

Problem

There are some users that may want to / without being aware, upload an audio file that is either a negative information (e.g., harassment, etc) or a positive information but not a travel guide.

Scalable Solution

Instead of hiring thousands of administrators to check these audio files, we create an AI model that would filter these files automatically, without the administrator having to check themselves. We used GPT-2 as the base model that we fine-tuned on.

Contents Sorting

How do we sort travel guides / itineraries?

In order to sort contents (whether it's travel guides or itineraries), we use the following factors:

- did the user create the content?

- is the user following the creator of the content?

- what is the rating of the content?

The sorting algorithm prioritizes the above factors, with the order of importance decreasing from top to bottom, i.e., the algorithm prioritizes more the fact that the user create the content compared to what the rating is.

Travel Guide Media Player

As more content will be uploaded through the life of the app there will be longer Travel Guides available so the user might want to move through the rather than listening to everything. It will also allow a user to stop listening and get back to a part of the audio if they take a break or something goes wrong with the users phone:

- The user can see the current time and the duration

- The user can seek to anywhere in the audio

- There are buttons to seek forward and backward 10 seconds

RELEASE 2 - Burnup Chart

 release 2 burnup.png

RELEASE 2 - Scrum Retrospective

Dennis Willie

I learnt a lot during this release, especially related to estimating tasks for the sprints. From my side, I overestimated the time that it would take for me to finish the tasks. Because of this, I finished the tasks halfway through the release. The rest of my work was not recorded in the Scrumwise, things such as travel guide navigation, etc. Even though all of the unrecorded tasks can be seen from GitHub, it would've better if I had allocate more tasks for me for this release. Because of this, I have to really pay attention to the way I allocate my tasks so that the expected time should not be far greater than the real one. Another thing that I learnt was communication, not only during standups, but also coordinating between different parts of the team so that the team can walk forward together without leaving anyone behind. For example, instead of not caring about the user testing because I'm not responsible for it, I instead contacted Mahaveer and gave him some pointers, and also coordinate with Naoise about evaluating the ethical application form. I think this sped up the ethical application form. It would've not been this fast if I didn't reach out.

Jeremy Neo

For this release 2, everything is more organised as Dennis and Me have moved to the frontend role so that we can boost the frontend progress as we are more familiar with the React framework. The other reason why I decided to move to the frontend role is that the original frontend team are too slow in their work. For example, a 1 day task will take them 2 weeks to complete. Also, the backend tasks were mostly done. However, this has caused all members in our team working on frontend which is not practical at all. At first, I felt like some members in our team has nothing to do since the changes and luckily the panels warned us that we are doing the wrong thing. So, we decided to move 2 members in our team to the user testing side so that the team is more balanced in terms of workload. After that, as a scrum master I think that I still have more to learn when it comes to setting up the release and the sprints. Also, I felt that the team is more coordinated especially on the communication aspect. I hope that the team continues to progress in the same velocity as this release in the future.

Tadas Gliadkovskis

After getting feedback from Release 1 we made a mistake of not assigning more points to User Testing and we also made the mistake of not putting everything into the release and working off a document that had small tasks but they are still important for the app. I also heavily underestimated the hours for my main feature by 6 hours, which was the media controller. This happened because from my previous Release the task I took on was mainly focused on functionality but in this Release I had to worry about designing it and making sure it has all the bugs possible fixed rather than leaving it so I can work on other features like in the previous Release. Going into the next Release I will assign more hours for myself for tasks as it takes me longer personally compared to the others on my team.

Mahaveer Singh

(ex-member)

With Scrum, I am able to break down the project into smaller, more manageable tasks, and assign each task to a specific sprint. This helps me to stay on track and ensures that I am making progress towards my overall goal. Another great thing about Scrum is that it promotes collaboration and communication. By working in short sprints, I am able to regularly check in with my team members and get feedback on my progress. This allows us to identify any issues early on and make adjustments as needed. Through daily stand-up meetings and regular sprint reviews, my team and I are able to stay on the same page, share progress updates, and identify and address any issues that arise in a timely manner.

Rodions Barranikovs

(ex-member)

During the development for release 2 I had learned a lot about the importance of speed, efficiency and communication. Looking back at the beginning of release 2 development, we had agreed that all team members will start working on the user interface of the app to speed its development, I took the task to code one of the screens, however I underestimated how long it will take to code it - but at the same time I didn't know what was the deadline for the task - because of miscommunication about the scope and assigning of tasks for the first two sprints between team members. I learned that I need to be more proactive and express my thoughts clearer and give updates to the team on time. In the past two sprints initial user testing and collection of data took 2 sprints instead of predicted 1 sprint, I had learned the importance of accurate time estimation and right now I'm looking forward to hear the feedback for release 2 and implement suggestions and improvements learned from surveyed users and prepare for expo.