Skip to main content

Requirements

Functional Requirements

The system should support the following:

  1. One-on-One Messaging: Text as well as Media
  2. Message Status Update: Sent, Delivered, Seen
  3. User Status: Online or Last-Seen
  4. Group Messaging: Chat in group

Non-Functional Requirements

The system should be:

  1. Availability: Must be 7 9's available i.e. available 99.99999% of time
  2. Low Latency: Messages should feel instant like f2f conversation.
  3. Scalability: Must be Scalable to manage high-traffic of users at the same time.
  4. Security: Only the Sender and reciever should see the message.