Skip to content

User onboarding

David Smith edited this page Mar 20, 2024 · 1 revision

MoSCoW Requirements

  • Must
    • M01: All Users must be able to signup with directly without the need for a receptionist (with a password)
    • M02: Walk up users must be able sign up with a receptionist with only name, email and country of origin (no password)
    • M03: Walk up users must be able to converted themselves to "Full" Users i.e. with a password
    • M04: Timekeeper must be able to access an up to date list of users with minimal effort
    • M05: "Walk up" sign up page must not be accessible by unauthenticated users
    • M06: "Walk up" sign up page must be accessible by authenticated administrators
  • Should
    • S01: "Walk up" sign up page should be accessible by authenticated receptionists
  • Could
    • C01: User data events (add/delete) could be sent to Event Bridge where other micro-services could subscribe to the event feed.
    • C02: Country of origin could be pre-selected to match the event location on signup page
  • Will not
    • W01: The service will not have a secondary user data store, such as a DynanmoDB table, as this will go against the principle of holding as little about the user as possible to minimise PII concerns. An additional data that is related to the user e.g. which events the users is signed up to, should be held in that micro-services data store.

Architecture

DREM-UserSignup-Walk_up_Sign_Up

Description

A new receptionist level user or an admin user would be logged into DREM and staffing the reception desk to welcome new customers. The receptionist would use the new registration page to add new users using only their Racer Name (Username) and email address (other custom fields could be added). This page data would be submitted as a mutation to AppSync, which would trigger a lambda that creates the new user cognito.

New users would immediately available for use by the timekeeper by either querying the user list and/or subscribing to AppSync for new users. New users would be sent via a cognito trigger to ensure that users created by either the receptionist or direct signups are immediately visible.

A future improvement to the service will be when the queuing system is added and users, at receptionist sign up time, will automatically be added to the current event's user list, but this will be handled in a later user story.

Clone this wiki locally