SOA EAM Microservices Flashcards
Was ist SOA
Service-oriented architecture (SOA, serviceorientierte Architektur) ist ein Architekturstil und eine Methode der Softwareentwicklung, bei der wiederverwendbare Softwarekomponenten, sogenannte Services, zur Erstellung und Integration von Geschäftsanwendungen verwendet werden.
Was sind Service
Ein Service in SOA oder Microservices ist eine Softwarekomponente, die eine bestimmte Aufgabe oder Funktion übernimmt und über eine standardisierte Schnittstelle (API) anderen Anwendungen zur Verfügung stellt.
- Kann unabhängig von anderen Services arbeiten
- Wiederverwendbar
So Sachen wie Bestellservice, Zahlungsservice, Lieferdienst-Service
Sind unabhängig voneinander. ZB. könnte der Zahlungsservice auch für andere Dinge wie Online Buchung genutzt werden
Architektur Ebenen SOA:
IT-Architektur funktioniert wie die Planung und Gestaltung von Gebäuden – es gibt verschiedene Ebenen, die von einem groben Überblick bis ins Detail reichen:
- SOA (Service-Oriented Architecture):
Das ist der Bebauungsplan. Er zeigt, wie die IT-Systeme eines Unternehmens miteinander verbunden sind und über Schnittstellen kommunizieren.
- Systemstruktur:
Das ist die Gebäude-Architektur. Sie beschreibt, welche Systeme (Komponenten) es gibt und wie sie miteinander verbunden sind.
- Interne Struktur der Komponenten:
Das ist die Innenarchitektur. Hier geht es um die Details der einzelnen Systeme, z. B. wie sie aufgebaut sind und funktionieren.
Die Makro-Architektur betrachtet das große Ganze, während die Mikro-Architektur ins Detail geht. Je nach Abstraktionsgrad kann man entweder die gesamte Struktur (wie eine Stadt) oder die Details eines Raums analysieren.
Merksatz:
SOA = Bebauungsplan (großer Überblick)
Systemstruktur = Gebäude-Architektur (Verbindungen der Systeme)
Interne Struktur = Innenarchitektur (Details der Systeme)
Unterschied zwischen Geschäftsservices und Anwendungsservices
Fokus:
Geschäftsservices:
Haben eine unmittelbare geschäftliche Bedeutung und betreffen direkte Aufgaben wie Geldüberweisungen oder Kontoauszüge.
Anwendungsservices:
Unterstützen Geschäftsservices durch IT und sind rein technische Hilfsmittel, die im Hintergrund arbeiten.
Verortung:
Geschäftsservices: Werden an Organisationsgrenzen angeboten, wie in einer Bankfiliale oder im Online-Banking.
Anwendungsservices: Sind intern in der IT-Systemlandschaft (AL) angesiedelt und arbeiten im Hintergrund (z. B. Datenbankabfragen oder Logikmodule).
ZSMfassung:
Geschäftsservices stehen im direkten Kontakt mit den Nutzern, während Anwendungsservices “unsichtbare” IT-Unterstützung bieten.
Geschäftsservices lösen reale Geschäftsaufgaben, Anwendungsservices helfen dabei, diese Aufgaben technisch umzusetzen.
SOA Grundidee und Vorteile?
Strukturierung des Geschäfts und der IT-Anwendungssystemlandschaft nach Services in logische Schichten nach der fachlichen Sicht.
Die Vorteile sind:
-Gesteigerte Wiederverwendung von Diensten/Funktionalitäten
-Bessere Struktur der Gesamt-AL (Anwendungssystemlandschaft)
Was ist Orchestrierung?
Es bedeutet, dass Anwendungsservices flexibel kombiniert werden, um Geschäftsservices und damit Geschäftsprozesse zu unterstützen
Technische SOA Plattform: ESB Enterprise Service Bus
Der Enterprise Service Bus (ESB) ist das zentrale Bindeglied in einer SOA. Er verbindet Business-Prozesse, Services und IT-Systeme und übernimmt Orchestrierung, Transformation, Mapping und Sicherheit.
Transformation: trotz unterschiedliche Formate Sicherstellung von Kommunikation
Mapping: Sicherstellung das richtige Infos zwischen Service ausgetauscht werden
Was sind die Anforderungen an Anwendungsservices bei der Einführung von SOAs?
1.Wiederverwendbarkeit
-> Anforderungen mehrerer Consumer erfüllen
2.Sinnvolle Granularität
->klar definierte Funktionalität
3.Wohldefinierte Beziehungen und Schnittstellen
Muss sich IT an Business anpassen oder umgekehrt?
Beides! Mit einer SOA-Architektur trennt man Business-Prozesse (fachliche Ebene) und IT-Services (technische Ebene) so, dass sie sich gegenseitig flexibel anpassen können, ohne sich gegenseitig zu blockieren.
Was ist EAM Enterprise Architecture Management
Strukturierung der Anwendungssystemlandschaft
in fachliche Domänen. Production und Finance zum Beispiel.
Vorteile Microservices?
Klares Geschäftsmodell: Jeder Microservice deckt einen Unternehmensbereich ab
Leichte Wartung: Jeder Service ist unabhängig
Agil: Schnelle Entwicklung und Betrieb sind möglich
Herausforderungen Microservices?
Umfangreiche Kommunikation kann Performance beeinträchtigen
Fehlersuche schwierig kann über mehrere Services verteilt sein
Ist Microservice = SOA?
SOA ist nicht das Gleiche wie Microservices. Microservices sind kleiner, haben eigene Daten, lassen sich containerbasiert skalieren, nutzen verschiedene Technologien und setzen auf CI/CD.
SOA: Arbeitet mit größeren, geschäftsorientierten Services. Ein Service kann mehrere Funktionen oder Aufgaben abdecken. Beispiel: Ein “Zahlungsservice” deckt Kreditkartenzahlungen, PayPal und andere Zahlungsarten ab.
Microservices: Sind viel kleiner und spezialisierter. Ein Microservice macht nur eine Sache. Beispiel: Ein Microservice für “Kreditkartenzahlung” und ein anderer für “PayPal”
Herausforderungen von SOA?
SOA ist keine fertige Lösung, sondern erfordert eine sinnvolle Strukturierung der Services und die Anwendung von Best Practices.
Für den Erfolg von SOA sind organisatorische Anpassungen nötig, wie die Entwicklung und der Betrieb gemeinsamer Services, beispielsweise durch ein SOA Competence Center.