In this part we are going to design our e-commerce application with the monolithic architecture step by step. We will iterate the architecture design one by one as per requirements.
In every case, before we design the architecture, We should always start with writing down FRs and NFRs. So lets write down FRs.
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.