aktive Maven-Module
Ohne die alten Module obsolete training module und obsolete training module.
Die frühere Beispiel-Legacy wurde entfernt. enterprise-legacy-monolith ist jetzt die einzige verbindliche Legacy-Implementierung: mit sechs unterschiedlichen Enterprise-Abläufen, konsistentem Schema, echten Tests, Golden Master, ACL, Strangler, Parallel Run und funktionaler Spring-Boot-Outbox.
Ohne die alten Module obsolete training module und obsolete training module.
Order, Billing, Contract, Inventory, Returns und End-of-Day Settlement.
Alle früheren assertTrue(true)-Tests wurden ersetzt.
JaCoCo-Line-Coverage-Gate für Legacy und moderne Runtime.
Der projektlokale Bootstrap lädt beim ersten Start die festgelegte Maven-Version 3.9.11. Danach wird sie aus dem lokalen Maven-Cache verwendet.
# Windows
mvnw.cmd clean verify -Pall-tests
# Linux / WSL2
./mvnw clean verify -Pall-testsNur moderne Runtime lokal starten:
cd deploy/compose
docker compose up --buildDie alte Lernspur wurde physisch gelöscht und aus Parent-POM, Navigation und Berichten entfernt. Characterization Tests und ACL referenzieren ausschließlich die Enterprise-Legacy.
Beginne bei den sechs fachlichen Workflows und ihren Daten-/Remote-Abhängigkeiten. Nicht jede schlechte Struktur wird sofort korrigiert; zuerst muss ihr reales Verhalten sichtbar sein.
Unit Tests prüfen Regeln und Fehler. Schema-ITs prüfen SQL-Verträge. Golden Master schützt bekannte Ausgaben. Diese Kombination ist wichtiger als eine isolierte Coverage-Zahl.
ACL und Adapter verhindern, dass SOAP-Namen, Statuscodes und technische Fehler in das neue Domain-Modell wandern.
Strangler, Shadow Traffic und Parallel Comparison erlauben Legacy und Modern gleichzeitig. Ein Release Gate blockiert kritische Abweichungen.
Transactional Outbox, Retry/Failed-Status, Probes, Metrics, Ressourcenlimits und NetworkPolicy machen aus einer Code-Migration eine betreibbare Anwendung.
| Modul | Zweck und Inhalt | Priorität |
|---|---|---|
enterprise-legacy-monolith | Verbindliche Legacy-Quelle Sechs absichtlich gekoppelte Workflows mit EJB, JDBC, JMS, SOAP/REST-Clients, Audit und Outbox. | Kritisch |
characterization-tests | Golden Master Freigegebene Snapshots und Schema-Verträge schützen beobachtetes Legacy-Verhalten. | Kritisch |
refactoring-target-domain | Domain-Modell Money, OrderLine und Order-State-Machine als fachlich sauberes Zielmodell. | Sehr wichtig |
anti-corruption-layer | ACL / Translator Übersetzt mutable Legacy-DTOs, Statuscodes und Fehler in moderne Begriffe. | Kritisch |
solid-refactoring | SOLID-Zielbild Application Service und Ports trennen Fachlogik von Infrastruktur. | Sehr wichtig |
migration-batch | Restartable Migration Checkpoint, Chunk, Skip, Dead Letter und Wiederanlauf. | Sehr wichtig |
parallel-run-comparison | Parallel Run Feldvergleich, Geldtoleranzen, Severity und Release Gate. | Kritisch |
strangler-router | Strangler Routing Deterministischer Traffic Split, Shadow Mode und Fallback. | Kritisch |
modern-runtime-adapter | Legacy Adapter SOAP Mapping und begrenzte Retry-Policy am Systemrand. | Wichtig |
spring-boot-migration | Moderne Runtime REST, JPA, PostgreSQL, Transactional Outbox, Kafka, Retry, Metrics und Probes. | Kritisch |
runnable-smoke | Lauffähiger Überblick Kompakter Command-/Pipeline-Smoke-Flow ohne externe Infrastruktur. | Wichtig |
enterprise-legacy-monolith steht am Ausgangspunkt. characterization-tests beobachtet es, die ACL übersetzt es, Strangler und Parallel Run kontrollieren den Übergang. solid-refactoring und spring-boot-migration bilden das Ziel.
obsolete training module und obsolete training module wurden gelöscht. Ihre didaktisch sinnvollen Aspekte sind in der Enterprise-Legacy, den Characterization Tests und der Refactoring-Dokumentation aufgegangen.