1. Domain Driven Development (DDD)
Mr. Subramanyam Tirumani Vemala
https://www.linkedin.com/in/subbulinkedin/
2. Modernizing an Monolithic Application/
Migrating to Microservices from Monolithic:
Domain-Driven Design:
• Domains and Sub-Domains.
• Dividing the Monolithic (Domain) architecture into Sub-domains to
make them as Microservices.
• Works on Decomposition design pattern.
• (Ex.: Domain: E-commerce, Sub-Domain: products, buyers, sellers,
orders, payments etc.)
• (Domain = Context, Sub-Domain: Bounded context)
3. Decomposition Design Patterns:
• To decompose a small or big application into small services, you can
use the Decomposition patterns.
• An e-commerce application, then you can have separate services for
orders, payment, customers, and products if you decompose by
business capability.
• You can use the Domain-Driven Design through which the whole
domain model is broken down into sub-domains. Then, each of these
sub-domains will have their own specific model and scope (Bounded
context).
4. Decomposition: Vine Pattern or Strangler
Pattern.
• No complete replacement.
• Divide the system into smallest units called as Vines.
• Modernize/ migrate each unit into a microservice.
• Strangle the relative legacy part of the monolithic application, which
has been modernized.
• Do the modernization or migration in phases replacing the each Vine
and strangle the legacy monolithic part of the vine which is migrated.