Skip to content

CRC Cards

Cedric Boucher edited this page Nov 8, 2024 · 5 revisions

CRC Cards

User

Responsibilities Collaborators
Store entrant's name -
Store entrant's email -
Store entrant's phone number (if any) -
Store entrant's profile picture -
Keep track of whether user is an admin -
Link to organizer's facility (if any) Facility
Store entrant's notification preference -

Facility

Responsibilities Collaborators
Store facility's name -
Store facility's location -
Link to facility's events Event

Event

Responsibilities Collaborators
Store event's name -
Store event's date/time -
Store event's capacity -
Store event's poster picture -
Link to event's current QRCode QRCode
Link to event's entrant pool EntrantPool

QRCode

Responsibilities Collaborators
Store string which the QR code represents -
Generate QR Code image -

EntrantPool

Responsibilities Collaborators
Link to entrant pool's entrant statuses EntrantStatus
Manage entrants in the pool and their statuses EntrantStatus
Draw entrants from the pool EntrantStatus

EntrantStatus

Responsibilities Collaborators
Connect a user (implicitly an entrant) to their status in an event's entrant pool User, EntrantPool, Status
Store the location from which the entrant joined the event -
Send notifications to users NotificationSender

<<enumeration>> Status

Responsibilities Collaborators
Enumerate the possible statuses that entrant's can have in an event's entrant pool EntrantStatus

<<static>> NotificationSender

Responsibilities Collaborators
Send notifications to users User

DatabaseManager

Responsibilities Collaborators
Manage database interactions and provide a simple interface for the other classes to use User, Facility, Event, EntrantPool, EntrantStatus