CRC Cards - Zypher-301/zypher-events GitHub Wiki
CRC Cards for planning:
Entrant
| Responsibilities | Collaborators |
|---|---|
| Join & leave waiting lists for events | Event |
| View events | Database, Events |
| View registered events | Database, Events |
| Set/Edit/Delete profile information associated with device identity | Database |
| Accept/Decline offers to join event when chosen by lottery | Event, Database, Notification |
| View event details from QR code | Event, QR code |
| Join event from event details | Event |
| Set geolocation information | Database |
Organizer
| Responsibilities | Collaborators |
|---|---|
| Create new events with registration periods, generated QR codes, a poster, geolocation requirement | Event, Database, QR code, poster |
| View list of entrants in waiting list for their event, with a map of entrants in waiting | Event, Entrants, Database |
| Optionally limit entrants in waiting list | Event, Database |
| Send notification to chosen entrants to sign up for event | Entrants, Notification |
| Initiate entrant choosing, initiate choosing of new entrants if chosen entrants deny | Lottery, Entrants, Notification |
| View list of chosen/cancelled/final entrants | Event, Entrants |
| Cancel entrants that did not sign up for event | Event, Entrants |
| Export final entrants to CSV | Event, Entrants |
| Send notifications to entrants on waiting list/selected/cancelled | Event, Entrants, Notification |
Administrator
| Responsibilities | Collaborators |
|---|---|
| Remove events/profiles/images | Database, Event, Entrants, Organizers |
| Browse events/profiles/images | Database, Event, Entrants, Organizers |
| Remove organizers | Database, Organizers |
| View log of all notifications sent to entrants by organizers | Database, Notification |
Event
| Responsibilities | Collaborators |
|---|---|
| Store list of entrants in waiting/chosen/attendees(accepted)/denied | Entrants, Database |
| Store event name/description/time/place/registration start & end/promo poster/organizer | Organizer, Database |
| Allow organizer to send notifications to entrants | Organizer, Entrants, Notification |
| Generate and display QR code | QR code |
| Allow organizer to randomly select entrants to accept with lottery | Organizer, Lottery, Entrants |
Database
| Responsibilities | Collaborators |
|---|---|
| Manage Entrant/Organizer/Admin information (Who is who, what permissions) | Entrant, Organizer, Administrator |
| Store Events and associated information | Events |
| Allow for the changing of data for users with permission | Entrant, Organizer, Admin, Events |
| Store notifications with timestamps to be viewed by Administrators | Notifications, Administrators |
Lottery
| Responsibilities | Collaborators |
|---|---|
| Given an Event, choose a select few of the Entrants in the waiting list to set as chosen | Events, Entrants, Database |
| For Events with Entrants that denied, choose new Entrants when prompted by Organizer | Events, Entrants, Organizer, Database |
QR Code
| Responsibilities | Collaborators |
|---|---|
| Allow Entrants to join the waiting list for an event | Entrants, Event |
| Display Event info to Entrants | Entrants, Event |
| Allow organizers to download self, displayed to Organizers from Event details | Organizer, Event |
Notification
| Responsibilities | Collaborators |
|---|---|
| Be sent by Organizers to those in waiting list/accepted/denied | Organizers, Event, Entrants |
| Notify Entrants that they were or were not chosen from the waiting list for an event | Organizers, Event, Entrants, Lottery |
| Abide by entrant settings (only send if notifications enabled for entrant) | Entrant |
| Be logged in a log viewable by Administrators | NotificationLog |