Design: E-commerce Microservices Platform
Design the system architecture focusing on how to split the system into bounded contexts and how they communicate. Out of scope: detailed UI design and deployment specifics.
Functional Requirements
FR1: Support multiple business domains like ordering, inventory, and payment
FR2: Each domain should evolve independently without affecting others
FR3: Clear separation of data and logic per domain
FR4: Allow teams to work autonomously on different domains
FR5: Enable integration between domains with minimal coupling
Non-Functional Requirements
NFR1: Handle 10,000 concurrent users
NFR2: API response latency p99 under 300ms
NFR3: Availability target 99.9% uptime
NFR4: Data consistency within each domain, eventual consistency across domains