Repository navigation
Sprint Planning and Review
TA Mentor: Imgyeong Lee
Cadence: Weekly sprints anchored on Tuesday lab meetings
Location: Tuesday Lab
Project: Community Event Lottery App (mobile)
| Member | Primary Area | |
|---|---|---|
| Muhammad Zain Asad | masad4@ualberta.ca | Entrant |
| Muhammad Salaar Butt | msbutt1@ualberta.ca | Entrant |
| Basvi Chunara | basviyog@ualberta.ca | Organizer |
| Sanika Verma | sanika3@ualberta.ca | Organizer |
| Affan Nazir | mnazir1@ualberta.ca | Admin |
| Swayam Sagar | swayam2@ualberta.ca | Admin |
Attendance: All present (Basvi, Zain, Affan, Salaar, Sanika, Swayam)
TA: Imgyeong
- Team–TA introductions; project procedures & expectations reviewed.
- Clarified Part 2 scope and deliverables.
- Began UI mockups & storyboard sequences and initial OO analysis (CRC cards).
- Backlog & Estimation: Form product backlog from provided user stories; add story points & risk (L/M/H).
- UI/Storyboard: First pass for main flows (scan QR → event details → join waitlist; organizer create event).
- CRC Cards: Identify core classes (Event, EntrantProfile, OrganizerProfile, WaitingList, Lottery, Notification, AdminOps).
- Tools: Set up shared Figma; initialize GitHub repo, issues, labels, and project board.
- Keep diagrams legible and embedded in wiki (no external links).
- Look ahead to Part 3 to avoid rework.
Attendance: All present
TA: Imgyeong
- Presented UI mockups and CRC cards; received feedback.
- Completed Product Backlog (IDs, points, risk) and Storyboard Sequences in Figma.
- Embedded diagrams in the wiki.
- Address TA feedback on UI/CRC.
- Decide Part 3 (halfway checkpoint) user stories.
- Prep codebase: folders, coding conventions, minimal CI.
- Map mockups to requirement IDs in captions.
- Clarify release plan for the halfway checkpoint.
Attendance: All present
TA: Imgyeong
- Addressed UI/CRC feedback.
- Confirmed Part 3 expectations (prototype + server connectivity).
Goal: MVP foundations across Entrant, Organizer, Admin.
-
Entrant (Zain & Salaar)
- US 01.02.01 — Provide personal info (profile).
- US 01.01.03 — View list of joinable events.
- US 01.01.01 — Join waiting list.
-
Organizer (Basvi & Sanika)
- US 02.01.01 — Create event (QR code deferred).
- US 02.01.04 — Set registration period.
- US 02.02.01 — View entrants on waiting list.
-
Admin (Affan & Swayam)
- US 03.04.01 — Browse events.
- US 03.05.01 — Browse profiles.
Engineering Notes:
Initialize Firebase collections (events, profiles, waitingLists); scaffold navigation; seed demo data.
Attendance: All present
TA: Imgyeong
Completed (demoed):
- Entrant: US 01.02.01, US 01.01.03, US 01.01.01
- Organizer: US 02.01.01 (w/o QR), US 02.01.04, US 02.02.01
- Admin: US 03.04.01, US 03.05.01
Notes: Firebase integration live; basic navigation stable.
Workstream A — Lottery flow & selections
-
Entrant (Zain & Salaar)
- US 01.04.01 — Receive notification when chosen (“win”).
- US 01.05.02 — Accept invitation.
- US 01.05.03 — Decline invitation.
- US 01.05.04 — See total entrants on a waiting list.
-
Organizer (Basvi & Sanika)
- US 02.05.02 — Set sample size for lottery.
- US 02.05.01 — Send “you won” notifications.
- US 02.06.01 — View list of chosen entrants.
-
Admin (Affan & Swayam)
- US 03.01.01 — Remove events.
Workstream B — QR & finalization + admin moderation
-
Organizer (Basvi & Sanika)
- US 02.01.01 — QR code sub-task (generate QR linking to event details/waitlist).
- US 02.06.03 — View final list of enrolled entrants.
-
Admin (Affan & Swayam)
- US 03.02.01 — Remove profiles.
- US 03.03.01 — Remove images.
- US 03.06.01 — Browse uploaded images (for moderation).
- US 03.07.01 — Remove organizers that violate policy.
Notes:
Add simple audit log for notifications (foundation for US 03.08.01). Optional geolocation flag on join.
Attendance: All present
TA: Imgyeong
Demoed working prototype:
- Lottery selection & sample size control; “you won” notifications.
- Entrant accept/decline; total entrants visible.
- Organizer: chosen list; final enrolled list; QR deep-link to event details.
- Admin: remove events/profiles/images; browse images; remove organizers.
TA Feedback: Overall great; reduce font size for better information density.
- Apply UI polish per TA feedback (font sizing/spacing).
- Add unit tests (model/control) + intent tests for completed requirements.
- Add Javadoc for public model APIs; file headers with purpose/outstanding issues.
- Finalize UML class diagram; update wiki mockups/storyboards.
- Prepare demo script for lab section.
Stretch: Enhance US 03.08.01 (admin notification log review) post-demo.
Attendance: N/A — Reading Week (no classes)
TA: —
- No formal lab. Team members informally progressed Part 4 (Final checkpoint) preparation and tidied minor UI items.
-
Entrant (Zain & Salaar)
- US 01.01.02 — Leave waiting list.
- US 01.04.02 — Receive notification when not chosen.
- US 01.04.03 — Opt out of notifications (settings toggle).
-
Organizer (Basvi & Sanika)
- US 02.03.01 — Optionally limit max entrants on waiting list.
- US 02.06.02 — View list of cancelled entrants.
- US 02.06.04 — Cancel entrants that did not sign up in time.
-
Admin (Affan & Swayam)
- US 03.08.01 — Draft notification log schema & audit surfacing (design spike).
Attendance: All present
TA: Imgyeong
- Demoed the application with stories completed to date.
- Implemented: US 01.01.02, US 01.04.02, US 01.04.03, US 02.03.01, US 02.06.02, US 02.06.04 (initial), and audit-log draft for US 03.08.01.
- Addressing feedback, code base, docs, tests, OOD, UI/storyboards, sprint records: all look good.
- Backlog: remove duplicated user story issues; fill missing fields.
- Demo: great; clean the database (test data, orphaned docs).
- Tool use: good. “Good luck with Part 4.”
-
Entrant (Zain & Salaar)
- US 01.01.04 — Filter events by interests & availability.
- US 01.02.02 — Update profile info.
- US 01.02.03 — View history of registrations (selected/not).
- US 01.05.05 — Display lottery criteria/guidelines on event page.
-
Organizer (Basvi & Sanika)
- US 02.04.01 — Upload event poster.
- US 02.04.02 — Update event poster.
- US 02.05.03 — Draw replacement applicant when someone declines/cancels.
- US 02.07.01 / 02.07.02 — Notify all waitlist / all selected entrants (bulk sends).
-
Admin (Affan & Swayam)
- US 03.08.01 — Implement notification logs review UI & filtering.
- Backlog hygiene & DB cleanup per TA feedback (remove duplicate issues; prune test/orphan records).
Attendance: All present
TA: Imgyeong
- Discussed with TA: Notification System scope, admin removing organizer role (cascade on events), and admin deleting entrant profile (remove from all waitlists).
- Implemented this week: US 01.01.04, US 01.02.02, US 01.02.03, US 01.05.05, US 02.04.01, US 02.04.02, US 02.05.03, US 02.07.01/02, and US 03.08.01 (review screen + filters).
- Backlog deduplication and database cleanup completed.
-
Cascade rules approved:
- When Admin removes Organizer (or deletes organizer profile), remove/archive organizer’s events and related waitlists (export before purge as needed).
- When Admin deletes Entrant profile, remove their spots from all waitlists and revoke pending invitations.
- Notification logs must capture who/what/when and delivery result.
-
Entrant (Zain & Salaar)
- US 01.02.04 — Delete profile (self-service) with confirmation & cascade to waitlists.
- US 01.05.01 — Another chance if selected entrant declines (status updates to runner-ups).
- US 01.06.01 — View event details via QR scan (end-to-end test).
- US 01.06.02 — Sign up from event details page (when eligible).
- US 01.07.01 — Device-based identification (no username/password).
-
Organizer (Basvi & Sanika)
- US 02.02.02 — Map view: where entrants joined from.
- US 02.02.03 — Toggle geolocation requirement per event.
- US 02.06.05 — Export final enrolled list (CSV).
- US 02.07.03 — Notify all cancelled entrants (wrap-up comms).
-
Admin (Affan & Swayam)
- Enforce cascade policies in Admin tools (as per decisions above).
- Harden US 03.08.01 (filters, pagination, export), and add role-change audit events.
Stretch / Polishing
- Empty-state UX, accessibility pass, and final Javadoc/tests coverage uplift.
- Entrant: US 01.01.01, US 01.01.02, US 01.01.03, US 01.01.04, US 01.02.01, US 01.02.02, US 01.02.03, US 01.02.04, US 01.04.01, US 01.04.02, US 01.04.03, US 01.05.01, US 01.05.02, US 01.05.03, US 01.05.04, US 01.05.05, US 01.06.01, US 01.06.02, US 01.07.01
- Organizer: US 02.01.01, US 02.01.04, US 02.02.01, US 02.02.02, US 02.02.03, US 02.03.01, US 02.04.01, US 02.04.02, US 02.05.01, US 02.05.02, US 02.05.03, US 02.06.01, US 02.06.02, US 02.06.03, US 02.06.04, US 02.06.05, US 02.07.01, US 02.07.02, US 02.07.03
- Admin: US 03.01.01, US 03.02.01, US 03.03.01, US 03.04.01, US 03.05.01, US 03.06.01, US 03.07.01, US 03.08.01