Functionalities Developed in Sprint 2 - ISIS3510-MOBILE-T34/T34-Wiki-SpendiQ GitHub Wiki
1. Functionalities Being Developed in Sprint 2
1.1. Use of Cell Phone Sensors
-
GPS Sensors:
- Utilizing GPS sensors to view users' positions and comparing them with store locations.
- Comparing users' locations with store locations to provide relevant financial insights and recommendations.
-
Biometric Sensors:
- Utilizing biometric sensors such as fingerprint or facial recognition for quick authentication.
1.2. Responding to Business Question (BQ) Type 2
- Expense Information Visualization:
- Providing users with detailed information about their expenses over different time frames, including days, weeks, and months.
- Utilizing graphical representations (charts and graphs) to illustrate spending patterns and trends, enhancing user understanding and financial awareness.
1.3. Context-Aware Shopping (CAS)
-
Purchase Data Collection:
- Collecting user purchase information either automatically through notifications or manually.
- Enforcing the restriction that the user must register their expense exactly at the place where the purchase was made (not realistic, but assumed for the app's functionality).
-
Location-Based Purchase Recording:
- Capturing the latitude and longitude of the purchase location when the user registers a purchase.
- Recording the nearest store to the purchase location when possible.
-
Personalized Store Recommendations:
- Utilizing this purchase information from different map locations, the app can determine how much a person has purchased at a store and how much they have spent, which will allow recommending that store or others when they have discounts and when the app detects that the person is within less than 1 km of them.
- Sending notifications to users when they are near a store offering deals.
- Displaying a list of nearby stores in the Offers section, including store names, images, distances, and available offers.
1.4. Smart Feature
-
Machine Learning-Based Recommendations:
- Providing the app's recommendations based on the user's location, accompanied by a justification of why that store or restaurant was recommended.
-
Justification Mechanism:
- Utilizing a machine learning model that analyzes the characteristics of a store/restaurant, such as their 'prices' (High, Medium, Low) and the tags with which they are characterized, to choose the best recommendations within less than 1 km of a person's position.
-
Display and Notifications:
- Displaying these recommendations in the Offers section of the app.
- Delivering recommendations as notifications to keep users informed about nearby deals and offers.
1.5. User Authentication
- Sign-In and Registration:
- Implementing secure sign-in and registration processes for all users.
- Ensuring that users must authenticate with their username and password or via biometric methods to access app functionalities.
1.6. Use of External Services
- Two-Factor Authentication (2FA):
- Utilizing two-factor authentication through services like WhatsApp messages or Email, sending confirmation codes to verify user identities during sign-in and registration.