Domain-Driven Transformation

Monolithen und Microservices zukunftsfähig machen

Carola Lilienthal and Henning Schwentner

Cite this publication as

Carola Lilienthal, Henning Schwentner, Domain-Driven Transformation (2023), dpunkt.verlag, Heidelberg, ISBN: 9783969107645

537
accesses
10
quotes

Description / Abstract


Über den Umbau von IT-Landschaften mit Domain-Driven Design



  • kompakter, tiefgehender Einblick in Domain-Driven Design (DDD) und die Verwendung der vielfältigen DDD-Techniken in der Praxis – Fokussierung auf Legacy-Systeme und Migration in Richtung gut strukturierter Monolithen und Microservices

  • Zusammenhang zwischen Transformation der Architektur und der Teamorganisation


In den letzten Jahrzehnten ist sehr viel Software entwickelt worden, die wir heute modernisieren und zukunftsfähig machen wollen. Domain-Driven Design (DDD) eignet sich hervorragend, um große Legacy-Systeme in Microservices zu zerlegen oder zu wartbaren Monolithen umzubauen. In diesem Transformationsprozess wird der fachliche Kern des Softwaresystems herausgearbeitet. Auf der Makro-Architektur-Ebene wird das System in unabhängige DDD-Module aufgeteilt. Auf der Mikro-Architektur-Ebene werden zusätzlich DDD-Muster eingesetzt, um den Code weiter zu strukturieren.  

Dieses Buch kombiniert Anleitungen, Erkenntnisse und Beispiele aus der Beraterpraxis des Autorenteams. Es veranschaulicht, wie Techniken aus DDD und Refactorings verwendet werden können, um Softwaresysteme zu transformieren, die über Jahre gewachsen und möglicherweise ohne Architekturverständnis entwickelt wurden. Die Leser*innen lernen einen Prozess der Transformation kennen, den sie als Ganzes oder schrittweise in ihre Alltagspraxis übernehmen können, um die Wartbarkeit ihrer Legacy-Systeme effektiv und schnell zu verbessern. Sie erhalten:



  • einen detaillierten Einblick in DDD und die Verwendung der vielfältigen DDD-Techniken in der Praxis,

  • eine Anleitung, wie DDD eingesetzt werden kann, damit Legacy-Systeme wartbar bleiben oder wartbarer werden,

  • eine Anleitung, wie vorzugehen ist, falls eine Zerlegung der Monolithen und eine Neustrukturierung der Microservices geplant ist,

  • Argumente an die Hand, wann eine Zerlegung in Microservices für einen Monolithen sinnvoll ist und wann nicht.


 


Description

Dr. Carola Lilienthal ist Geschäftsführerin der WPS Workplace Solutions GmbH in Hamburg und verantwortet dort den Bereich Softwarearchitektur. Sie hat 1995 an der Universität Hamburg ihr Diplom in Informatik gemacht und dort zum Thema »Komplexität von Softwarearchitekturen« promoviert. Seit 2003 analysiert sie international im Auftrag ihrer Kunden die Architektur von Softwaresystemen und berät Entwicklungsteams, wie sie die Langlebigkeit ihrer Softwaresysteme verbessern können. Insgesamt hat sie mit ihrem Team über dreihundert Softwaresysteme zwischen 30000 und 15 Mio. LOC in Java, C++, C#, ABAP, PHP und TypeScript untersucht. Besonders am Herzen liegt ihr die Ausbildung von Softwarearchitekten und Entwicklern, weshalb sie aktives Mitglied bei iSAQB, International Software Architecture Qualification Board, ist und ihr Wissen aus über 25 Jahren Softwareentwicklung regelmäßig auf Konferenzen, in Artikeln und bei Schulungen weitergibt. Henning Schwentner liebt Programmieren in hoher Qualität. Diese Leidenschaft lebt er als Softwarearchitekt, Berater, Trainer und Entwickler bei der WPS – Workplace Solutions GmbH aus. Seine Projekte sind Domain-Driven, agil und in Programmiersprachen wie Java und C#, aber auch ABAP geschrieben. Er gibt regelmäßig Workshops zum Thema Domain-Driven Design.

Table of content

  • BEGINN
  • Vorwort
  • Inhaltsübersicht
  • Inhalt
  • 1 Einleitung: Komplexität beherrschen
  • 1.1 Komplexität
  • 1.2 Herkunft der Komplexität: Problem- und Lösungsraum
  • 1.3 Art der Komplexität: essenziell vs. akzidentell
  • 1.4 Komplexität in Legacy-Systemen
  • 1.5 Struktur dieses Buches
  • Teil I – Grundlagen für Domain-Driven Transformation
  • Die grundlegenden Methoden
  • Komplexität sichtbar machen mit Architekturdokumentation
  • Das C4 Model
  • Wie weiter?
  • 2 Domain-Driven Design
  • 3 Collaborative Modeling
  • 4 Architekturkonzepte
  • 5 Vorgehen klären
  • Teil II – Technische, taktische und teamorganisatorische Domain-Driven Transformation
  • Wo stehen Sie? – Leicht gemacht
  • 6 Legacy-Software technisch stabilisieren
  • 7 Fachlichkeit stärken
  • 8 Teamorganisation verbessern
  • Teil III – Strategische Domain-Driven Transformation
  • Softwareentwicklung im Brownfield
  • Der Schlüssel: die Domäne (wieder) verstehen
  • Übersicht über die strategische Transformation
  • Die Struktur in diesem Teil
  • 9 Schritt 1 – Wiederentdecken der Fachdomäne
  • 10 Schritt 2 – Modellierung der fachlichen Soll-Architektur
  • 11 Schritt 3 – Abgleich Ist- mit Soll-Architektur
  • 12 Schritt 4 – Priorisierung und Durchführung der Umbaumaßnahmen
  • Abschluss
  • 13 Ausblick: Domain Patterns und ihre Umsetzung in Kontexten
  • 14 Fazit
  • Anhang
  • Literatur
  • Index

Related titles

    More of this author(s)