Skip to content

Design Movie Ticketing or BookMyShow

Requirements

  • Search movie, events, sports

  • Scope: book movie tickets

  • Flow

    • View cinemas by city
    • Cinemas
      • different types (multiplex, halls)
      • city name
    • Movies
      • Each movie runs multiple times a day
      • Search Movie
        • title
        • language
        • release date
        • city name
      • View Movie
        • Cinemas
      • Book Ticket
        • Seat
        • Payment
    • city -> cinema -> movie -> seat -> payment
  • Seats can be occupied or vacant

  • Same seat can not be booked by multiple users (concurrency lock)

  • Users can cancel

  • Users

    • Guest (Unauthenticated User)
    • Customer (Authenticated User)
    • Cinema
    • Admin