


{"id":748,"date":"2016-04-02T10:29:43","date_gmt":"2016-04-02T08:29:43","guid":{"rendered":"http:\/\/lwibs01.gm.fh-koeln.de\/blogs\/bente\/?p=748"},"modified":"2018-10-03T17:04:17","modified_gmt":"2018-10-03T15:04:17","slug":"microservice-architektur-fuer-webbasierte-enterprise-anwendungen-ss16","status":"publish","type":"post","link":"https:\/\/blogs.gm.fh-koeln.de\/bente\/2016\/04\/02\/microservice-architektur-fuer-webbasierte-enterprise-anwendungen-ss16\/","title":{"rendered":"GP SS16_B9 &#8222;Microservice-Architektur f\u00fcr webbasierte Enterprise-Anwendungen&#8220; &#8211; Projektbeschreibung"},"content":{"rendered":"<p class=\"lead\">Das nachfolgende Guided Project wird im SS16 stattfinden.<\/p>\n<h4>Problembeschreibung<\/h4>\n<p>Eine Microservice-Architektur verfolgt den Ansatz, ein IT-System (in der Regel eine webbasierte Anwendung) als Suite von weitgehend unabh\u00e4ngigen vertikalen Modulen aufzubauen. Diese k\u00f6nnen (weitgehend) unabh\u00e4ngig voneinander deployed und betrieben werden und ben\u00f6tigen nur ein Minimum an zentraler Kommunikationsinfrastruktur. Kommunikation zwischen Front- und Backend erfolgt \u00fcber leichtgewichtige Protokolle wie etwa REST.<\/p>\n<p>Dieser Architekturstil erlaubt es, Anwendungen nach Gesch\u00e4ftsf\u00e4higkeiten zu segmentieren, die jeweils mit einem H\u00f6chstma\u00df an Unabh\u00e4ngigkeit entwickelt und gewartet werden k\u00f6nnen. Das ist insbesondere bei Webportalen mit seinen schnellen Update-Zyklen ein deutlicher Vorteil. Beispielsweise kann so der Produktkatalog eines Webshops und die Zahlungsabwicklung durch unabh\u00e4ngige Microservices realisiert sein, so dass eine explorative Weiterentwicklung des Produktkatalogs den operativen Zahlungsverkehr nur minimal gef\u00e4hrden kann.<\/p>\n<h4>Projektbeschreibung<\/h4>\n<p>Ziel des Projekts ist es, f\u00fcr eine existierende Showcase-Webanwendung (Restaurantmanagement-System) eine Microservice-Architektur zu konzipieren und umzusetzen. Dabei sollen die St\u00e4rken, Schw\u00e4chen, Risiken und Grenzen dieses Ansatzes im Projektreport evaluiert werden.<\/p>\n<p>Die Entwicklung erfolgt mittels des Open-Source-Projekts <em>Open Application Standard Platform<\/em> (OASP). OASP hat es sich zur Aufgabe gemacht, bew\u00e4hrte Open-Source-Frameworks zu einem \u201eBest-of-Breed\u201c-Anwendungspaket zu b\u00fcndeln. Mit Hilfe von OASP k\u00f6nnen Softwareprojekte f\u00fcr kostensensitive Kunden (z.B. \u00f6ffentliche Auftraggeber) ohne Zeitverlust durch die sonst \u00fcbliche \u201eTechnologie-Findungsphase\u201c realisiert werden. Au\u00dferdem vermeidet man technologischen Wildwuchs, da OASP eine in sich konsistente Basisarchitektur darstellt. Zufallsarchitektur (Accidental Architecture) wird so zumindest bei der Technologieplattform vermieden.<\/p>\n<p>Zus\u00e4tzlich zum Basis-Stack in OASP (<a href=\"http:\/\/oasp.github.io\/\">http:\/\/oasp.github.io\/<\/a>) existiert auch eine JavaScript-Variante <em>OASP for JavaScript<\/em> (OASP4JS, <a href=\"http:\/\/oasp.github.io\/oasp4js\/\">http:\/\/oasp.github.io\/oasp4js\/<\/a>), die auf dem Google-Framework AngularJS basiert. OASP4JS ist als Plattform f\u00fcr Open-Source-basierte Webanwendungen konzipiert. Die existierende Showcase-Anwendung wurde mit OASP in einem fr\u00fcheren Guided Project erstellt und kann jetzt entsprechend weiterentwickelt werden.<\/p>\n<p>Die Umsetzung des Projekts sowie die Erstellung des Evaluationsberichts wird nach agiler Methodik erfolgen. Die agilen Teams w\u00e4hlen jeweils einen Scrum Master und einen Product Owner. Das Projekt wird in (vermutlich dreiw\u00f6chige) Sprints gegliedert. Ein Vertreter des Projektpartners (Capgemini) wird bei den Entwicklungs-Demos am jeden Sprints als Kunde zugegen sein.<\/p>\n<h4>Learning Outcomes<\/h4>\n<ul>\n<li>Praxiserfahrung mit Microservice-Architekturen und deren Umsetzung in webbasierter Software-Entwicklung<\/li>\n<li>Methodik zur systematischen Evaluierung eines Architekturstils<\/li>\n<li>Erfahrungen mit Erstellung von AngularJS-basierten Webanwendungen<\/li>\n<li>Erfahrung mit agiler Entwicklungsmethodik in einem realistischen Softwareprojekt<\/li>\n<li>Expertise in Kommunikation und Dokumentation<\/li>\n<li>Teamwork- und Projektmanagement-Erfahrung<\/li>\n<\/ul>\n<h4>Voraussetzungen<\/h4>\n<ul>\n<li>Programmierkenntnisse<\/li>\n<li>Interesse an der Softwarearchitektur sowie Gestaltung von Nutzeroberfl\u00e4chen<\/li>\n<li>Interesse an komplexen Aufgabenstellungen und methodischem Vorgehen<\/li>\n<li>Bereitschaft, Teamarbeit tats\u00e4chlich physisch gemeinsam (im gleichen Raum, \u201ecollocated\u201c) durchzuf\u00fchren, um zu einem agilen Team zu reifen<\/li>\n<\/ul>\n<h4>Externe Projektpartner<\/h4>\n<p>Capgemini<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ziel des Projekts ist es, f\u00fcr eine existierende Showcase-Webanwendung (Restaurantmanagement-System) eine Microservice-Architektur zu konzipieren und umzusetzen. Dabei sollen die St\u00e4rken, Schw\u00e4chen, Risiken und Grenzen dieses Ansatzes im Projektreport evaluiert werden.<\/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":[50732],"tags":[9886,9885,6831,21843,21838,21839],"class_list":["post-748","post","type-post","status-publish","format-standard","hentry","category-eigene-gps","tag-angularjs","tag-architektur","tag-capgemini","tag-micro-service","tag-oasp","tag-proof-of-concept"],"acf":[],"_links":{"self":[{"href":"https:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/posts\/748","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/users\/39"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/comments?post=748"}],"version-history":[{"count":7,"href":"https:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/posts\/748\/revisions"}],"predecessor-version":[{"id":1549,"href":"https:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/posts\/748\/revisions\/1549"}],"wp:attachment":[{"href":"https:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/media?parent=748"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/categories?post=748"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.gm.fh-koeln.de\/bente\/wp-json\/wp\/v2\/tags?post=748"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}