Domain Driven Development (DDD)
Mr. Subramanyam Tirumani Vemala
https://www.linkedin.com/in/subbulinkedin/
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)
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).
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.

Domain Driven Development (DDD)

  • 1.
    Domain Driven Development(DDD) Mr. Subramanyam Tirumani Vemala https://www.linkedin.com/in/subbulinkedin/
  • 2.
    Modernizing an MonolithicApplication/ 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 Patternor 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.