Hendrik Lösch

How to Domain Model – An example from manufacturing

How do you solve a problem described as 'Sudoku on a Rubik's cube?' Learn how a robust domain model tames software complexity for high-tech manufacturing machinery.

How to Domain Model – An example from manufacturing
#1about 3 minutes

Understanding complexity in cyber-physical systems

Cyber-physical systems in manufacturing combine hardware and software, creating significant complexity that traditional software development models don't always address.

#2about 3 minutes

How product variations explode software complexity

Multiple variation points, such as different hardware suppliers or customer workflows, combine to create an explosion of complexity that can overwhelm a project.

#3about 4 minutes

Separating the problem space from the solution space

Domain-driven design helps teams focus on the business problem first by creating a domain model, rather than immediately jumping to implementation details and frameworks.

#4about 4 minutes

Discovering your domain model with event storming

Event storming is a collaborative workshop technique that helps teams map out business processes and identify key events, commands, and aggregates for the domain model.

#5about 2 minutes

An example domain model from the manufacturing industry

A real-world domain model for a mask repair machine shows how different bounded contexts like handling and repair use specific language to avoid ambiguity.

#6about 7 minutes

Implementing the model using tactical DDD patterns

Translate the abstract domain model into code using tactical patterns like aggregates, entities, value objects, repositories, and factories to structure the software.

#7about 2 minutes

Extending DDD with manufacturing-specific patterns

Standard DDD patterns can be extended with concepts specific to a domain, such as actuators, sensors, and state machines for hardware-centric systems.

#8about 3 minutes

Applying the domain model in a clean architecture

Placing the domain model at the core of a clean architecture isolates business logic from external dependencies like specific hardware, improving testability and maintainability.

#9about 1 minute

Why domain models create resilient and adaptable software

Designing software around a stable domain model, rather than volatile external dependencies, makes the system more resilient to changes in hardware or infrastructure.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

From learning to earning

Jobs that call for the skills explored in this talk.