Basic concepts of Domain Driven Design

  • Business logic can be expressed in If- else and loops. That’s it
  • Business rules are the hearth of software development
  • Domain could be divided into 3 sub-categories
Service
  • One bounded context : One subdomain
  • One bounded context : Several subdomains
Bounded Context
Value stream and bounded-context
  • Shared context
  • Customer-supplier
  • Conformist
  • Anti corruption layer
  • Open host service
Shared context representation in Kanban board
Value stream from one bounded-contect to another bounded context
Filtering mechanism as a anti-corruption layer
OHS representation
  • Aggregates
  • Value objects
  • Domain events
  • Domain services
  • Customer (aggregate)
    → Address (value object)
    → Status (value object)
    → Account (entity)
    → → Private accounts (entity)
    → → Public accounts (entity)
  • If customer come to the system first time : NEW_LEAD
  • If customer go from the system without a payment : CLOSED
  • If customer go to silent mode then we need to follow up : FELLOW_UP
  • If customer buy from us then we are successful : CONVERTED
  • If customer is in the system but waiting : WAITING
States and the flow

--

--

--

Business Agility lover, TDD guy, clean coder, non-stop learner.

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Personal Productive Canvas: how to join Windows and Mac?

What I done did in January 2022

GSOC’20 Week 6–7 Update

Woocommerce Split Order 1.5.1 [Latest Update & Pre-Licensed]

Ignore properties —  C#

Developers as your customer (or how I learned to stop worrying and love the feedback loop)

gradle scripts for Kotlin lovers

Anonymous inner class vs Lambda Expression

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
ALTUĞ BİLGİN ALTINTAŞ

ALTUĞ BİLGİN ALTINTAŞ

Business Agility lover, TDD guy, clean coder, non-stop learner.

More from Medium

Building Microservices (Part 2)

Decomposing monolith into microservices

SAGA Distributed Transaction Pattern in Microservices

CQRS with Event Sourcing