As an exploration into Android development and software processes, this project aims to help a group plan a trip together. A user can specify the events they want to complete in a day, and how long they want to spend doing each event, and the program will create an optimized itinerary for them. It will use the google maps API to account for travel time and notify a user when they should leave for the next event. In addition, the google maps API will also suggest events in an area to help plan a trip. The project will also allow users to set a budget for each trip, and enter in payments to allow for easy division of money by all individuals on the trip.
- Allow users to create events based on location and time
- Create an optimal itinerary based on events the user wants to do
- Allow users to set a budget and keep track of payments
- Evenly divides costs between individuals of a group
- Notify users when to leave for their next event
- Assist users in finding things to do in an area
The program currently saves data only internally to the user's device. It communicates with Google Maps API in order to receive time estimates and the optimized itinerary. It leverages the Google Places API in order to assist users with selecting locations for events.
Design Patterns
- Singleton: Singleton allows easy access of information throughout the program, additionally allowing for easy reading/writing
- Adapter: Communicate information between views and models
Deployment Diagram
Class Diagram
Displays all created trips
Event screens and creation screens
Example itinerary
People screens and creation screens
*Payment and repayments screens