Use Case Diagram (Initial) ‐ Scenario 2 - bounswe/bounswe2026group11 GitHub Wiki

Use Case Diagram for Scenario 2

Ambiguities & Assumptions

The bullet points below summarize potential ambiguities / implicit assumptions in the Scenario #2 use case diagram:

  • Login is fixed to username + password in this scenario: The diagram explicitly uses “Log In with username and password”. Requirements allow login via phone number / email / username + password, so the diagram assumes Scenario #2 follows the username+password option and does not cover the other authentication paths.

  • Privacy step is broader than the scenario title: The main flow is “Create Private Event (Invitation Only)”, but it includes “Set Privacy Level (Public/Protected/Private)”. This assumes the same creation UI supports multiple privacy levels, even though Scenario #2 is specifically about choosing Private. The diagram does not explicitly constrain the privacy selection to “Private”.

  • Invitees are treated as mandatory for private event creation: “Add Invitees (Select/Enter Usernames)” is modeled with <<include>>, implying guests are always provided during creation. This assumes:

    • invited friends are already registered users,
    • invitation input is based on usernames,
    • cases like “username not found / duplicates / guest limits / bulk import” are not modeled.
  • Time requirement remains ambiguous (end time): Mandatory details include Time, but the requirements describe start time + optional end time, while the scenario criteria mention start and end timestamps. The diagram does not clarify whether Scenario #2 requires an end time or treats it as optional.

  • Visibility rule (“Hide From Public”) is shown without an explicit condition: The system processing includes “Hide From Public (Map/Search)” as part of submission. The diagram assumes the system applies the correct rule depending on privacy level, but it does not explicitly say this action is only for private events (or how it differs for protected/public events).

  • Notification channel meaning is slightly mixed: Invitations are sent as “Email + In-App”, while an external actor is “Notification Service (Push/Email)” and requirements mention user notification toggles plus an in-app inbox/activity feed. The diagram implicitly assumes:

    • “In-App” may refer to an in-app notification/inbox entry (and possibly push),
    • user notification preferences/toggles are handled elsewhere (not shown).
  • Invitation handling does not define what is visible before acceptance: In the invitation package, “View Invitation” includes “View Private Event Details”, and the guest can also directly access “View Private Event Details”. The diagram does not clarify:

    • whether full event details are visible before accepting,
    • whether some details are limited until acceptance,
    • what happens if a non-invited user attempts access (“Access Denied” is a requirement but not modeled here).
  • No alternate/error flows are shown: The diagram focuses on the happy path and omits what happens if validation fails (missing fields, invalid coordinates), if versioning fails, or if invitation delivery fails/partially succeeds.

Note: The diagram communicates the main private event creation and invitation flow, but leaves several constraints (privacy selection being “Private”, access control boundaries, end-time rule, and notification semantics/preferences) as implicit assumptions.

usecase_diagram_scenario_2
⚠️ **GitHub.com Fallback** ⚠️