[VideoStreaming][1/n] Requirements

Functional requirements

  • Users can register an account using email and password
  • Users can sign-in with previously registered email and password
  • Users can perform a live stream to their account from their Desktop/Laptop
  • Users can view a live or pre-recorded public stream of any channel using Browsers or IOS App
  • Users can view and interact with a dedicated chat of a live stream
  • Users can see how many viewers are watching a stream

Non-functional requirements

  • Security — accounts are protected and require authentication
  • Logging — all interactions with the system are logged and allow retrospection for at least few days period
  • Storage — video, audio, messages and user accounts are backed by a database
  • Configuration — features and optimisations are controllable without the need of redeployment
  • Performance — aim at good level of latency and quality
  • Cost — aim at choosing cost-efficient solutions
  • Interoperability — build extensible API for future improvements and integrations

--

--