Skip to content

Use Cases 6: Geolocation and Maps

Adil Malik edited this page Nov 4, 2017 · 2 revisions

06.01.01:
Use Case Name: AttachLocation
User Story: As a participant, I want to optionally attach my current location to a habit event. (US 06.01.01)
Primary Actors: User
Goal: User can attach their location to a habit event
Trigger: User selects the attach location option when editing or creating a habit event
Precondition: User has GPS activated and is in a location where they receive a GPS signal
Post-condition: User has map of their location in their habit page
Related: CreateHabitEvent, EditHabitEvent

Flow:

  1. The system requests the user to let it use their device's GPS tracker
  2. The system uses their GPS to find out their current location
  3. The system sets their current location to the habit event's location

Exception

  1. If the user does not accept the request
  2. The system displays an error message

06.02.01:
Use Case Name: ViewHistoryMap
User Story: As a participant, I want to see a map of the habit events (that have locations) from my filtered habit history list. (US 06.02.01)
Primary Actors: User
Goal: The user can view the locations of all habits in their filtered habit history on a map
Trigger: User selects the view map option when viewing their habit history
Precondition: The user is connected to the internet
Post-condition: The system shows the user a map where locations of the habits in their habit history are marked

Flow:

  1. The system determines the locations of all habit events in the user's filtered habit history
  2. For any event that has a valid location, the system marks the location on a map
  3. The system displays the map on the user's screen

06.03.01:
Use Case Name: ViewFollowedEventsMap
User Story: As a participant, I want to see a map of the recent habit events (that have locations) from participants I am following. (US 06.03.01)
Primary Actors: Follower
Goal: The follower can view the locations of all recent events from users they are following
Trigger: The follower selects the map option when viewing the recent events from followed users list
Precondition: The follower is connected to the internet
Post-condition: The follower is shown a map with the locations of all recent events from followed users being marked on it

Flow:

  1. The system determines the locations of all recent habit events in the followed user events list
  2. For any event that has a valid location, the system marks the location on a map
  3. The system displays the map on the follower's screen

06.04.01:
Use Case Name: ViewNearbyEventsMap
User Story: As a participant, I want to highlight habit events of mine or by participants I am following that are within 5 km of my current location. (US 06.04.01)
Primary Actors: Follower
Goal: View all nearby events from the follower and the users they are following within 5km of their current location
Trigger: The follower selects the view nearby events option
Precondition: The follower is connected to the internet, and their GPS signal is active
Post-condition: On success, the follower is shown a map with all of the locations of nearby events highlighted on it

Flow:

  1. The system determines the locations of all recent habit events in the followed user events list
  2. The system determines the locations of all habit events in the user's filtered habit history
  3. The system requests the user to allow it to use their device's GPS
  4. For any event that has a valid location within 5km of the follower's current location, the system marks the location on a map
  5. The system displays the map on the follower's screen

Exceptions:
3. If the user declines the request
3.1 The system displays an empty map