Prozesse im Innovationsfluss

SOA im Zeitalter von Mobile, Cloud und dem Internet der Dinge

Dominik Bial
© istock.com/elly99

Serviceorientierte Architektur (SOA) ist seit mehreren Jahren ein fester Begriff in der IT. Mittlerweile ist es ruhiger um SOA geworden und sie wird nicht mehr als „Allheilmittel“ für jede Herausforderung in einem Unternehmen angesehen. In der Praxis hilft SOA heute, Unternehmen für Neuerungen zu rüsten und agil auf die immer kürzer werdenden Innovationszyklen zu reagieren.

SOA bildet so einerseits eine wichtige Grundlage für Unternehmen, die mittels moderner Technologien ihre Wertschöpfung und ihre Prozesse optimieren wollen [1]. Andererseits stellt sie auch eine notwendige Basis für die Einführung von mobilen Szenarien, dem Internet der Dinge [2] oder Cloud Computing [3] dar. Deren Potenziale können Unternehmen mittels SOA auf einfache Weise nutzen und somit eine Flexibilität erreichen, die mit anderen Arten von Unternehmensarchitekturen schwer zu erzielen ist.

SOA heute

Definitionen für serviceorientierte Architekturen adressieren unterschiedlichste Bereiche der Informatik und reichen von einer Methodik bis hin zu einem Architekturpattern oder einer Technologie. Doch welchen Standpunkt Experten auch einnehmen, die in ihren Definitionen genannten Vorteile einer SOA sind ähnlich. Typischerweise heben sie die folgenden Aspekte hervor:

  • schnelle Anpassbarkeit von Prozessen
  • schnelle Erreichbarkeit der Marktreife
  • erhöhte Qualität bei verringerten Kosten
  • niedrigere Projektkosten bei Umsetzung neuer Businessanforderungen
  • hohe Zukunftssicherheit
  • vereinfachte Integration

Der Kern des Erfolgs einer SOA liegt in der losen Kopplung von Funktionen, die mit so genannten Services realisiert und mithilfe von Sprachen wie BPEL oder neuerdings BPMN orchestriert werden. Services bieten dabei Funktionen an, die in einem Unternehmen benötigt und von verschiedenen Instanzen aufgerufen werden. Die Entwickler müssen diese Funktionen nicht mehrmals implementieren, sondern können sie entfernt über Services aufrufen. Mit Orchestrierungs- oder Prozessbeschreibungssprachen wie der Business Process Execution Language (BPEL) oder der Business Process Model and Notation (BPMN) realisieren die Entwickler Abfolgen von Serviceaufrufen inklusive Verzweigungen und Schleifen. Diese Abfolgen können wieder als Service angeboten werden, sodass sich die Fachlichkeit über verschiedene Abstraktionsstufen verteilen lässt. In der obersten Ebene, der so genannten Ausführungsebene, finden sich Unternehmensprozesse, in der untersten Ebene technische Prozesse.

Zugrunde liegt dem Ganzen eine Integrationsschicht, die typischerweise mittels eines Enterprise-Service-Bus realisiert wird. Entsprechende Busse bieten Schnittstellen an, um existierende Systeme in die SOA-Landschaft zu integrieren und mit Services kommunizieren zu lassen.

Abb. 1: Zusammenspiel der Ebenen einer SOA

Neben der Serviceorientierung sind in den letzten Jahren weitere Technologien zur SOA hinzugekommen, die deren Möglichkeiten erweitern und zusätzlichen Mehrwert für Unternehmen schaffen. Darunter sind insbesondere das Complex Event Processing (CEP) und das Business Activity Monitoring (BAM) zu nennen. Diese Technologien ermöglichen, Datenströme innerhalb serviceorientierter Systeme auszuwerten. CEP analysiert dabei Daten, die innerhalb einer SOA ausgetauscht werden. Dazu werden Regeln erstellt, die Events erzeugen, falls die beschriebenen Bedingungen innerhalb der Daten zutreffen. Die Verarbeitung erfolgt wiederum in Services. Innerhalb der Unternehmensprozesse ermöglicht CEP somit eine Prozessanalyse nahezu in Echtzeit und kann Abweichungen von der Norm bei der Entstehung feststellen.

BAM basiert auf CEP, bietet darüber hinaus aber weitere Funktionen zur Erstellung von Echtzeit-Dashboards und -reports. Mit diesen Technologien kann das Management Zustände innerhalb des Unternehmens überwachen und frühzeitig beeinflussen, was die Agilität und Reaktivität von Unternehmen stärkt.

[ header = Seite 2: SOA als grundlegender Baustein ]

SOA als grundlegender Baustein

Das Internet der Dinge und Mobile Computing versprechen eine Durchdringung der Unternehmensprozesse, wie sie zuvor nicht möglich war. Daten lassen sich nun nahezu in Echtzeit erfassen und von Unternehmen nutzen. Andererseits sind Prozesse aber auch entscheidend beeinflussbar, sei es durch eine einfache SMS, die an ein Smartphone geschickt wird, oder durch ein Gerät aus dem Internet der Dinge, das dann zum Beispiel selbstständig Produkte für einen Snackautomaten am Bahnhof nachbestellt.

Cloud Computing hingegen stellt Ressourcen zur Verfügung, die eine neue Agilität in der Bereitstellung von Unternehmensanwendungen versprechen. Der übliche Administrations- und Konfigurationsaufwand für Anwendungen entfällt beim Cloud Computing, wo die Nutzer über das Web nach Bedarf auf ihre Applikationen zugreifen. Viele dieser Ideen bestehen schon länger. In den letzten Jahren hat sich die IT allerdings stark weiterentwickelt und mittlerweile einen Stand erreicht, der entsprechende Lösungen wirtschaftlich realisierbar macht. Zwar gibt es immer noch einige Hindernisse, doch erste Lösungen lassen sich bereits finden. Um diese Potenziale vollends ausschöpfen zu können, müssen die zuständigen Entwickler bei der Planung und Umsetzung von Unternehmensarchitekturen eine gewisse Sorgfalt an den Tag legen. Zum einen bilden serviceorientierte Architekturen die Grundlage, um etwaige Vorteile direkt in Unternehmen zu integrieren. Zum anderen stellen sie die Basis für die Agilität dar, die die neuen Trends mit sich bringen. Wer vorausschauend in SOA investiert hat, ist schon jetzt für die nächste Stufe gerüstet, die uns in der IT erwartet.

Integration

Im Normalfall werden Integrationen im Unternehmensumfeld mehrere Jahre genutzt, bevor Applikationen abgelöst werden. Die Nutzung von Cloud-Computing-Angeboten hat jedoch zur Folge, dass Anwendungen zwar weiter verteilt sind, aber auch ersetzbar werden. Gerade bei Software-as-a-Service-Angeboten (SaaS) entsteht eine Dynamik, die ihresgleichen sucht. Die Nutzung von über das Internet bereitgestellter Software, die bei Bedarf abrufbar ist, verursacht nur dann Kosten, wenn sie auch wirklich benötigt wird, was bei der Optimierung von IT-Kosten völlig neue Möglichkeiten eröffnet.

Sollen SaaS-Anwendungen in die Unternehmensarchitektur integriert werden und mit anderen Anwendungen kommunizieren, ist die Wahrscheinlichkeit groß, dass entsprechende Angebote schnell wieder ausgetauscht werden. Unternehmensarchitekturen unterliegen somit schnelleren und häufigeren Anpassungen. Des Weiteren vergrößert sich die zu integrierende Softwarelandschaft durch die Entstehung des Internets der Dinge und des Mobile Computings. Geräte und Anwendungen haben hier eine geringere Lebensdauer, sodass sich dieser Effekt sogar noch verstärkt.

Durch die weitere Verteilung und den Zugriff auf externe Dienstleistungen aus der Cloud verändern sich die Grenzen der Unternehmensarchitektur gravierend: Sie verlaufen fließend. Applikationen können nicht mehr eindeutig eigenen Ressourcen zugeordnet werden und auch die Ressourcen liegen nicht mehr direkt in der Verantwortung des Unternehmens. Da die Kommunikation mit externen Diensten nicht immer gewährleistet ist, beeinflusst dies sowohl die Datensicherheit als auch den Zugriff auf entsprechende Anwendungen. Unternehmensarchitekturen müssen entsprechend gewappnet sein.

Das Internet der Dinge und Mobile Computing stellen eine weitere Vernetzung innerhalb des Unternehmens dar, was gleichzeitig eine größere Verteilung bedeutet. Hierfür werden weitere Sicherheitskonzepte benötigt. Zudem muss gewährleistet sein, dass Unternehmensdaten nicht in fremde Hände gelangen, geschweige denn Reports, Formulare oder gar die Steuerung von operativen Prozessen mittels Technologien aus dem Internet der Dinge öffentlich zugänglich sind.

Eine entsprechende Komplexität ist in SOA bereits vorhanden, sodass auf etablierte Prinzipen zurückgegriffen werden kann. Doch auch die Komplexität einer SOA wird durch neue Technologien gesteigert. Mittels eines Enterprise-Service-Busses, der typischerweise Teil einer SOA ist, lassen sich neue Anwendungen aber problemlos integrieren. Dadurch ist es möglich, Daten von Smartphones und aus dem Internet der Dinge in die Unternehmensprozesse zu übertragen. Gleichzeitig können Architekten neue Services und damit Funktionalitäten schaffen, die sie existierenden Prozessen hinzufügen können.

Abb. 2: Integration von Cloud und mobilen Applikationen, Weiterleitung der Daten an die Unternehmensprozesse

Auf diese Weise sind Daten für ein Unternehmen schneller verfügbar. Vorteilhaft ist, wenn bei der Planung und der Integration entsprechender Systeme bereits angegeben wird, welche Systeme extern und welche intern sind. So lassen sich über Schnittstellen Anwendungen aus der Cloud, dem Internet der Dinge und dem Mobile Computing integrieren und später gesondert betrachten. Entstandene Artefakte können dann bei späteren Analysen von Sicherheitsaspekten behilflich sein.

Durch die Beschäftigung mit einer SOA sind die Grundlagen für die Integration von Cloud, Mobile Computing und dem Internet der Dinge bereits gelegt. Ein Überblick über Services im Unternehmen und über die Unternehmensarchitektur ist vorhanden. Auch ein Bewusstsein für die Komplexität entsprechender Integrationen besteht und Ansprechpartner für etwaige Änderungen sind benannt, sodass der Weg zumindest organisatorisch bereits geebnet ist. Hinzu kommt, wie eingangs bereits erwähnt, dass SOA auch in technischer Hinsicht Vorteile für die Integration bietet.

[ header = Seite 3: Dynamik und Anpassbarkeit von Prozessen ]

Dynamik und Anpassbarkeit von Prozessen

Dass der derzeitige Boom im Smartphone- und Tabletbereich nicht spurlos an den Unternehmen vorüberzieht, überrascht nicht, versprechen die neuen Technologien doch eine stärkere Vernetzung und den mobilen Zugriff auf Unternehmensdaten.

Die Möglichkeiten der mobilen Geräte beschränken sich längst nicht mehr nur auf E-Mail- und Kalenderfunktionen. Beispielsweise werden in Pflegediensten schon seit mehreren Jahren mobile Geräte eingesetzt, um Patientendaten und Pflegepläne von unterwegs zu verwalten oder um Maßnahmen oder Medikationen für die spätere Dokumentation einzutragen. Diese Geräte werden nach Beendigung einer Fahrt ausgelesen und ausgewertet. Steht eine mobile Datenverbindung auf dem Gerät zur Verfügung, lassen sich Informationen direkt an das Unternehmen berichten, Bestellungen anfordern oder auch aktualisierte Pläne abrufen. Innerhalb einer SOA abgebildete Prozesse können somit von jedem beliebigen Ort aus gestartet werden. Richtet man eine Unternehmensarchitektur entsprechend aus, lässt sich die Geschwindigkeit beschleunigen, mit der Prozesse innerhalb eines Unternehmens bearbeitet werden. Gleichzeitig bedeutet dies aber auch, dass die Komplexität weiter steigt und damit wieder neue Aspekte beachtet werden müssen.

Steigende Mobilität und Applikationsvielfalt haben zur Folge, dass Prozesse ständig im Fluss sind. Wenn sich Prozesse laufend ändern, müssen entsprechend häufiger technische Anpassungen vorgenommen werden. Flexibilität und Wartbarkeit bekommen eine größere Bedeutung. Zum einen erhöht dies die Komplexität der Unternehmensarchitektur, zum anderen bietet es aber auch enorme Vorteile, da sich Unternehmen schneller am Markt ausrichten können und IT-Unterstützung erfahren.

Abb. 3: Nutzung von mobilen Geräten zur Überwachung und Steuerung von Prozessen

Mit der Bereitstellung von Services für mobile Geräte entsteht ein Zugriff auf nahezu Echtzeitinformationen und damit auch eine Steuerung von Abläufen, die sich mittels bekannter Modellierungssprachen zur Orchestrierung ausschöpfen lassen. Greift man das Beispiel des Pflegediensts wieder auf, könnte die Pflegedienstleitung Fahrten überwachen, indem Eingaben durch das Pflegepersonal mithilfe eines Smartphones direkt übermittelt werden. Die Pflegedienstleitung erhält damit die Möglichkeit, direkt in die Prozesse einzugreifen. Gleichzeitig lassen sich automatisiert Abrechnungen oder Reports starten, z. B. wenn der letzte Patient behandelt wurde und die Pflegedienstfahrt für die Schicht zu Ende ist. Intelligente Geräte aus dem Internet der Dinge ermöglichen dies ebenfalls, verzichten dabei allerdings auf die direkte Interaktion mit einem Benutzer. Stellen die Geräte selbst oder über ein Portal Services zur Verfügung, lassen sich diese direkt orchestrieren. Somit können in einer Vielzahl von Branchen ganze Abläufe gesteuert werden. Mit BPEL und BPMN ist es also möglich, die Ausführung von Prozessen direkt zu starten, zu überwachen und weitreichend zu steuern, während eine SOA die grundsätzliche Infrastruktur zur Verfügung stellt.

[ header = Seite 4: Datenanalyse, Fazit ]

Datenanalyse

Die Nutzung des Internets der Dinge und des Mobile Computings hat zur Folge, dass höhere Datenvolumen und Datenaufkommen in einer SOA bearbeitet werden müssen. Darüber hinaus ändert sich auch die Semantik. Man erhält Daten, die „live“ ermittelt wurden und direkt den Zustand von Prozessen während ihrer Durchführung widerspiegeln. Eine SOA bietet die Infrastruktur, um diese Daten zu erhalten und ersten Prozessen zuzuordnen. Diese Prozesse wiederum können weitere Analysen starten, sodass man thematisch schnell bei dem Thema Big Data landet.

Wie eingangs erwähnt, gelangten CEP und BAM als weitere Technologien in die SOA-Stacks, um Kennzahlen zu ermitteln und Dashboards der Prozesse zur Verfügung zu stellen. Momentan werden diese Technologien zwar eingesetzt, aber ihr Potenzial ist noch nicht völlig ausgeschöpft. Stoßen Ansätze zur mobilen Datenerfassung hinzu, wird das volle Potenzial ersichtlich. Diese mobilen Ansätze ermöglichen eine automatische Verarbeitung der Daten, die dann wiederum den Prozessen hinzugefügt werden oder neue Prozesse starten können. CEP und BAM sind somit eine ideale Ergänzung für SOA-Softwarestacks und mobile Szenarien.

Existiert schon eine SOA in Unternehmen und werden Services für Transport-, Produktions- oder Lieferketten angeboten, lassen sich mithilfe von BAM Dashboards schaffen, die über den aktuellen Status der Produktion berichten. Dafür greifen sie Daten aus den Prozessen, Schnittstellen und dem CEP auf und visualisieren sie. Folglich ist eine Überwachung möglich, die sich weniger an den gewohnten Unternehmensabläufen orientiert, sondern stärker an wertschöpfenden Prozessen.

Fazit

Unternehmensarchitekturen unterliegen einer Vielzahl von Herausforderungen, die maßgeblich den Erfolg eines Unternehmens beeinflussen. Während die IT noch vor einigen Jahren unterstützend eingesetzt wurde, ist sie heute innovationstreibend und erfolgsentscheidend. Die aktuellen Trends Cloud Computing, Internet der Dinge und Mobile Computing verändern gravierend die Strukturen und Vorgänge innerhalb eines Unternehmens. Darüber hinaus steigern sie die Komplexität der Unternehmensarchitekturen.

Die Bedeutung und Stärken von serviceorientierten Architekturen, die bereits vielfach als entscheidend für moderne Unternehmen vorgestellt wurden, sind nun ersichtlich. SOA bildet eine wichtige Grundlage für diese Trends und hilft, die Potenziale der neuen Technologien voll auszuschöpfen. SOA ist dabei eine Art Werkzeugkasten, mit dem sich die Integration handhaben und Abläufe flexibel mit IT unterstützen lassen. Unternehmen, die heute bereits eine SOA eingeführt haben, sind damit für die nächsten Innovationszyklen gewappnet.

Geschrieben von
Dominik Bial
Dominik Bial
Dominik Bial ist Consultant bei der OPITZ CONSULTING Deutschland GmbH und arbeitet dort im SOA- und JEE-Bereich. Neben der Projektarbeit beschäftigt er sich mit neuen Trends in der IT. Sein besonderes Interesse gilt dabei dem Internet der Dinge und serviceorientierten Architekturen.
Kommentare

Hinterlasse einen Kommentar

2 Kommentare auf "SOA im Zeitalter von Mobile, Cloud und dem Internet der Dinge"

avatar
400
  Subscribe  
Benachrichtige mich zu:
Sascha M. Köhler
Gast

Sehr schöner, allgemeiner Artikel! Deckt alle Themen wunderbar ab. Schön wäre noch zu wissen, wer der Autor ist.

Redaktion JAXenter
Gast

Vielen Dank für den Hinweis, der Autor sollte jetzt sichtbar sein 🙂