Scenario 3 ‐ Athletics Community Organizes a Walking Event - bounswe/bounswe2026group11 GitHub Wiki
Scenario 3 - Athletics Community Organizes a Walking Event
👤 User Profile
-
Organization: Boğaziçi University Athletics Club is a student-led athletics community organization.
-
Activities: Regularly plans group activities (walking, running, and conditioning sessions) for members of different experience levels.
-
App Usage: The club uses the Social Event Mapper app to:
-Publish events with clear route and timing details.
User Goals
- Create a walking event with a route-based location including starting point and ending point (and optional waypoints).
- Define a clear time interval (start time and approximate finishing time represented as end time).
- Set visibility Public.
Pre-condition
- The club organization account is already registered and logged in via phone verification.
- The club has an organization profile including a profile picture and access to participation history.
- The system supports event categories (predefined) and map-based route creation.
- Notifications are enabled for users who have defined favorite locations.
Main Flow (Steps)
- User (Boğaziçi University Athletism Club) opens the application.
- System displays the Map View with options for List View, search, and filters.
- User taps Create Event.
- System displays the event creation form and highlights mandatory fields.
- User enters basic event information:
- Title: "Weekend Community Walk — Moderate Pace"
- Category: Outdoor/Sports (predefined)
- Host: Boğaziçi University Athletism Club (auto-filled from profile)
- Cover image: uploads a club/event image
- Description includes:
- Pace: ~5–5.5 km/h (moderate)
- Age constraint: 16+
- Fitness suitability: beginner-to-intermediate (comfortable walking for ~2 hours)
- Suitable outfit & shoes: walking/running shoes, weather-appropriate layers, water bottle
- Safety: warm-up note, hydration reminder, do not join with acute injury
- User selects Location Type = Route.
- System opens the interactive route editor on the map.
- User sets:
- Starting place (Start Point): meeting marker on the map (e.g., main gate/entrance area)
- Ending place (End Point): finish marker on the map (e.g., viewpoint/exit area)
- Optional waypoints to follow a safe path (parks, sidewalks)
- System previews the route on the map and stores it as the event location.
- User sets the time interval:
- Starting time: Saturday 09:00
- Approx. finishing time: Saturday 11:15 (entered as the event end time)
- System validates the time interval (start–end) and required fields.
- User adds custom tags for discoverability:
16+,moderate-pace,walking-shoes,bring-water,beginner-friendly
- User sets privacy and access:
- Visibility: Public
- User taps Publish.
Criteria
1.1.1 The system shall allow users to register using phone number–based authentication.
1.1.2 The system shall send a verification code via SMS during registration.
1.2.1 A user profile shall contain a profile photo, name, and bio.
1.3.1 The system shall record all events a user created or attended.
2.1.2 The following fields shall be mandatory during event creation: Location, Time interval, Category, Description, Event image, Host.
2.1.3 The system shall validate that all mandatory fields are filled.
2.2.1 The location shall support a single point or a multi-point route.
2.2.2 The system shall validate map coordinates before saving.
2.3.1 Events must include both start and end timestamps.
2.3.2 The system shall prevent events where the end time is earlier than the start time.
2.4.1 Users shall select a category from a predefined list.
2.5.1 Users shall be able to add up to N custom tags (e.g., 5).
3.1.1 The system shall support three privacy types: Public, Protected, Private.
5.1.1 Public and protected events shall appear on the map.
6.2.1 Each event shall display: Number of participants, Number of favorites.
8.1.1 Events shall automatically move to “Past” after their end time.
8.2.1 Archived events shall be searchable.
10.1.1 Event versioning shall maintain atomicity.
11.1.1 Passwords shall be hashed using industry-standard algorithms.