Design: Delivery Agent Assignment System
Includes order intake, agent status management, assignment logic, and notifications. Excludes payment processing and customer support.
Functional Requirements
FR1: Assign delivery agents to new orders automatically
FR2: Support real-time location tracking of delivery agents
FR3: Handle up to 10,000 concurrent orders per hour
FR4: Allow manual reassignment by dispatchers
FR5: Notify agents of new assignments instantly
FR6: Ensure agents are assigned based on proximity and availability
FR7: Support agent status updates (available, busy, offline)
Non-Functional Requirements
NFR1: API response time for assignment should be under 200ms (p99)
NFR2: System availability target is 99.9% uptime
NFR3: Support up to 5,000 active delivery agents simultaneously
NFR4: Data consistency for agent status and assignments must be strong