Please enable JavaScript.
Coggle requires JavaScript to display documents.
Naeem
DDD, Tactical Design
Pattern, Bounded Context
Relationship, Arch…
Naeem
DDD
-
1. Jargons
Domain:
Represents the
problem space
eg: eComm, banking
Sub-domain
In banking subdomains are
- Retail Accounts
- Loans
- Merchant Accounts
Categories
-
Generic
Doesn't add any
Differentiating business value
eg: HR and Facilities dept.
Solutions are readily available
-
-
-
Tactical Design
Pattern
-
:check:MDD: Model Driven Design provides a framework
for the realization of Systems modeled using
the Domain Driven Design approach
Tactical patterns are the building blocks
Entity Pattern
An Entity represents a uniquely identifiable
business object that encapsulates attributes
and a well-defined domain behaviour
Entities are meaningful within a Bounded Context
Entities are unique within a Bounded Context
Definition of entity consist of attributes and behavior
Entities are persisted in long term storage
Domain objects a.k.a. Business objects are
the foundational elements for defining the
concepts in a domain model
Value Object
-
-
Persisted as part of Entity Object
• OR not persisted to the long term storage
eg: EmailID in Customer entity
Aggregate Pattern
An Aggregate object is a cluster of entities
and value objects that are viewed as a
unified whole from the domain concepts and
data perspective
-
Arch Styles
-
Definition : Reusable architectural pattern
which may be used as a solution
to a commonly occurring problem
-
Domain Models
Definition : Organised and structured knowledge of
the domain that is relevant for solving a
business problem
-
How DDD helps
-
Business Model Canvas
-
A tool that helps discuss, communicate,
design and understand the organization's
business model
-
-
DDD Patterns
Strategic
-
-
1. Ubiquitous Language
-
Ubiquitous Language helps in breaking the
business context into smaller parts; in DDD
these smaller parts are referred to as the
Bounded Context
UL evolves over a period
UL may be managed on any knowledge collaboration platform
UL MUST be used in all form of communication & code
2. Bounded Context
DDD addresses the problems with
common domain model by breaking the
domain into independent parts referred to
as the Bounded Contexts
Characteristics of Bounded Contexts
- Each BC represented with its OWN domain model
- Domain model built for a BC applicable ONLY within its boundaries
- Language used in BC does NOT suffer from Linguistic Challenges
Each Bounded Context has its own
Ubiquitous Language; that is meaningful
only within that bounded context
Tactical
Translate of the conceptual models
to software application | services design
e.g., classes, modules
-
DDD approach provides
principles and patterns to address the
challenges faced with developing
complex domain models