To wersja testowa nowego serwisu infoShare Academy — wyświetlane treści i oferta nie są wiążące ani kompletne

Software Design

DDD

Domain-Driven Design (DDD) is an approach to system design that places strong emphasis on reflecting business processes and assumptions as accurately as possible in implementation.

Duration
16h · 2 days
Who it's for

Ideal for teams that…

1 Developers, designers, architects, business analysts, and product owners who wish to learn and practice designing complex domain models using Domain-Driven Design
2 Those who want to build up their theoretical knowledge and hone both strategic and tactical modeling skills through practical, real-world examples
Outcomes after the program

Solid backend and architecture — patterns proven in production.

You will understand how Domain-Driven Design helps in designing information systems

You will learn how to apply tactical pattern techniques within a Bounded Context

You will learn how to use strategic thinking when building an information system

You will understand the importance of Domain Events and how they can be used for integrating Bounded Contexts

Program

What we actually do

  • · Introduction What is a domain-driven approach? Common problems encountered When and how to apply Domain-Driven Design
  • · Modeling Process Pitfalls of Database-First approach and noun-based modeling Using EventStorming in the design process EventStorming Big Picture – discovering the language and preliminary context boundaries EventStorming Process Level – modeling business processes and defining context boundaries EventStorming Design Level – modeling aggregates and their boundaries Tips & Tricks
  • · EventStorming Session
  • · Strategic Domain-Driven Design Patterns Pattern catalog Bounded Context Methods for discovering domains, subdomains and Bounded Contexts Ubiquitous Language Discovering language: its role in communication and implementation Context Map Methods of integrating contexts
  • · Tactical Domain-Driven Design Patterns Value Object Entity Aggregate Upholding invariants Heuristics for aggregate modeling Four rules for identifying consistency boundaries Typical consequences of incorrect aggregate boundaries Repository Factory Domain Service Policy (including use of design patterns in modeling policies) Specification Event Saga Implementation considerations: Persistence of aggregates (with separate model / using events) Data validation Involving infrastructure vs domain vs framework Communication between modules (within monolith, microservices) Testing Translating the domain model into application architecture, integrating with frameworks Related techniques: Command Query Responsibility Segregation (CQRS) Event Sourcing
  • · Additional Topics Four levels of model – large-scale structures Capabilities Operations Policies Decision Support
  • · Good & Bad Practices Review of typical modeling and implementation mistakes Helpful heuristics for modeling DDD vs DDD Lite
  • · Q&A
Every module is adapted to your stack and context. The above is a starting point — not a fixed agenda.
How we work

From brief to retro in 30 days.

01

Brief & diagnosis

A call with the team lead + a short survey for participants. We define goals, gap and context.

02

Program customization

We adapt modules, case studies and code examples to your stack. Approval in 5 days.

03

Workshop

Trainer-led sessions, hands-on, code review. Mentor available between sessions too.

04

Retro + report

Outcome report for the team and lead. 30 days of consulting included.

Inquiry

Send a brief. We'll reply within 1 day.

After a short brief we'll prepare a program and a quote. No obligations — it's just a starting point.

Quote within 48h of the brief
First session within 30 days
Pilot before the full decision
VAT invoice, payment in instalments possible

How we handle your data

We process your business data (name, work e-mail, phone number, company, job title) in order to handle your corporate training inquiry and prepare an offer. The data controller is infoShare Academy Sp. z o.o., Al. Grunwaldzka 472B, 80-309 Gdańsk. Providing the data is voluntary but necessary to receive a response. You have the right to access, rectify, erase or restrict the processing of your data and to object to it. Full information is available in our data processing notice.

Optional marketing consents

The controller of your personal data is infoShare Academy sp. z o.o. The rules for processing personal data are set out in the Privacy Policy and the Data Processing Notice.