ucsdeventhub / EventHub

4 stars 0 forks source link

use case: saving personalization settings remotely #15

Open ear7h opened 4 years ago

ear7h commented 4 years ago

Description

User's personalization settings are saved to their account.

User Goal

To save their favorited orgs, events, as well as their filtering preference, to their user account.

Actor

Student

Dependent Use Cases

23 favoriting events

12 favoriting subjects

11 favoriting orgs

13 saving personalization settings locally.

15 verifying user email using tokens

Requirements

The system shall allow the user to store all favorites remotely.

Pre-Conditions

Student does not have the event, or org favorited. i.e. student has not changed personalization settings.

Post-Conditions

Favorited item is saved to user account and local device, and so can be accessed through Settings when the user logs in to the application again.

Trigger

Favoriting an event, org or search term.

Workflow

  1. The user favorites an org, or event.
  2. The local data gets stored to account data.
  3. User logs out and reopens app at later time on any device by logging in to their account.
  4. Favorited object will be present under favorited items.

Alternative Workflow

  1. User designates filter type for search.
  2. Filter type is saved.
  3. User logs out and reopens app at later time on any device by logging in to their account.
  4. The same filter type will be available to search on any device through account.

Dependent Design Use cases

Design Workflow

  1. The user shall click the favorite button for an event, or org or input a search term.
  2. The controller shall call the appropriate method to add the entity to the model and upsert it to the server using EventHub.js.
  3. The view is updated to represent the updated model.

Design Alternative Workflow

None.

anthonymeng7 commented 4 years ago

Prior requirements: Student has favorited a new item, or changed their filtering type. Requirements: The system shall allow the user to store all favorites remotely.