Skip to main content

Initial Requirements

note

A PDF verison of this documentation is available here.

The initial project requirements were released on May 25th 2024.

Minimal Viable Product Requirements

The system (Trek) shall handle the following functionalities:

  • Allows the user to create, view, and manage trips, as CRUD operations
  • Allows the user to create and manage their own profile, as CRUD operations
  • Provides a user-specific interface including list of trips the user is associated with
  • Provides a trip creation interface for the users to create a new trip
  • Allows a non-authenticated user to access the trip creation interface with most of its features
  • Provides an access control interface for a user-created trip with sharing functionalities
  • Provide a sign-in interface to a non-authenticated user when saving a user-created trip

The system (Trek) shall support the following non-functional requirements:

  • Uses MongoDB to manage user information and support CRUD operations
  • Uses MongoDB to store user-created trips

Standard Requirements

The system (Trek) shall handle the following functionalities:

  • Allows multiple users to collaborate on a single trip, with real-time live collaboration
  • Allows the user to share a trip via a URL
  • Allows the user to search and explore destinations of a city

The system (Trek) shall support the following non-functional requirements:

  • Uses internal APIs to aggregate trip information
  • Uses external APIs (such as Google Maps Platform API) to obtain information regarding a location

Stretch Goals

The system (Trek) shall handle the following functionalities:

  • Provides ML/AI suggested recommendation to the user regarding a trip
  • Provides transportation options and associated costs to the user regarding a trip
  • Provides weather information to the user regarding a trip
  • Allows the user to interact with the system to automatically create an AI-generated itinerary

The system (Trek) shall support the following non-functional requirements:

  • Uses external LLM API to implement and integrate LLM wrapper to the trip planning experience.