Skip to main content

Functional Requirements

Requirements Overview

  1. Registration and Login:

    1. Users must be able to register to the system.
    2. Users must be able to log in to the system.
    3. Users must be able to log out of the system.
  2. User Profile management:

    1. Users must be able to view their profile.
    2. Users must be able to edit their profile.
    3. Users must be able to see other users' profiles.
  3. Session management:

    1. Users must be able to create a new session.
    2. Users must be able to join a session.
    3. Users must be able to leave a session.
  4. Synchronized Video Playback:

    1. Users must be able to watch videos in sync with other users in the same session.
    2. Users must be able to pause, play, and seek the video.
  5. Chat functionality:

    1. Users must be able to send messages to other users in the same session.
    2. Users must be able to receive messages from other users in the same session.

User Stories

User stories are used to describe the features listed above in a more detailed manner. They are written from the perspective of the end-user and show how the system will be used.

Registration and Login

  1. User Registration:
    As a new user,
    I want to register to the system,
    so that I can start using the application.

  2. User Login:
    As a registered user,
    I want to log in to the system,
    so that I use the application features.

  3. User Logout:
    As a logged-in user,
    I want to log out of the system,
    so that I can securely exit the application.

User Profile Management

  1. View Profile:
    As a logged-in user,
    I want to view my profile,
    so that I can see my personal information.

  2. Edit Profile:
    As a logged-in user,
    I want to edit my profile,
    so that I can update my personal information.

  3. View Other Users' Profile:
    As a logged-in user,
    I want to view other users' profiles,
    so that I can see their profile information.

Session Management

  1. Create Session:
    As a logged-in user,
    I want to create a new session,
    so that I can invite other users to watch videos together.

  2. Join Session:
    As a logged-in user,
    I want to join a session,
    so that I can watch videos with other users.

  3. Leave Session:
    As a logged-in user,
    I want to leave a session,
    so that I can exit the session.

Synchronized Video Playback

  1. Watch Video in Sync:
    As a session participant,
    I want to watch videos in sync with other users in the same session,
    so that we can watch videos together.

  2. Pause, Play, and Seek Video:
    As a session participant,
    I want to pause, play, and seek the video,
    so that I can control the video playback.

Chat Functionality

  1. Send Messages:
    As a session participant,
    I want to send messages to other users in the same session,
    so that we can communicate with each other.

  2. Receive Messages:
    As a session participant,
    I want to receive messages from other users in the same session,
    so that we can communicate with each other.