CRC Cards - CMPUT301W24T15/SyncQR GitHub Wiki

Event

Responsibility Collaborators
Knows its poster
Knows its attendee limit
Knows its date
Knows its location
Knows its id
Knows its descprition
Knows its organizer information
Knows its QR Code for checking-in QRCodeGenerator, Checkin
Allow upload and access all data from db Firebase, Database
Build connection betweet its instance and its owner User, Attendee

QRCodeGenerator

Responsibility Collaborators
Generates a unique QR Code for checking-in Event, Checkin
Generates a unique promotion QR Code Event, Checkin

Checkin

Responsibility Collaborators
Recognizes a QRCode and check-in to the corresponding event Event
Allow upload and access all data from db Firebase, Database
Allow data to be displayed on organizer's dashboard and UI Organizer, Activity, Fragement, Adapter
Allow real-time update Adatper

Profile

Responsibility Collaborators
Knows its profile picture
Edits / Removes its profile picture
Knows information such as name, homepage, and contact information
Edits information such as name, homepage, and contact information Attendee

User

Responsibility Collaborators
Edits the option of enable or disable geolocation tracking for event verification Checkin
Able to sign up an event Event, Checkin
Able to check in an event Event, Checkin
Able to scan differende QRcode QRcode generator

Organizer

Responsibility Collaborators
Able to create events Event, Checkin
Able to generate or upload QR code QRCodeGenerator, Checkin
Able to see the milestones Adatpter, Checkin, Event
Able to have an account User
Able to load a map and see where users checkedin Fragment
Able to see all checkin statistics Checkin, Event
Able to generate promotion QRcodes QRCodeGenerator
Able to Share to other app Activity
Able to have its own dashboard and UI Fragments, Activity, Dialog

Attendee

Responsibility Collaborators
Able to have an account User
Receive push notifications with important updates from the event organizers Profile, Event
Able to see the event they signed up Adapter, Event, Checkin
Able to quit an event
Able to have its own dashboard and UI Fragments, Activity, Dialog

Administrator

Responsibility Collaborators
Knows all events Event
Knows all profiles Profile
Knows all images
Remove events Event
Remove profiles Profile
Remove images

Database

Responsibility Collaborators
Allow system to accquire or update data when needed Organizer, Administrator

Activity

Responsibility Collaborators
Able to display the dashboard User
Able to send user to different UI User
Able to ask user for various permission User

Fragment

Responsibility Collaborators
Able to display the different UI User
Able to display events Events
Able to display map View
Able to transfer between different fragments Fragments

Dialog

Responsibility Collaborators
Able to display short information Organizer, Attendee, User
Able to transfer between different fragments Fragments
Able to generate qrcode, and send notification QRCodeGenerator, Notification

Adapter

Responsibility Collaborators
Able to display expandable checkin lists(3) Organizer, Attendee, User, Eevnt
Able to display milestone for different events Activity, Event, Checkin
Able to display all availbale events Attendee
Able to display created / signup events Attendee, Organizer

Notification

Responsibility Collaborators
Store eventID, Name, and the message Firebase, Database
Allow Organizer to create and push Organizer
Allow Attendee to recevie Attendee