Modulübersicht

DDD HEX KAFKA Verteilte Architektur – Modulübersicht

Die Unter­module sind nach Verantwortung geordnet. Öffne nur die Karte, deren fachliche oder technische Aufgabe du untersuchen möchtest.

29 Module5 KategorienInhalte vollständig übernommen

Deployment 1

deploy-openshiftDeployment
← Index
Verantwortung

Kubernetes/OpenShift Manifeste, Helm/Kustomize Beispiel und Runbook.

Fachlicher Ablauf

Build erzeugt Images, Deployment rollt Services aus.

Wichtige Klassen

DeployOpenshiftComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

DeployOpenshiftRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Infrastructure as Code, Blue-Green

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

Messaging 21

adapter-batchMessaging
← Index
Verantwortung

Import/Export Jobs, Reconciliation und Recovery-Läufe.

Fachlicher Ablauf

Periodischer Job liest offene Outbox/Saga Fälle.

Wichtige Klassen

AdapterBatchComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

AdapterBatchRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Template Method, Chunk Processor

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

adapter-legacy-soapMessaging
← Index
Verantwortung

Anti-Corruption Layer für alte SOAP Partner oder ERP Services.

Fachlicher Ablauf

DTO wird in Legacy Request übersetzt, Fehler werden normalisiert.

Wichtige Klassen

AdapterLegacySoapComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

AdapterLegacySoapRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Anti-Corruption Layer, Adapter

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

adapter-messaging-kafkaMessaging
← Index
Verantwortung

Event Publishing und Event Listener für Integrationsereignisse.

Fachlicher Ablauf

Outbox Publisher sendet Events idempotent an Kafka.

Wichtige Klassen

AdapterMessagingKafkaComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

AdapterMessagingKafkaRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Publisher, Consumer, Idempotent Receiver

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

adapter-persistence-jpaMessaging
← Index
Verantwortung

Repository-Implementierungen, Entity Mapping, Outbox Tabelle.

Fachlicher Ablauf

Speichert Aggregates und Outbox in derselben Transaktion.

Wichtige Klassen

AdapterPersistenceJpaComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

AdapterPersistenceJpaRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Repository, Data Mapper, Unit of Work

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

adapter-restMessaging
← Index
Verantwortung

HTTP API, DTO Mapping, Controller, Fehlerantworten.

Fachlicher Ablauf

Nimmt Request an, validiert oberflächlich, ruft Use Case Port auf.

Wichtige Klassen

AdapterRestComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

AdapterRestRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Adapter, DTO, Mapper

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

api-gateway-bffMessaging
← Index
Verantwortung

Zusammengesetzte API für Web/Mobile Clients.

Fachlicher Ablauf

Ruft mehrere Use Cases/Read Models zusammen.

Wichtige Klassen

ApiGatewayBffComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

ApiGatewayBffRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Facade, API Gateway

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

application-customerMessaging
← Index
Verantwortung

Use Cases für Kundenprüfung und Segmentierung.

Fachlicher Ablauf

REST oder Saga fragt CustomerDecision ab.

Wichtige Klassen

ApplicationCustomerComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

ApplicationCustomerRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Facade, Policy

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

application-inventoryMessaging
← Index
Verantwortung

Use Cases für Inventory Reservation und Release.

Fachlicher Ablauf

Verarbeitet Events und ruft Domain-Service auf.

Wichtige Klassen

ApplicationInventoryComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

ApplicationInventoryRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Application Service, Transaction Script bewusst begrenzt

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

application-orderMessaging
← Index
Verantwortung

Use Cases für OrderPlacement, Confirmation und Cancellation.

Fachlicher Ablauf

Koordiniert Ports, startet Domainlogik, schreibt Outbox.

Wichtige Klassen

ApplicationOrderComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

ApplicationOrderRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Use Case, Port, Command Handler

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

application-paymentMessaging
← Index
Verantwortung

Use Cases für Payment Authorization und Capture.

Fachlicher Ablauf

Wird durch Saga oder REST Adapter aufgerufen.

Wichtige Klassen

ApplicationPaymentComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

ApplicationPaymentRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Command Handler, Adapter

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

architecture-bomMessaging
← Index
Verantwortung

Versionen und DependencyManagement, damit alle Module konsistente Abhängigkeiten nutzen.

Fachlicher Ablauf

Wird von allen fachlichen Modulen importiert.

Wichtige Klassen

ArchitectureBomComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

ArchitectureBomRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Facade, Dependency Management

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

domain-catalogMessaging
← Index
Verantwortung

Produktkatalog, Preislisten, Produktverfügbarkeit.

Fachlicher Ablauf

Order Use Case prüft Artikel und Preise.

Wichtige Klassen

DomainCatalogComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

DomainCatalogRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Read Model, Adapter

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

domain-customerMessaging
← Index
Verantwortung

Kundenprofil, Kreditlimit und Risikoindikator.

Fachlicher Ablauf

Use Case fragt Kreditlimit ab, bevor Bestellung bestätigt wird.

Wichtige Klassen

DomainCustomerComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

DomainCustomerRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Policy, Specification

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

domain-inventoryMessaging
← Index
Verantwortung

Reservierung, Freigabe und Bestandsbuchung.

Fachlicher Ablauf

OrderCreated reserviert Bestand; bei Fehler Compensation.

Wichtige Klassen

DomainInventoryComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

DomainInventoryRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Repository, Aggregate Root

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

domain-orderMessaging
← Index
Verantwortung

Bestellung als Aggregate Root mit OrderLine, Pricing-Regeln und Statusübergängen.

Fachlicher Ablauf

Use Case legt Bestellung an, Domain prüft Invarianten, Event wird erzeugt.

Wichtige Klassen

DomainOrderComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

DomainOrderRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Aggregate Root, Specification, Factory

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

domain-paymentMessaging
← Index
Verantwortung

Zahlungsautorisierung, Capture, Refund und Zahlungsstatus.

Fachlicher Ablauf

Saga startet Autorisierung und kompensiert bei Lieferproblem.

Wichtige Klassen

DomainPaymentComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

DomainPaymentRepository: austauschbare Speicherabstraktion.

Architekturbausteine

State, Strategy, Domain Service

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

mvn-ws-ddd-hex-kafkaMessaging

Komplexer Enterprise-Lernworkspace mit 28 konzeptionellen Modulen. Ziel ist nicht nur lauffähiger Beispielcode, sondern Architekturverständnis: Modulgrenzen, Abhängigkeitsrichtung, Entwurfsmuster, Teststrategie und Betriebsfähigkeit.

Fachlicher Ablauf
  1. Parent und BOM prüfen.
  2. Shared Kernel verstehen.
  3. Domain-Module lesen: Order, Payment, Inventory, Customer, Catalog.
  4. Application-Use-Cases lesen.
  5. Adapter betrachten: REST, JPA, Kafka, SOAP, Batch.
  6. Outbox, Saga und CQRS als Deep Dive nachvollziehen.
  7. Security, Observability und OpenShift Deployment ergänzen.
  8. Architekturtests und Contract Tests ausführen.
Ausführen und prüfen
mvn -q -DskipTests package
mvn -q test

Codex / Claude Code Phasenaufbau

Dieses Projekt enthält jetzt einen eigenen Bereich, der beschreibt, wie Codex oder Claude Code den Workspace phasenweise aufbauen würde: AI_BUILD_PHASES.html.

orchestration-sagaMessaging
← Index
Verantwortung

Langlaufende Order-to-Cash Prozesssteuerung mit Compensation.

Fachlicher Ablauf

OrderPlaced -> Reserve -> Authorize -> Confirm oder kompensieren.

Wichtige Klassen

OrchestrationSagaComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

OrchestrationSagaRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Saga, Process Manager, State Machine

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

outbox-engineMessaging
← Index
Verantwortung

Transaktionaler Outbox Publisher mit Retry, Locking und Idempotenz.

Fachlicher Ablauf

Liest Pending Events, published, markiert abgeschlossen.

Wichtige Klassen

OutboxEngineComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

OutboxEngineRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Transactional Outbox, Retry, Idempotency

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

query-cqrs-readmodelMessaging
← Index
Verantwortung

Projektierte Lesemodelle für UI und Reporting.

Fachlicher Ablauf

Events aktualisieren optimierte Tabellen oder Views.

Wichtige Klassen

QueryCqrsReadmodelComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

QueryCqrsReadmodelRepository: austauschbare Speicherabstraktion.

Architekturbausteine

CQRS, Projection

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

shared-kernelMessaging
← Index
Verantwortung

Gemeinsame fachliche Wertobjekte, IDs, Domain Events und Fehlerklassen.

Fachlicher Ablauf

Alle Domains hängen nur kontrolliert davon ab.

Wichtige Klassen

SharedKernelComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

SharedKernelRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Value Object, Domain Event

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

Observability 1

observability-moduleObservability
← Index
Verantwortung

Tracing, strukturierte Logs, Metriken und Audit Events.

Fachlicher Ablauf

Jeder Use Case erzeugt Correlation-ID und Business Audit.

Wichtige Klassen

ObservabilityModuleComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

ObservabilityModuleRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Observer, Decorator

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

Security 1

security-moduleSecurity
← Index
Verantwortung

Rollen, Berechtigungen, Token Claims, Method Policies.

Fachlicher Ablauf

REST Adapter prüft Claims; Use Case prüft fachliche Rechte.

Wichtige Klassen

SecurityModuleComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

SecurityModuleRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Policy, Guard, Chain of Responsibility

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

Testing 5

architecture-testsTesting
← Index
Verantwortung

ArchUnit-Regeln für Layering, Dependency Direction und Naming.

Fachlicher Ablauf

Build bricht bei verbotenen Abhängigkeiten.

Wichtige Klassen

ArchitectureTestsComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

ArchitectureTestsRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Architecture Fitness Function

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

common-testTesting
← Index
Verantwortung

Testdatenbauer, Contract-Test-Basis, Assert-Helfer.

Fachlicher Ablauf

Wird nur im Test-Scope verwendet.

Wichtige Klassen

CommonTestComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

CommonTestRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Test Data Builder, Object Mother

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

contract-testsTesting
← Index
Verantwortung

Consumer/Provider Verträge für REST und Events.

Fachlicher Ablauf

Sichert Adapter-Kompatibilität zwischen Modulen.

Wichtige Klassen

ContractTestsComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

ContractTestsRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Contract Test, Test Pyramid

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

integration-testsTesting
← Index
Verantwortung

Testcontainers-orientierte End-to-End-Flows.

Fachlicher Ablauf

Startet Adapter und prüft Order-to-Cash.

Wichtige Klassen

IntegrationTestsComponent: kompakter Fach-/Adapterbaustein mit Pattern-Kommentaren.

IntegrationTestsRepository: austauschbare Speicherabstraktion.

Architekturbausteine

Test Harness, Fixture

Lokale Lernaufgabe

Lies zuerst die README, dann die Klassen, dann die Pattern-Kommentare. Ergänze danach einen Test, der eine fachliche Regel oder eine Adaptergrenze absichert.

Stand 2026-07-07

runnable-smokeTesting

runnable-smoke

Dieses Modul macht den Workspace sofort ausfuehrbar.

Start

mvn -q -pl runnable-smoke -am package exec:java

Zweck

Der Smoke-Run fuehrt einen kompakten Enterprise-Ablauf aus: Order validieren, Inventory reservieren, Payment autorisieren, Outbox-Event erzeugen und Deployment-Bereitschaft pruefen.

Entwurfsmuster

  • Command: fachliche Schritte als ausfuehrbare Aktionen.
  • Pipeline: Schritte laufen in stabiler Reihenfolge.
  • Result Object: klare Rueckgabe ohne versteckte Seiteneffekte.
⌂ Cockpit