Project Architecture

Welcome to the project architecture notes.
The primary purpose of the project is do the usual .net micro services approach which makes in the context. I have a basic e-commerce project going on here. The app is to do the following.
- authentication and authorization service/api
- basic e-commerce operations
- product management service/api
- customer should be able to look at products
- admin should be able to add and edit products
- order management service/api
- customer places orders
- admin manages it
- coupon management service/api
- customer uses coupons during checkout
- admin manages coupons
- shopping cart management service/api
- customer adds and removes products from the cart
- message bus and email processor/logger
- Collect messages from different services and put it in the Azure queue
- Receive messages from the Azure Queue, and process it (like log the database to the database. in the future, may be, send email and such)
- Provide a web app that gives a UI to do all the above
- customer does customer things
- admin does admin things
Now, each component is developed as a separate project, either as a web api, or a web app or a class project. That means, each of them can be individually developed, debugged and deployed. This leads to some duplication (like DTO classes for example), but, it’s a small price to pay for the flexibility offered by the micro service approach.
book a session with me
- calendly
hire and get to know me
find ways to hire me, follow me and stay in touch with me.
- github
- personal site
- upwork
- fiverr
- codementor
- stackoverflow
- Jay’s Coding Channel
- medium blog