- Einführung und Ziele
- Erläuterung der Agenda und der Ziele des Workshops
- Übersicht über die Bedeutung der Microservices-Migration für Unternehmen
- Grundlagen von Microservices
- Definition und Merkmale von Microservices
- Vorteile von Microservices
- Herausforderungen von Microservices
- Vergleich mit monolithischen Architekturen
- Einführung in Legacy-Systeme
- Definition und Merkmale von Legacy-Systemen
- Herausforderungen im Zusammenhang mit Legacy-Systemen
- Auswirkungen von Legacy-Systemen auf die Unternehmensentwicklung
- Risiken bei der Beibehaltung von Legacy-Systemen
- Bewertung der Legacy-Systeme
- Identifizierung technischer Schulden im Legacy-Code
- Messung der Code-Qualität und technischen Verschuldung
- Analyse der Auswirkungen von technischen Schulden auf die Geschäftsprozesse
- Bewertung der Wartbarkeit und Skalierbarkeit des Legacy-Systems
- Microservices-Architekturmuster
- Aufbau und Komponenten einer Microservices-Architektur
- Einblicke in verschiedene Architekturmuster (z. B. API-Gateway, Service Discovery, Event-Sourcing, CQRS)
- Vor- und Nachteile verschiedener Architekturansätze
- Domain-Driven Design (DDD) für Microservices
- Grundlagen von DDD und seine Bedeutung für die Microservices-Entwicklung
- Identifizierung von Microservices-Grenzen durch Domänenanalyse
- Aggregates, Entities und Value Objects in einer Microservices-Architektur
- Zusammenarbeit zwischen Domain-Experten und Entwicklern bei der Modellierung der Domäne
- Erstellung von Microservices
- Microservices-Entwicklung mit geeigneten Programmiersprachen und Frameworks
- Implementierung und Bereitstellung von einzelnen Microservices
- Skalierung und Resilienz von Microservices
- Verwaltung von Datenbanken und Transaktionen in einer Microservices-Architektur
- Service-Kommunikation und Datenaustausch
- Kommunikationsmuster (synchron, asynchron) zwischen Microservices
- Verwendung von Messaging-Systemen für Event-basierte Kommunikation
- Datenaustausch und -konsistenz zwischen Microservices
- Implementierung von API-Gateways für den Zugriff auf Microservices
- Strategien für die Microservices-Migration
- Big Bang vs. schrittweise Migration: Vor- und Nachteile
- Identifizierung von potenziellen Risiken und Herausforderungen
- Phasen der Migration und zeitliche Planung
- Refactoring und Modernisierung von Legacy-Code
- Bewährte Praktiken für das Refactoring von Legacy-Code
- Reduzierung von Abhängigkeiten und Verbesserung der Codequalität
- Integration von Legacy-Systemen mit neuen Microservices
- Gewährleistung der Kompatibilität während der Migrationsphase
- Sicherstellung der Qualität und Sicherheit
- Automatisierte Tests für Legacy-Code und Microservices
- Teststrategien für die Integration von Legacy- und Microservices-Komponenten
- Sicherheitsaspekte und Best Practices für die Microservices-Migration
- Überwachung und Fehlerbehandlung während der Migrationsphase
- Umgang mit Daten und Datenmigration
- Datenbankmigration und -konsolidierung
- Datenmapping zwischen Legacy- und Microservices-Datenstrukturen
- Datensicherheit und Datenschutz während der Migration
- Unterstützung von Datenmigration in einer produktiven Umgebung
- Implementierung von Microservices
- Auswahl geeigneter Technologien und Tools für die Microservices-Entwicklung
- Implementierungsrichtlinien und Coding-Standards für Microservices
- Verwendung von Container-Technologien (z. B. Docker, Kubernetes) für die Bereitstellung von Microservices
- CI/CD-Pipelines und DevOps für eine effiziente Microservices-Entwicklung
- Überwachung und Fehlerbehandlung
- Monitoring und Logging von Microservices
- Frühzeitige Fehlererkennung und Fehlerbehebung
- Implementierung von Tracing und Diagnose-Tools
- Skalierung und Lastausgleich von Microservices
- Best Practices für Microservices
- Skalierbarkeit und Ausfallsicherheit von Microservices
- Verwaltung von Abhängigkeiten zwischen Microservices
- Load Balancing und verteilte Systemarchitekturen
- Effiziente Kommunikation und API-Gestaltung
LernzieleDas Seminarziel für Unternehmen bei einem Microservices-Migrations-Workshop besteht darin, die Teilnehmer mit den grundlegenden Konzepten und Best Practices der Microservices-Architektur und der Migration von Legacy-Systemen vertraut zu machen. Durch das Seminar sollen Unternehmen folgende Ziele erreichen:
- Verständnis für Microservices: Die Unternehmen sollen ein klares Verständnis für die Vorteile und Herausforderungen der Microservices-Architektur entwickeln und wie diese Architektur ihren Geschäftsanforderungen entspricht.
- Identifikation von Migrationsmöglichkeiten: Die Unternehmen sollen in der Lage sein, ihre Legacy-Systeme zu bewerten und potenzielle Migrationsmöglichkeiten zu identifizieren, die den langfristigen Geschäftszielen entsprechen.
- Erhöhung der Effizienz: Durch die Migration von Legacy zu Microservices sollen die Unternehmen ihre Entwicklungs- und Bereitstellungsprozesse optimieren, um agiler auf Marktanforderungen reagieren und die Time-to-Market für neue Funktionen und Produkte reduzieren zu können.
- Steigerung der Systemstabilität und Ausfallsicherheit: Die Unternehmen sollen lernen, wie sie durch die Verwendung von Microservices die Ausfallsicherheit und Stabilität ihrer Systeme verbessern können, indem sie Fehler isolieren und die Service-Kommunikation besser verwalten.
Zielgruppen
- IT-Entwickler und Softwarearchitekten: Diese Personen sind für die Implementierung von Microservices und die Gestaltung der Architektur verantwortlich. Sie sollten das Seminar besuchen, um die Grundlagen der Microservices-Architektur zu erlernen und Best Practices für die Entwicklung von Microservices zu verstehen.
- IT-Projektmanager und Führungskräfte: Diese Personen sind für die Planung und Koordination der Microservices-Migration verantwortlich. Sie sollten das Seminar besuchen, um die Herausforderungen und Vorteile der Migration zu verstehen und eine Roadmap für die Umsetzung zu erstellen.
- IT-Operations und Systemadministratoren: Diese Personen sind für den Betrieb und die Wartung der Infrastruktur verantwortlich, auf der die Microservices laufen. Sie sollten das Seminar besuchen, um zu lernen, wie man Microservices effizient betreibt, überwacht und skalierbar hält.
- Technische Teammitglieder aus Legacy-Projekten: Diese Personen sind mit den bestehenden Legacy-Systemen vertraut und spielen eine wichtige Rolle bei der Bewertung und Integration von Legacy-Komponenten in die Microservices-Architektur.