Domain model

Checkout lesson on UDEMY Section preview

Enterprise model

Depicts the entire enterprise business domain covering multiple functional areas

Traditionally eneterprise models were put together to depict the business data and processes. Thes models were used for building software (monoliths). The models were also known by other names:

  • Unified models
  • Canonical models
  • Aggregate models

domain-example-2

Challenges

  • Complexity - Inherent complexity due to scope and size
  • Linguistic - common to see conflicting meaning of terms e.g., contract has a different meaning for retail and credit card accounts in banking
  • Ownership - Hard to keep the models up to date as there is no single owner

Domain Driven Design

Domain Driven Design approach provides principles and patterns to address the challenges faced with developing complex domain models

Focus in Domain Driven Design is on breaking the model into smaller self contained models. This is no different from how we deal with complex problems :) we break a larger problem into multiple smaller chunks and then solve each one of them to address the need !!!

Diagrams & Business glossary that describes the processes, activities & operations in an enterprise | domain

Domain model represents the solution(s) to the problem space

Before we dive deeper into Domain Driven Design let’s understad what is a domain ?