Functional Requirements
List products
Filter products as per brand and categories
Put products into the shopping cart
Apply coupon for discounts and see the total cost all for all of the items in shopping cart
Checkout the shopping cart and create an order
List my old orders and order items history
Lets write down N-FR.
Non-Functional Requirements
Availability
Scalability
Its good to add principles in our picture in order to remember them always.
Principles
DRY
KISS
YAGNI
We are going to consider these principles when design our architecture.
Now we can consider to Database and Components of e-commerce application.
Database
Database will be single relational database — RDBMS.
Components of E-Commerce
Shop UI
Catalog Service
SC Service
Discount Service
Order Service