Process Analysis
"Run It up" Android app
This project was done by me and my teammate Olivia Steed. It is an Android running app allowing users to set a running goal and track their progress. They can see a weekly overview of their stats on the dashboard or detailed stats by run or stat type in the stats activity. Users can input data from past runs, schedule future runs, and record current runs. During a run, the user’s steps, activity time, distance, calories burned, and route are saved and added to the stat logs. After a run, users are prompted to add to their run journal to reflect on how they feel and schedule their next run with a message of encouragement. They can also view recovery information on the importance of stretching, nutrition, and safety to emphasize the importance of a healthy lifestyle.
We first started this project by planning a tentative timeline and set an achievable goal. I initially started out the work for this application by planning out its structure using a flowchart to determine the classes and their required methods. While i was doing that, my teammate worked on some initial designs for how the interface would look. Above is the application flowchart that i have come up with that gave us a starting point.
For my contribution to this project, i have worked on the figuring out the calculations for distance travelled, steps taken, calories burnt, pace and route saving and tracking. I used the on board device accelerometer sensor to set a threshold for the x,y and z axis. Utilising the users height and sex, i calculated a stride length as the threshold and when the sensors axis crosses that threshold, i counted it as one step. Furthermore, i have used an algorithm that calculates the bmi using the user data and based on the steps they have taken, calculates the calories they have burnt. I have then used the on board device GPS to ping users coordinates every 0.3 seconds as they run and stored the longitude and latitude as key-value pairs into an Array list and display them as a path along a polygon on google maps. I have used SQLite databases to store both user run data and GPS data.
The biggest challenge for me has been saving the run route in a SQLite table corresponding to the run stats table and retrieving this data to show as a run route polyline. However, with constant support from our Professor Miss Helmine Serban and our TA Son, i managed to implement this feature on schedule and completed the application.
We are very proud of this project and managed to secure 100% (A+) for the entirety of the submission. Below are snapshots of the application interface.