Skip to content

Structure

Kawohl edited this page Sep 9, 2024 · 1 revision

Feature-Centric Structure for tribelike

GitHub Structure

Labels

  • Feature
  • Use Case
  • User Story
  • Epic (for grouping related features)
  • Priority: High, Medium, Low
  • Status: To Do, In Progress, Review, Done
  • Type: Frontend, Backend, API, Database, etc.

Milestones

Create milestones for major releases or sprints.

Projects

Use GitHub Projects to create a Kanban board for visualizing work progress.

Hierarchy and Linking

  1. Epics (Optional, for grouping related features)
  2. Features
  3. Use Cases (linked to Features)
  4. User Stories (linked to Use Cases)

Structure Example

Epic: Profile Management

  • Issue title: "[Epic] Profile Management"
  • Labels: Epic, Priority: High
  • Description: Overview of profile management functionality

Feature: Multiple Profile Creation

  • Issue title: "[Feature] Multiple Profile Creation and Management"
  • Labels: Feature, Priority: High
  • Description: Functionality to create and manage multiple user profiles with distinct interests and settings
Use Case: Creating a New Profile
  • Issue title: "[Use Case] User Creates a New Profile"
  • Labels: Use Case, Priority: High
  • Description:
    1. User navigates to profile management section
    2. User selects "Create New Profile"
    3. User enters profile name (e.g., "Sports", "Work")
    4. User selects interests for the profile
    5. User saves the new profile
    6. System confirms profile creation and displays it in the user's profile list
  • Link to parent feature in the description
User Story: Create Profile
  • Issue title: "As a user, I want to create multiple profiles"
  • Labels: User Story, Priority: High, Type: Frontend
  • Description: "As a user, I want to create multiple profiles (e.g., "Sports", "Work", "Family", "Private") so that I can compartmentalize different aspects of my life."
  • Link to parent use case in the description
User Story: Add Interests to Profile
  • Issue title: "As a user, I want to add interests to my profile"
  • Labels: User Story, Priority: Medium, Type: Frontend
  • Description: "As a user, I want to add interests to each of my profiles so that I can accurately represent my diverse set of hobbies and preferences."
  • Link to parent use case in the description
Use Case: Switching Between Profiles
  • Issue title: "[Use Case] User Switches Between Profiles"
  • Labels: Use Case, Priority: Medium
  • Description:
    1. User logs into their account
    2. User accesses profile switcher interface
    3. User selects desired profile from list
    4. System loads selected profile, updating visible interests and settings
    5. User interacts with platform using selected profile
  • Link to parent feature in the description
User Story: Easy Profile Switching
  • Issue title: "As a user, I want to easily switch between my profiles"
  • Labels: User Story, Priority: Medium, Type: Frontend
  • Description: "As a user, I want to easily switch between my different profiles so that I can interact with the platform in different contexts without logging out and back in."
  • Link to parent use case in the description

Feature: Location Management

  • Issue title: "[Feature] Location of Interest Management"
  • Labels: Feature, Priority: Medium
  • Description: Functionality to add, manage, and utilize multiple locations of interest in user profiles
Use Case: Adding a New Location of Interest
  • Issue title: "[Use Case] User Adds a New Location of Interest"
  • Labels: Use Case, Priority: Medium
  • Description:
    1. User navigates to location management section
    2. User selects "Add New Location"
    3. User enters location details (name, coordinates, or selects on a map)
    4. User specifies duration of interest (permanent, temporary with dates)
    5. User saves the new location
    6. System confirms addition and updates user's locations list
  • Link to parent feature in the description
User Story: Add Multiple Locations
  • Issue title: "As a user, I want to add multiple locations of interest"
  • Labels: User Story, Priority: Medium, Type: Frontend
  • Description: "As a user, I want to add multiple "locations of interest" to my profile so that I can connect with communities in various places I frequent or plan to visit."
  • Link to parent use case in the description

Working with the Structure

  1. Create epics as high-level groupings of related features (optional).
  2. Create features as independent issues, linking them to epics if used.
  3. For each feature, create one or more use cases that describe specific scenarios of user interaction.
  4. Create user stories for each use case, ensuring they align with the specific steps or requirements outlined in the use case.
  5. Use the Projects board to visualize and manage the workflow of features, use cases, and user stories.
  6. Utilize milestones to group issues for specific releases or sprints.
  7. Use labels to filter and sort issues easily.