Project Summary - SuperTurban/ekm_mobiilposm2ng GitHub Wiki
Introduction
Our team built a mobile application called "Sadarada" for Estonian Literary Museum. The game idea is to introduce Estonian legends and folklore stories in a playful way so that people don't have to go to archives. The Android app makes it competitive and the stories accessible to everyone. Employees of the ELM can make different games (using specially developed web application) consisting of various geographical locations with interesting local folklore connected to it. Players (using the mobile app) have to reach the destinations to access the stories and answer some questions, after which they receive points accordingly. There are leaderboards for every game and overall leaderboard to compare with others.
Overview
The web application was written using Node.js. It can be accessed only by ELM employees.
- They can insert locations there (in "Mängude sihtkohad" tab) that has a text field for a name (to later find it in games tab); text field for description of the location; text field for information (shown in mobile app after reaching there); a map, where the coordinates must be chosen; field, to add media files (audio or pictures); and a choice, whether to choose multiple choice question, quiestion with a certain answer of question with creative answer, where there are fileds for questions and correct answers (in any).
- They can make games (in "Mängud" tab) where they must insert a name of the game; a short description what the game is about; they can activate or deactivate the game (whether its seen by users in mobile app); choose the colour of the markers on the map (if they want to distinguish different games); add as many locations (previously added) to the game as they wish.
- Check the leaderboards and contact players (in "Edetabelid" tab). This tab has various tabs where employees can access the overall leaderboard as well as separate leaderboards for every game. Leaderboards show the username, how many points did the user already receive in this game and the email. Employees can contact the best performing players.
The mobile application was developed using Android Studio and is soon uploaded to Google Play Store, where everyone can download it.
- The players first must register using a unique username and email and accept the terms and conditions after which they are directed to the main view.
- In the main view, swiping to the right, opens sidebar, where
- Games can be chosen. The game list shows the name, short description and all the locations on a small map. The information comes from the web application that employees have inserted.
- Leaderboards are shown to compare with others. SHows the usernames and scores.
- Short tutorial.
- Setting to remove the account and check the version.
- After choosing a game (or games), the user can see the locations pinned on the main view map. On upper right corner can also check the list of the locations and clicking on a pin shows a short description of the location.
- After arriving at a location (25 m radius), one point is granted and info sent to the server and a prompt is opened in the mobile app, where the user can see the information about the location, media files and a question. After answering correctly, one additional point is granted. This info is sent to the server and the leaderboards are updated.
- User sees the info of the completed locations.
What went well
- Initial planning went well and the overview of the project was satisfactory.
- Everyone learned a lot, either from developing side, testing side or something else, but mostly how to run a project from start to finish. Cooperation between team members turned out great.
- Task management and keeping things in Github worked out fine as all members could access recent changes and make their own additions.
- Weekly meetings with mentor forced us to think at least weekly what we have done and discussed things through. Kept us on track.
- A well-working web application and mobile app were developed that is ready to use as it is, but some additional changes are made according to the customer's wishes.
What could be improved
- Communication with the customer. As customer did not visit Tartu that often and gave us quite a lot of freedom on developing side, we didn't have that may meetups (6 up to date). Although we had a good overview from the beginning, more contact with the customer would have helped us developing exactly what the customer needed.
- Better time management. Although we tracked issues well, still most of the work was done when the dates were approaching.
- Distributing the workload more evenly among team members. People, who already knew, how to develop something, made their parts and less-experienced teammates did more support part.
- Better planning from the beginning. Some things were not thought through that well (e.g. communication between server and application, what tags to give along etc) that would have made the developing smoother and then one side wouldn't have to wait for the other to finish before continuing. Although, this comes only with experience.
Future
- The web application will have minor changes (how to sort games or locations, show the locations on one map) and will be moved to customers server.
- The mobile app will have some minor changes and uploaded to Google Play Store after customers approval.
- The tutorial for the mobile app will be made.
- Short description about the mobile app will be added to the Play Store.