Part 2: CRC Cards - CMPUT301W24T38/Collatz301 GitHub Wiki
Organizer:
Event
Responsibilities | Collaborators |
---|---|
Keeps event title | |
Keeps organizer | Organizer |
Keeps event date | |
Keeps event description | |
Keeps event poster | |
Keeps limit on event signups |
OrganizerFragment
Responsibilities | Collaborators |
---|---|
Display a list of attendees who have checked in | OrganizerStorageController |
Display who is signed up to attend my event | AttendeeStorageController |
Display event poster | Event |
Display where users are checking in from | Geolocation |
Display how many times an attendee has checked into an event |
OrganizerEventFragment
Responsibilities | Collaborators |
---|---|
Create a new event | OrganizerStorageController |
Limit the number of attendees that can sign up for an event | Event |
QRGenerator
Responsibilities | Collaborators |
---|---|
Holds a unique QR code |
OrganizerQREditFragment
Responsibilities | Collaborators |
---|---|
Generate a unique QR code for an event | Event |
Give option to reuse QR code | QRGenerator |
OrganizerNotificationManager
Responsibilities | Collaborators |
---|---|
Send notifications to all attendees through the app | AttendeeStorageController |
Receive alerts for important milestones | AttendeeNotificationManager |
OrganizerStorageController
Responsibilities | Collaborators |
---|---|
Store event details | Event |
Get most current attendee list | EventDB |
Link event, unique promotion QR code, event description, and event poster | AttendeeStorageController |
QRGenerator |
EventDB
Responsibilities | Collaborators |
---|---|
Create new events with unique promotion QR code, event description, and event poster | EventDBConnector |
Update attendee list | AttendeeStorageController |
Update events | OrganizerStorageController |
EventDBConnector
Responsibilities | Collaborators |
---|---|
Connects to the Firebase Firestore database | EventDB |
Attendee:
User
Responsibilities | Collaborators |
---|---|
Keep name | |
Keep homepage | |
Keep contact information | |
Keep profile picture | |
Keeps track if user has organized an event |
AttendeeStatus
Responsibilities | Collaborators |
---|---|
Manage and track current check-in status | |
Manage and track event signups | OrganizerStorageController |
SigninFragment
Responsibilities | Collaborators |
---|---|
Check in to an event by scanning QR code | QRScanner |
View event details and announcements | |
Browse event posters/event details of other events | OrganizerStorageController |
Display registered event current and present | AttendeeStatus |
Sign up to attend an event from the event details | |
See what events I have signed up for | AttendeeStorageController |
ProfileEditActivity
Responsibilities | Collaborators |
---|---|
Upload a profile picture | ProfilePictureGenerator |
Remove profile pictures | |
Update information such as name, homepage, and contact information | AttendeeStorageController |
ProfilePictureGenerator
Responsibilities | Collaborators |
---|---|
Generate and set default profile picture based on profile name | User |
AttendeeNotificationManager
Responsibilities | Collaborators |
---|---|
Receive push notifications with important updates from the event organizers | OrganizerNotificationManager |
AttendeeStorageController
Responsibilities | Collaborators |
---|---|
Store profile details | User |
Get events signed up for | AttendeeStatus |
AttendeeDB
Responsibilities | Collaborators |
---|---|
Create profile | AttendeeStorageController |
Update information such as name, homepage, and contact information on profile | |
Remove profile pictures |
AttendeeDBConnector
Responsibilities | Collaborators |
---|---|
Connects to the Firebase Firestore database | AttendeeDB |
Administrator:
AdministratorActivity
Responsibilities | Collaborators |
---|---|
Browse events | AdministratorDB |
Browse profiles | |
Browse images |
AdministratorFragment
Responsibilities | Collaborators |
---|---|
Remove events | AdministratorDB |
Remove profiles | |
Remove images |
AdministratorDB
Responsibilities | Collaborators |
---|---|
Get all events | EventDB |
Get all profiles | AttendeeDB |
Get all images | ImageDB |
AdministratorDBConnector
Responsibilities | Collaborators |
---|---|
Connects to the Firebase Firestore database | AdministratorDB |
Geolocation:
GeolocationFragment
Responsibilities | Collaborators |
---|---|
Enable or disable geolocation tracking for event verification | GeolocationDB |
GeolocationDB
Responsibilities | Collaborators |
---|---|
Get geolocation tracking for events | EventDB |
GeolocationDBConnector
Responsibilities | Collaborators |
---|---|
Connects to the Firebase Firestore database | GeolocationDB |
Images:
ImageDB
Responsibilities | Collaborators |
---|---|
Create lists for event posters and profile pictures | |
Updates event poster list | EventDB |
Updates profile picture list | AttendeeDB |
ImageDBConnector
Responsibilities | Collaborators |
---|---|
Connects to the Firebase Firestore database | ImageDB |
Check-in:
QRScanner
Responsibilities | Collaborators |
---|---|
Checks attendee in to event (increments check in count) | AttendeeStatus |
Sends new check in to EventDB | EventDB |