


{"id":1327,"date":"2018-03-10T16:50:49","date_gmt":"2018-03-10T15:50:49","guid":{"rendered":"http:\/\/blogs.gm.fh-koeln.de\/bente\/?p=1327"},"modified":"2018-06-24T23:34:04","modified_gmt":"2018-06-24T21:34:04","slug":"ppba-orchestrierung-vs-choreographie-von-langlaufenden-geschaeftsprozessen-in-microservice-landschaften","status":"publish","type":"post","link":"http:\/\/blogs.gm.fh-koeln.de\/bente\/2018\/03\/10\/ppba-orchestrierung-vs-choreographie-von-langlaufenden-geschaeftsprozessen-in-microservice-landschaften\/","title":{"rendered":"PP\/BA: Orchestrierung vs. Choreographie von langlaufenden Gesch\u00e4ftsprozessen in Microservice-Landschaften"},"content":{"rendered":"<p class=\"lead\">Dieses Thema kann als Praxisprojekt mit Option auf anschlie\u00dfende Bachelorarbeit bearbeitet werden, oder aber direkt als Bachelorarbeit. Praxisprojekte und\/oder Bachelorarbeiten k\u00f6nnen auch im Verbund mit mehreren Studierenden bearbeitet werden.<\/p>\n<h4>Worum geht es?<\/h4>\n<p>Microservices erm\u00f6glichen eine sehr lose gekoppelte und daher potentiell gut dezentral \u00e4nderbare Architektur. Konsequent auf eine gesamte IT-Landschaft angewendet, gewinnt man ein hohes Ma\u00df an Flexibilit\u00e4t.<\/p>\n<p>Diese Art der losen Kopplung passt zun\u00e4chst einmal nicht gut auf IT-Landschaften, die von sehr langen, komplexen Prozessen gepr\u00e4gt ist, die sich quer durch die gesamte Landschaft ziehen. Diese Art von Strukturen findet man beispielsweise bei Versicherungen. Ein Schadensprozess l\u00e4uft durch viele komplexe IT-Systeme (Vertragsmanagement, CRM, Schadensystem, In-\/Exkasso, etc.). Daher sind\u00a0Versicherungs-IT-Landschaften in der Regel von einem klassischen SOA-Ansatz gepr\u00e4gt, bei dem Prozesse zentral in einer Prozess-Engine abgebildet werden und von dort dann die dedizierten IT-Systeme \u00fcber Service-Schnittstellen aufrufen. Man spricht hier von <strong>Orchestrierung<\/strong> des Prozesses, da dieser zentral gesteuert abl\u00e4uft.<\/p>\n<p>Wie modelliert man so eine IT-Landschaft als Microservices? Ist das \u00fcberhaupt sinnvoll? Die Frage ist von hoher praktischer Relevanz. Die Standard-Antwort der MS-Community ist das Prinzip der <strong>Choreographie<\/strong>, bei dem die einzelnen MS durch passendes Servicedesign den Prozess implizit abbilden, z.B. mit dedizierten Abort-Events.<\/p>\n<p>Zwei einander widersprechende Ans\u00e4tze sind in den nachfolgenden beiden Blog-Posts (der zweite ist eine Antwort auf den ersten) abgebildet.<\/p>\n<div>\n<ul>\n<li>R\u00fccker, B., &amp; Meyer, D. (2015, August 21). Wie l\u00e4sst sich Ordnung in einen Haufen (Micro-)Services bringen? Abgerufen 24. Februar 2018, von <a href=\"https:\/\/jaxenter.de\/wie-laesst-sich-ordnung-in-einen-haufen-micro-services-bringen-23938\">https:\/\/jaxenter.de\/wie-laesst-sich-ordnung-in-einen-haufen-micro-services-bringen-23938<\/a><\/li>\n<li>Flohre, T. (2015, September 1). Wer Microservices richtig macht, braucht keine Workflow Engine und kein BPMN. Abgerufen 24. Februar 2018, von <a href=\"https:\/\/blog.codecentric.de\/2015\/09\/wer-microservices-richtig-macht-braucht-keine-workflow-engine-und-kein-bpmn\/\">https:\/\/blog.codecentric.de\/2015\/09\/wer-microservices-richtig-macht-braucht-keine-workflow-engine-und-kein-bpmn\/<\/a><\/li>\n<\/ul>\n<\/div>\n<p>Kurz zusammengefasst skizziert der erste Post einen Hybrid-Ansatz, der Microservices und eine SOA-\u00e4hnliche Orchestrierung zusammenf\u00fchrt. Der zweite Post skizziert die Entsprechung als reine MS-Choreographie. Beide Posts widersprechen einander. Wer hat Recht? Dazu soll diese Arbeit eine Antwort geben.<\/p>\n<h4>Inhalt<\/h4>\n<p>Die Arbeit sollte zun\u00e4chst analysieren, ob man\u00a0Gesch\u00e4ftsprozesse nach bestimmten Kriterien klassifizieren kann, anhand deren man eine Entscheidung f\u00fcr eins der beiden Paradigmen &#8222;Orchestrierung&#8220; vs. &#8222;Choreographie&#8220; treffen kann. Ein praktisches Prozessbeispiel sollte definiert werden, das eine gewisse realistische Komplexit\u00e4t simuliert, gern anhand eines Versicherungs-Beispiels.<\/p>\n<p>Dann sollte f\u00fcr die Bewertung ein Kriteriensystem definiert werden, anhand dessen sich die beiden Paradigmen bewerten lassen. Beide Paradigmen sollten prototypisch implementiert und anhand der Kriterien verglichen werden. Abschlie\u00dfend sollte eine Empfehlung ausgesprochen werden.<\/p>\n<p>Ein\u00a0praktischer Anwendungsfall, in dem die gew\u00e4hlte L\u00f6sung anhand eines Beispiels (als Prototyp) in einem Produktivsystem umgesetzt wird, kann die Arbeit abrunden.\u00a0Als Produktivsystem kann dabei die konsequent und kompromisslos als System von Microservices ausgelegte <a href=\"https:\/\/www.archi-lab.io\/\" target=\"_blank\" rel=\"noopener\">Lehr- und Lernplattform ArchiLab<\/a>\u00a0darstellen.<\/p>\n<h4>Bei Interesse<\/h4>\n<p>Sie haben allgemeine R\u00fcckfragen, konkretes Interesse oder sogar \u00c4nderungs-\/Erweiterungsvorschl\u00e4ge? Bitte vereinbaren Sie unverbindlich einen Termin mit mir (am einfachsten \u00fcber <a href=\"https:\/\/bente.youcanbook.me\/\">https:\/\/bente.youcanbook.me\/<\/a>), und wir k\u00f6nnen die praktische Ausgestaltung des Themas diskutieren.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die Arbeit sollte zun\u00e4chst analysieren, ob man\u00a0Gesch\u00e4ftsprozesse nach bestimmten Kriterien klassifizieren kann, anhand deren man eine Entscheidung f\u00fcr eins der beiden Paradigmen &#8222;Orchestrierung&#8220; vs. &#8222;Choreographie&#8220; treffen kann. Ein praktisches Prozessbeispiel sollte definiert werden, das eine gewisse realistische Komplexit\u00e4t simuliert, gern anhand eines Versicherungs-Beispiels. Dann sollte f\u00fcr die Bewertung ein Kriteriensystem definiert werden, anhand dessen sich die beiden Paradigmen bewerten lassen. Beide Paradigmen sollten prototypisch implementiert und anhand der Kriterien verglichen werden. Abschlie\u00dfend sollte eine Empfehlung ausgesprochen werden.\u00a0Ein\u00a0praktischer Anwendungsfall, in dem die gew\u00e4hlte L\u00f6sung anhand eines Beispiels (als Prototyp) in einem Produktivsystem umgesetzt wird, kann die Arbeit abrunden.\u00a0Als Produktivsystem kann dabei die konsequent und kompromisslos als System von Microservices ausgelegte Lehr- und Lernplattform ArchiLab\u00a0darstellen.<\/p>\n","protected":false},"author":39,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[20359],"tags":[25774,9885,9895,50719,21847,21843,50718,27506],"class_list":["post-1327","post","type-post","status-publish","format-standard","hentry","category-laufende-projekte","tag-archilab","tag-architektur","tag-architekturmuster","tag-choreographie","tag-evaluierung","tag-micro-service","tag-orchestrierung","tag-versicherung"],"acf":[],"_links":{"self":[{"href":"http:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/posts\/1327","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/users\/39"}],"replies":[{"embeddable":true,"href":"http:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/comments?post=1327"}],"version-history":[{"count":4,"href":"http:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/posts\/1327\/revisions"}],"predecessor-version":[{"id":1332,"href":"http:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/posts\/1327\/revisions\/1332"}],"wp:attachment":[{"href":"http:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/media?parent=1327"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/categories?post=1327"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/tags?post=1327"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}