Skip to content
Noah Huppert edited this page Jun 16, 2018 · 1 revision

Events

The core functionality of Squad Up is events, there are several aspects of events:

Planning

To facilitated event planning Squad Up carries out a process with the following steps:

  • Data Sourcing
    • Process of gathering data to create multiple options for when and where event will take place
  • Filtering
    • Process of ranking event options

Different types of event carry these steps out in different ways:

Get Together

  • Typical behavior
    • Users all meet at one location.
    • Stay at location from start_time to end_time.
  • Meta option: None
  • Sources:
    • Proposed Location
      • Given by squad members
    • Proposed Time
      • Given by squad members
  • Filters:
    • Proposed Location
      • Weighs locations with least amount of driving higher than ones with more.
      • If there is a tie weighs locations closer to target_loc higher than those farther away.
    • Proposed Time
      • Weights times based on how many conflicts there are with other peoples schedules
      • People are given the times and then mark any of them if they don't work as a conflict
      • The times with the least amount of conflicts are weighted the most
      • If there is a tie then the times with the least amount of conflict for drivers are weighed higher.

Movie

  • Extends Get Together
  • Meta option: experience = standard | 3d | imax
  • Sources:
    • Proposed Location
      • Use movie show times apis to get theatres showing movie near target_loc
    • Proposed Time
      • Use movie show time apis to get show time options from locations
    • data.experience
      • Data to compare against meta.experience
      • Use movie show time apis to figure out if movie is Standard, 3D, or IMAX
  • Filters:
    • Proposed Location
      • Compare data.experience of location against preferred meta.experience
      • Weigh locations that provide the desired experience higher than those that don't
    • Proposed Time
      • Compare data.experience of time against preferred meta.experience
      • Weigh show times that provide the desired experience higher than those that don't

Meal

  • Extends Get Together
  • Meta option: type = fastfood | asian | drinks | mexican | ect.. (Any keywords to describe food types)
  • Sources
    • Proposed Location
      • Use the Google Maps API to search for food with keywords
  • Filters
    • Proposed Time
      • Weighs times where restaurants are at low peak and open higher than busy or closed.