0% found this document useful (0 votes)
35 views10 pages

SambeliTan QuantitativeMethods FinalProject

Quantitative Methods final project IT0019

Uploaded by

Kirk Griffin Tan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views10 pages

SambeliTan QuantitativeMethods FinalProject

Quantitative Methods final project IT0019

Uploaded by

Kirk Griffin Tan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

FitQuest: A Mobile Game Application for

Effective Workout Motivation by Using Positive


Reinforcement

Final Project

GRADE

Submitted by:
Sambeli, Luther Dean M.
Tan, Kirk Griffin F
Colarina, Russel Ray A. Leocadio, Peter Roberts M.
Submitted to:
Sir Teodoro Jr. Revano

November 22, 2024

Project Overview:
The objective of this project is to create an app called FitQuest which will motivate people to
achieve their fitness goals by rewarding them for completing workouts and also making it
enjoyable. This app will have features like game avatar, workout plan, workout progress,
completion/consistency rewards, and diet plan. This project introduces a unique incentive model
where points will be earned for each completed workout, and those points can be later
redeemed for exclusive rewards from partnered brands and stores.

Project Phases and Timeline:


PHASE 1: Project Initiation

● Define project scope, objectives, and deliverables:


○ Scope: The aim of this project is to help people achieve their desired body goals.
This app is for people who are interested in enhancing their fitness through
gamification and real life awards. This app will be helpful for individuals who are
motivated in improving their fitness through rewards, and track their progress in
an engaging way.

○ Objectives: The primary objective of this app is to motivate individuals to maintain


physically active by offering a gamified fitness experience that gives rewards.
The app aims to provide users a platform where they can receive rewards for
completing workouts, track their progress, set their fitness goals, redeem awards,
and view their achievements.

○ Deliverables: The project will deliver a mobile application that features workout
tracking, goal setting, and earn rewards for completed workouts. The app allows
the users to set and track their personal fitness goals, view their achievements.
The app will also include social challenges like leaderboards to boost motivation.

● Set up project repository and version control:


○ The repository for the project FitQuest will be set up on platforms such as GitHub
or Bitbucket. This will serve as the central hub for all project-related files, code,
and documentations.
○ Version control will be implemented using GitHub within the project repository to
track changes and facilitate collaboration among team members. GitHub will also
allow us to maintain a history of code changes, making it easier to go back to
previous versions if necessary.
● Identify the technologies to be used for web and mobile application development:
○ The frontend technology will be using React Native since it’s ideal for building a
cross-platform mobile app for any devices and can use javascript.
○ For backend, could use technologies like firebase for real-time database,
authentication, and cloud storage. Pairing it with node.js with express for
managing APIs and complex business logic and heavy processing. Node.js will
handle all API requests, fetch/update data in Firebase. Also using camera and
OCR SDKs like mediaPipe Pose for the workout scanner for our detection. Lastly,
BadgeUp SDK for ready-made gamification to implement in the app.

● Create a high-level design of the application architecture:


○ The architecture will consist of several integrated layers designed to provide a
flawless experience across mobile and web platforms. It will include a front-end
(interface) layer which is composed of various user interface components such
as workout trackers, profile sections, leaderboards, and rewards stores.
○ For the back-end layer, it will handle the core business logic for authentication,
points calculation, and rewards redemption.

PHASE 2: Data Collection and Analysis


● Collect data related to user traffic patterns, user behavior and interaction data,
performance metrics:
○ In order to have excellent app performance, usability, and user experience. We
will collect data based on how users make use of the application.

● User Behavior and Interaction Data


○ This could involve peak activity time on certain features, such as workout routine,
avatar page, avatar market, rewards page, etc. What workout is most used by
users in a certain muscle. Also what diet plan/food is most popular whether it's
for bulking, cutting, lean, etc.

● User Traffic Patterns


○ User demographic for personal user data like age, gender, workout goal. User
location, geographic data where the user is accessing the app from.
● Performance Metrics
○ In server response times it measures the server’s response time to the requests
such as saving progress, creating workout, customizing avatar, how fast rewards
come in. Also, crash and error reports, which features most commonly involved in
app crash or freeze.

● Scanner Performance
○ Using the camera-based verification, it will collect data for correct form detection
and movement detection like scanning the user’s squats, push-ups, lunges, etc.
It’ll track if users perform a certain range of motion like full squat and complete
push up.

The said data can be collected using instruments and techniques like analytics tools, in-app
tracking mechanisms, real-time monitoring system, backend logging.

● Analyze the collected data to identify which to improve on:


○ In analyzing the data collected, we can distinguish areas for potential issues to
improve on both performance and user experience.
○ In user data like peak usage time, most used workouts, workout challenges, it
can inform the users so it can guide them for their own flexibility of progression in
their fitness journey .

● Determine appropriate quantitative models for representing the user load, and server
performance, scanner performance:
○ In user load, we can apply queuing models where it processes the user requests
such as saving workout progress, accessing and updating the avatar. This can
help in traffic times and ensure the app is optimized when a feature is in great
demand and in server capacity.
○ For server performance, response time models are used, it is applied to
determine the time it takes to complete a certain task. It takes the waiting time
the user gets before it can get a response to the server.
○ The scanner performance can use computer vision model metrics, to ensure
accuracy and reliability of the form detection algorithm providing real-time
feedback to the users.
○ Lastly, app performance can use a throughput model to measure requests per
second that the server can handle in using the app features. Analyzing the proper
metrics can help minimize issues and optimize the application.
PHASE 3: Application Development
● Develop the web and mobile application prototypes.
○ The prototype will start with wireframes for main screens such as the dashboard,
workout tracker, profile, and rewards store. This will establish the layout and
navigation for both web and mobile. Using apps such as figma or adobe xD, the
designs will progress into a dynamic look that will align with the app’s theme.
○ The prototype will also be used for testing and gathering feedback from testers.
User testing provides feedback to refine the design, improve usability and
interactivity before moving to the actual development.
● Implement load balancing mechanisms based on various algorithms (Round Robin,
Least Connections, etc.).
○ To implement load balancing mechanisms, the app will use algorithms such as
Round Robin to distribute connections evenly across servers and Least
Connections to direct traffic to the server with the fewest active connections,
using tools such as HAProxy to distribute incoming requests across servers
efficiently.
● Integrate the simulation module that will simulate user traffic and server load
○ The app will use tools like JMeter or Locust to simulate user traffic such as
logging workouts, earning points, and redeeming rewards. This will allow us to
create the test scripts that mimics users, simulating varying traffic levels and
different server loads.
● Develop a dashboard to visualize real-time load distribution and performance metrics.


PHASE 4: Modeling and Simulation


● User Interaction, load, and performance
○ This involves how users will interact with the app, like the features they use and
how these interactions can affect the system performance. The simulation will
accurately reflect the real world, an example would be predicting user behavior
like a large number of users completing a task and quickly receiving rewards for
it. The said scenario simulates the user interaction and app’s load and
performance, where the goal is making sure the app and server can maintain
performance and handle it in an optimized and efficient experience for the user.

● Camera-based scanner simulation


○ By modeling how the app detects the body and its movement in real time with
different user inputs can affect the system. The goal is to ensure that it can detect
different types of body and maintain accuracy in form detection.

● Database Query
○ This involves running the simulation in different data volumes to check it can
handle those data volumes and quick response without degradation in the
performance. The goal is to predict how the database will handle frequent varying
user action such as saving workout, updating avatar, etc.

● Collect simulation data:


○ The simulation involves collection and analysis of data that provides insights into
the overall performance of the app. This is an understanding for how the app
behaves under different scenarios. This may include factors like response time,
load time, load balancing, crash reports.
Phase 5: Performance Evaluation and Optimization

● Analyze the simulation results to identify the best-performing load balancing strategy.
○ Analyzing the simulation results involves evaluating the key metrics like response
time, throughput, and error rates for different algorithms used. During the
simulation, data will be collected about how the algorithms handle varying levels
of user traffic.
○ Round Robin offers even traffic distribution, but performance may degrade when
under high load if some servers become overloaded. Least Connections will
route traffic to servers with the lowest active connections which makes resource
utilization and response time more efficient and consistent.
○ By comparing the results, we can determine which strategy is the
best-performing load balancing strategy under different traffic conditions.

● Use optimization techniques to fine-tune load balancing parameters for optimal resource
allocation
○ In order to optimize the chosen strategy, we will use various different techniques
such as the likes of dynamic server weighting or adaptive connection thresholds.

● Document the performance improvements achieved through load balancing and


optimization
○ To document the improvement of performance gained from load balancing and
optimization, we will compare key metrics from before and after the
implementation of the load balancing strategy used and optimization strategies.
○ Before optimization, metrics will show inconsistencies especially under high
traffic loads, due to uneven resource distribution. But after implementing the load
balancing strategy with dynamic server weighting and adaptive connection
thresholds, we expect to see that response times will become more stable and
CPU spikes will reduce.
○ Tables or graphs will be used to show the comparison of these metrics to
highlight how the optimized load balancing approach improves and enhances the
app’s ability to perform under increased user traffic.

PHASE 6: Finalization and Documentation


● This phase focuses on the completion, refinement and documentation of the
overall workout app ensuring everything is fully functional, optimized and ready to
handout to the world. Being able to provide an efficient, functional, and
user-friendly experience based on user feedback and analysis results.
○ This can include changes in the app’s UI design for aesthetic and easy
navigation while also improving the app’s features functionality through
bug fixing and conducting final testing.

● In documenting, it includes information of how it’s evaluated and improved on.


Also it consists of a comprehensive explanation of how everything works. Having
a clear and detailed explanation can ensure the future for crucial updates,
troubleshooting, and enhancements.

● Lastly, creating a presentation contains the summary and quickie information


about the project such as goal, methods, expected results. This basically
includes what’s the purpose of the app and its target result, how the app will be
conducted, and finally what is achieved.

Phase 7: Presentation and Deployment


● Present the project to stakeholders, showcasing the developed application, simulation
results, and optimization outcomes.
○ To present the app to stakeholders, we will show an extensive demonstration of
the app’s progress, simulation findings, and optimization results.
○ First, we will explore the primary features of the app, showing its workout
tracking, point-earning system, user-friendly interface, and rewards redemption
process.
○ Next, we will present the simulation results, showing the app’s performance
under different traffic loads and highlighting the load balancing strategy used and
how it ensures stable response times and resources efficiently.
○ Lastly, we will show the optimization results, demonstrating the enhancements in
response time, server load balance, and throughput after the implementation of
dynamic server weighting and adaptive connection thresholds strategy.
● Discuss how the simulation-enhanced load balancing contributes to improving
application performance and user experience
○ Using simulation-enhanced load balancing improves the application performance
greatly by ensuring even resource distribution across servers. By simulating high
traffic scenarios and testing different load balancing algorithms, we discovered
the best optimal strategy that enhances response times and ensures server
stability.
○ Using adaptive techniques such as dynamic server weighting and adjustable
connection thresholds, load balancing strategy effectively directs user requests to
prevent resource underuse or overuse. With this setup, it ensures smoother
interactions, faster response times, and reduced service interruptions. This will
improve the user experience by offering flawless, and responsive features of the
app.
● Deploy the application and simulation module to a testing environment for further
validation and potential real-word use.
○ Once the application is finalized and thoroughly tested, the app will be deployed
to a testing environment. We will use tools like Docker or Kubernetes to allow us
to containerize and arrange application components.
○ The testing environment will include the full application back-end, and front-end,
as well as the load balancing setup and simulation module.

Project Resources
● Development Team: Web and mobile developers, simulation experts, UI/UX designers.

Web and Mobile developers: This is the team responsible for making the app possible.
They’re the so-called frontend and backend developers who code a complex efficient
solution for the workout game to make it a functional, user-friendly, and responsive
application.

Simulation Experts: These are the people responsible for creating simulation models for
each scenario and implementing them to be used as experimental simulation to help
evaluate performance under various situations. They are the ones that will recreate an
accurate, realistic real-world situation.

UI/UX designers: These are the artistic team who are responsible for factors like
aesthetic and user-friendly. They mainly focus on the look of the app.

● Tools and Technologies: Web and mobile development frameworks, simulation software,
version control systems, data analytics tools.

Web and Mobile Development Frameworks: The chosen framework will depend on the
app requirements like is it available for website, can it be cross-platform, can it handle
these data, etc.

Simulation software: This is the one that will be used to implement the simulation for
examining the app. The choice of software will base on the requirement needed to be
used for simulating everything.
Version Control System: This is the one who manages and keeps track of changes to the
application throughout the development. The goal should be able to help ensure that all
changes are documented and maintain integrity.

Data Analytics Tools: This is the one that will help the team to gain insights on what to
enhance on. They are used to gather, process, and analyze the data generated in using
the app.

Project Risks and Mitigation


● Lack of Accurate Simulation: Mitigated by using real-world data to calibrate the
simulation model and validating results against actual performance.
○ Risk: The simulation model might not accurately represent real-world behavior of
users, which could lead to inaccurate predictions and ineffective load balancing
strategies.
○ Mitigation: The risk can be mitigated by using real-world data to fix the simulation
model. This means collecting data on user behavior and server performance from
the live application, then applying the collected data to enhance the simulation’s
accuracy.
● Integration Challenges: Addressed through rigorous testing and gradual integration of
simulation components.
○ Risk: Integration challenges may surface when incorporating simulation
components to the main application, affecting system stability or performance.
○ Mitigation: This can be mitigated with rigorous testing and step by step
integration of simulation components. This will involve gradual incorporation of
the simulation, paired with continuous testing to ensure compatibility and stability.
● Stakeholder Alignment: Regular updates and communication to ensure stakeholders'
expectations are met
○ Risk: Stakeholder alignment may come at risk if expectations are not effectively
communicated or if there are insufficient regular updates, that can lead to
misunderstandings and dissatisfaction.
○ Mitigation: This can be mitigated through regular updates and proper
communication with stakeholders. Regular meetings and progress reports will
also help by ensuring that everyone is informed of the project’s status and
updates and that any concerns will be addressed quickly.

You might also like