You're seeing on softwarearchitecture from to in
  • Hände waschen, Zähne putzen: (manchmal) vergessene Grundlagen von Software-Engineering

    Talk Gernot Starke OOP 2018

    Zeitlose Prinzipien, Heuristiken und andere vermeintlich esoterische, aber in Wirklichkeit sehr nützliche Dinge, die Softwareteams wissen und berücksichtigen sollten - aber leider tendenziell ignorieren - weil Hype und der Glanz vermeintlich moderner Technologien diese Grundregeln in eine finstere Ecke des Unterbewusstseins verbannt haben … Sie hören von Einfachheit (im Gegensatz zu Eindrücklichkeit [impressiveness]), Kohäsion, Modularität, Erst-Denken-dann-Coden sowie einigen grundlegenden Aufgaben von Softwarearchitekten.

    Zu Beginn werde ich Grundlagen, Prinzipien und Heuristiken unterscheiden, und dabei ein wenig über Entwicklungsorganisationen schimpfen. Danach tauchen wir in ausgewählte Themen des „methodischen Software-Engineerings" ein. Einige Beispiele, über die ich im Vortrag sprechen werde:

    • Einfachheit - auch als KISS-Prinzip bekannt, wird oft zugunsten von „schick“ oder „modern” vernachlässigt. Ich spreche LOC als die einfachste und möglicherweise nützlichste Metrik an, und warum wenig oft besser ist (Sicher ein Grund, warum Microservices seit einigen Jahren so angesagt sind). Sie hören von typischen Kompromissen bezüglich Einfachheit – beispielsweise können Sie Programmierung vereinfachen auf Kosten komplizierter Konfiguration und aufwendigen Betriebs.
    • Kohäsion - also die Gruppierung zusammengehöriger Elemente - wird allgemein als hochgradig nützlich angesehen. Allerdings ist Kohäsion immens schwierig zu messen, und noch schwerer zu erreichen. Sie werden die Problematik widersprüchlicher Kriterien für Kohäsion kennenlernen.
    • Modularität gilt zu Recht als die Mutter aller Entwurfsprinzipien - dennoch lohnen ein paar Gedanken in ihre Richtung: Ich werde „Zusammensetzbarkeit" als einen weiteren Begriff erwähnen - womit wir hoffentlich zu noch besseren Kriterien für den Entwurf nützlicher Module kommen können.
    • Grundlegende Aktivitäten und Tätigkeiten in Softwarearchitektur und -engineering, wie beispielsweise „Erst-Denken-dann-Coden", also die saubere Trennung von Problem- und Lösungsraum: Erst das Problem verstehen, dann über Lösungen nachdenken.
    • Wenn wir so weit gekommen sind, sprechen wir Dokumentation an: Die ist oft nützlich, aber niemals ausreichend, um gute Systeme zu implementieren. Verlassen Sie sich niemals auf Dokumentation, sondern arbeiten Sie bei der Implementierung mit. Finden Sie positive und negative Abweichungen vom Soll-Zustand, und berücksichtigen Sie solche Abweichungen in Entwürfen.
    Read more

    VENOM: Leiden und Rettung eines großen Systems

    Talk Gernot Starke, Cem Kulac OOP 2018

    Wir stellen Ihnen VENOM vor - ein E-Commerce-System für komplizierte Produkte (Komplettausstattung von Supermärkten, Apotheken, Gartenplanung etc.) inklusive Logistik, Lieferung, Verzollung, Inbetriebnahme … Erleben Sie die Auswirkungen desaströser Architekturarbeit und verkorkster Entwicklungs-, Betriebs- und Unternehmensprozesse. Wir zeigen, wie methodische Verbesserung von Organisation bis zum Code funktionieren kann: Von Architekturbewertung über Entwicklung angemessener Verbesserungsmaßnahmen bis zur effektiven Umsetzung.

    Dürfen wir Ihnen VENOM vorstellen - ein E-Commerce-System für ziemlich komplizierte Produkte (Komplettausstattung von Supermärkten, Gartenplanung, Regal- und Möbelplanung und ähnliche abgefahrene Dinge) - inklusive kompletter Logistik, Lieferung, Verzollung, Aufbau, Abnahme, Inbetriebnahme … nennen wir es “very normal system”.

    Das System ist historisch/hysterisch gewachsen, wird von einer ziemlich desolat organisierten Firma (SAMM Inc.) entwickelt und betrieben. SAMM Inc. hat 600 Mitarbeiter und die IT ist als Kostenstelle (angeblich) immer zu teuer und in Verzug. Die Fachabteilungen entscheiden über Lösungen und involvieren die IT oft erst, wenn Umfang, Budget und Lösungsansätze bereits entschieden sind. VENOM verliert seit einiger Zeit Marktanteile und droht „den Bach herunter“ zu gehen.

    Daraufhin zog SAMM Inc. die Reißleine: Gemäß der Devise „Succeed or die“ beauftragte sie ein Team, die Rettung von VENOM mit der gesamten Organisation vorzubereiten und durchzuführen. Dabei stehen neben der Technik auch organisatorische Prozesse zur Verbesserung an. Diese (völlig fiktive) Situation ist in Wirklichkeit völlig real: Hören Sie über „rise and fall of the system“, „cultural change over agile toolboxes", sehen Sie die Auswirkungen desaströser Architekturarbeit und verkorkster Entwicklungs-, Betriebs- und Unternehmensprozesse.

    Erleben Sie anschließend, wie methodische Verbesserung von Organisation bis zum Code funktionieren kann, die Rettung von VENOM: Von der systematischen Architekturbewertung über die Entwicklung angemessener Verbesserungsmaßnahmen bis hin zur effektiven Umsetzung zeigen wir, wie Modernisierung und Evolution sich mit Projektalltag und Feature-Druck vereinbaren lässt. Über die Sprecher: Cem und Gernot haben Systeme und Organisationen im Großen und Kleinen verbessert - und die hier geschilderten Situationen live und 3D erlebt und erlitten …

    Read more
  • Bis an den Abgrund - und zurück!

    Talk Gernot Starke Java Usergroup Hamburg November 2017

    Aufstieg, Krise und Rettung einer (gar nicht so) hypothetischen Software

    Unser “ganz normales System” (VENOM, "very normal system“) unterstützt eCommerce-Prozesse für ziemlich komplizierte Produkte (Komplettausstattung von Kaufhäusern und Apotheken, Gartenplanung, Regal- und Möbelplanung und ähnliche abgefahrene Dinge) - inklusive kompletter Lieferung, Verzollung, Aufbau, Abnahme, Inbetriebnahme….

    Das System, über viele Jahre eher hysterisch als historisch gewachsen, wird von einer ziemlich desolaten organisierten Firma (SAMM Inc.) entwickelt und betrieben. Es drohte vor einiger Zeit, „den Bach herunter“ zu gehen. SAMM Inc. zog die Reißleine, und beauftragte ein (agiles) Team damit, die Rettung von VENOM (und SAMM) vorzubereiten und durchzuführen - „Succeed or die", hieß die Devise.

    Diese (überaus fiktive) Situation ist in Wirklichkeit völlig real. Lernen Sie „rise and fall of a system“ aus der Nähe kennen, sehen Sie die Auswirkungen desaströser Architekturarbeit sowie verkorkster Entwicklungs- und Betriebsprozesse. Und dann - erfahren Sie von Maßnahmen, die wirklich helfen könnten (oder auch nicht) - und sehen Sie (am realen Beispiel), wie methodische Verbesserung von Software(architektur) funktionieren kann.

    Disclaimer: Ähnlichkeit mit real existierenden Unternehmen ist rein zufällig.

    Read more
  • Am Rande des Abgrunds – die VENOM-Story. Ein Interview mit Gernot Starke

    Link Gernot Starke

    Wie sieht ein ganz normales System eigentlich aus? Wenn sich technische Schulden immer höher türmen, wie schaffen wir es, nicht von ihnen erschlagen zu werden? Dr. Gernot Starke liefert Antworten im Interview auf der W-JAX 2017.

  • Die VENOM-Story: Von Leben, Leiden und Rettung eines großen (und gar nicht so hypothetischen) IT-Systems

    Talk Gernot Starke W-JAX 2017

    Darf ich Ihnen VENOM vorstellen – ein E-Commerce-System für ziemlich komplizierte Produkte (Komplettausstattung von Supermärkten, Gartenplanung, Regal- und Möbelplanung und ähnliche abgefahrene Dinge) inklusive kompletter Logistik, Lieferung, Verzollung, Aufbau, Abnahme, Inbetriebnahme, nennen wir es „very normal system“.

    Das System ist historisch/hysterisch gewachsen, wird von einer zerfahrenen, ziemlich desolaten Firma (SAMM Inc.) entwickelt und betrieben und drohte vor einiger Zeit, „den Bach herunter“ zu gehen. SAMM Inc. zog die Reißleine und beauftragte ein (agiles) Team damit, die Rettung von VENOM (und SAMM) vorzubereiten und durchzuführen – „Succeed or die“ hieß die Devise.

    Diese (völlig fiktive) Situation ist in Wirklichkeit völlig real: Hören Sie über „rise and fall of the system“, sehen Sie die Auswirkungen desaströser Architekturarbeit und verkorkster Entwicklungs- und Betriebsprozesse.

    Erleben Sie anschließend, wie methodische Verbesserung von Software funktionieren kann, die Rettung von VENOM: Von der systematischen Architekturbewertung über die Entwicklung angemessener Verbesserungsmaßnahmen bis hin zur effektiven Umsetzung zeige ich auf, wie Modernisierung und Evolution sich mit Projektalltag und Featuredruck vereinbaren lassen.

    Disclaimer: Eventuelle Ähnlichkeiten mit realen Softwaresystemen und Entwicklungsorganisationen wären rein zufällig – obwohl ich diverse der hier geschilderten Situationen selbst erleben durfte oder erleiden musste.

    Read more
  • Beyond Microservices

    Talk Eberhard Wolff Topconf Düsseldorf 2017

    Everyone is doing microservices these days - but they are no silver bullet. This talk reviews the advantages microservices bring - e.g. better modularization, many technical advantages and better support for continuous delivery. Then, the talk discusses the drawbacks, e.g. concerning operations. Finally, the talk shows several case studies with alternative approaches that provide some of the advantages, while avoiding the pitfalls. Domain-driven Design, optimizing the deployment, different approaches to modularization and self-organizing teams are important ingredients of these architectures.

    Read more
  • Keynote: Verbesserung eines großen IT-Systems – am (guten + schlechten) Beispiel

    Talk Gernot Starke Software Architecture Summit Berlin 2017

    Lernen Sie VENOM kennen, ein großes und über mehrere Jahre lang auch erfolgreiches IT-System. Hören Sie Erfolgsberichte begeisterter Anwender und Trauerreden beteiligter Entwicklerinnen, Horrorgeschichten aus Betrieb und Support. Die Protagonisten dieses Systems sind zufriedene und erschrockene Benutzer, motivierte, engagierte und frustrierte Entwickler, scham- und rücksichtslose, effektive und chaotische Manager, Admins und Betreiber und andere.

    VENOM stößt an vielerlei Grenzen, das Management wechselt häufig die Fahrtrichtung, das Entwicklungsteam alterniert zwischen Stress, Depression und Euphorie.

    Das Management beauftragt „Verbesserung“ – und dann erleben Sie, wie’s gehen kann. Soviel sei verraten: Nicht jeder Ansatz führt zu Erfolg – und manches drohende Desaster kann sich dann doch noch zum Positiven wenden. Außerdem sollen Vollbremsungen bei hoher Geschwindigkeit schon so manches Vehikel vor der Kollision mit der (harten) Wand bewahrt haben.

    Das hier beschriebene VENOM-System (für very normal system) ist einerseits völlig fiktiv, aber andererseits basieren viele der zugrunde liegenden Entscheidungen, Strukturen und Konzepte maßgeblich auf real existierenden Systemen. Die Verbesserungsansätze, die Sie erleben werden, entstammen sämtlich der Realität.

    Read more
  • Hitchhikers Guide to Architecture Documentation

    Talk Gernot Starke, Ralf D. Müller Software Architecture Summit Berlin 2017

    Anhand eines großen Systems zeigen Ralf und Gernot, wie Sie mit ziemlich wenig Aufwand angemessene und vernünftige Dokumentation für unterschiedliche Stakeholder produzieren – sodass Entwicklungsteams dabei auch noch Spaß haben.

    Das Rezept: AsciiDoc mit arc42 mischen, Automatisierung mit Gradle und Maven hinzufügen und bei Bedarf mit PowerPoint, Grafik- oder Modellierungstools Ihrer Wahl kombinieren – schon bekommen Sie schicke HTML- und PDF-Dokumente generiert, auf Wunsch auch Confluence und docx als Zugabe.

    Wir zeigen, wie Sie Doku genau wie Quellcode verwalten können, stakeholderspezifische Dokumente erzeugen und Diagramme automatisiert integrieren können.

    Zwischendurch bekommen Sie zahlreiche Tipps, wie und wo Sie systematisch den Aufwand für Dokumentation reduzieren können, geschickt Aufgaben im Team verteilen und ganz nebenbei lesbare, verständliche und praxistaugliche Ergebnisse produzieren. Zum Schluss zeigen wir, wie Sie Teile dieser Doku automatisiert testen können.

    Read more
  • Self-contained Systems und Frontend-Integration – Teil 2

    Podcast Falk Hoppe, Till Schulte-Coerne, Eberhard Wolff

    Im zweiten Teil des Podcasts über Self-contained Systems (SCS) und Frontend-Integration geht es um Alternativen zu Single Page Apps (SPAs) und darum, wie Entwickler ganz konkret erste Schritte hin zu einer Frontend-Integration und Self-contained Systems gehen können. Read more
  • What’s in a Name: Architecture

    Blog Post Gernot Starke

    The term architecture is used with slightly different meanings throughout the IT industry. This post clarifies what (software) architecture is all about - and which misunderstandings might linger on your way to common understanding.

    Read more
  • JAX TV: Know your Enemies – Problembewusstsein als Grundlage von Änderungs- und Evolutionsprojekten

    Link Gernot Starke

    Die meiste Zeit verbringen Softwareentwickler mit Änderungen oder Verbesserungen bestehender Systeme. In seiner Session von der W-JAX 2015 zeigt Gernot Starke, wie man systematisch die aus langfristiger und ökonomischer Sicht schlimmsten Probleme in Softwarearchitekturen und -systemen finden kann.

  • Microservices - Agilität durch Modularisierung

    Article Eberhard Wolff

    Microservice-Architekturen sind der neue Hype. Viele denken: Alles wird einfacher mit diesem Ansatz - Software ist langfristig wartbar, die Entwicklung wird schneller und die Software skaliert besser. Es ist aber an der Zeit für einen detaillierten kritischen Blick.

    Read more
  • Entwicklung einer skalierbaren Webanwendung mit Amazon Web Services

    Article Christine Koppelt, Martin Eigenbrodt, Oliver Tigges

    Gemeinsam mit Heraeus Kulzer hat innoQ eine Cloud-basierte Plattform für die Abwicklung von Beauftragungsprozessen im Dentalbereich entwickelt. In dieser Fallstudie stellen wir die Rahmenbedingungen und Anforderungen des Projektes vor und zeigen, wie die technische Lösung mittels Amazon Web Services aussieht.

    Read more
  • Architecture Kata

    Talk Eberhard Wolff, Martin Klose GOTO Conference Berlin 2015

    In this workshop you will create Software Architectures - as a focused practice. We will show you how to come up with an Architecture, what to focus on and what makes an Architecture great. It’s an interactive workshop so you will also learn how to communicate your Architecture and finally how to deal with non-functional requirements.

    The training is based on Katas - an old Japanese tradition of martial arts trainings. In a Kata certain moves are repeated over and over to really master them - and in this Workshop we will apply these principles to Software Architecture.

    Workshop Location

    The workshop will take place at the hotel “Park Inn - Alexanderplatz” in Room Virchow 1. Please arrive at the address below around 08:30 AM on Wednesday, December 2, for the registration.

    Hotel Park Inn - Alexanderplatz Alexanderplatz 7 10178 Berlin Website

    On arrival at the Hotel Park Inn - Alexanderplatz please use the stairs behind or the elevator beside the concierge to the 2nd floor. On the second floor go to the workshop rooms on the right hand side.

    Read more
  • Docker - Perfekte Verpackung von Microservices

    Article Jerry Preissler, Oliver Tigges

    Die Microservice-Bewegung ist mit viel Schwung gestartet und in großen Unternehmen angekommen. Überall werden Monolithen zerschlagen und durch eigenständige, fachlich definierte Microservices ersetzt. Entwicklungsteams können eigenverantwortlicher und autonomer agieren und damit deutlich schneller Ergebnisse ausrollen. Aus Sicht des IT-Betriebs bringen die Microservices aber auch eine Menge Herausforderungen: Statt weniger großer und etablierter Unternehmensanwendungen, existieren plötzlich Landschaften mit einer Vielzahl an kleinen, sich schnell ändernden Services, die alle konfiguriert, integriert und überwacht werden wollen. Eine Container-Technologie wie Docker kann das ideale Mittel sein, um diese Services zu verpacken und auszurollen. Aber welche Probleme löst Docker genau und welche neuen Herausforderungen bringt es mit? In diesem Artikel zeigen wir, für welche Software-Architekturen Docker geeignet ist und wie ein Einsatz von Docker dabei helfen kann, Microservice-Architekturen zu standardisieren, zu steuern und zu kontrollieren.

    Read more
  • arc42 Reality Check

    Talk Gernot Starke W-JAX 2015 Slides available

    Seit über zehn Jahren gibt es arc42, die pragmatische Vorlage/Arbeitshilfe für Architekturdokumentation. Im Vortrag stelle ich diverse Optionen für den Praxiseinsatzvon arc42 vor - von Werkzeugen bis hin zur Organisation von Dokumentation im Projekt. Anhand von Beispielen zeige ich auf, wie Architektur- und Codedokumentation zusammenspielen und wie wir eine pragmatische und nützliche (technische) Projektdokumentation aufsetzen können. Insbesondere sehen Sie textbasierte (AsciiDoc-)Dokumentation im Zusammenspiel mit Modellierungswerkzeugen wie Enterprise Architect und Visual Paradigm im Einsatz - und wie das zusammen mit Git auch entwicklerfreundlich funktioniert.

    Gerne dürfen Sie mir (dem Sprecher) im Vorfeld Ihre konkreten Fragen zu Architekturdokumentation und arc42 zukommen lassen. Im Vortrag werde ich möglichst viele davon beantworten.

    Read more

    Know your Enemies: Problembewusstsein als Grundlage von Änderungs- und Evolutionsprojekten

    Talk Gernot Starke W-JAX 2015 Slides available

    Die meiste Zeit verbringen wir in der Softwareentwicklung mit Änderung oder Verbesserung bestehender Systeme. Dabei ist es besonders wichtig, an den richtigen Stellen zu ändern (und nicht willkürlich die bekannten Refactoring-Patterns anzuwenden).

    Ich zeige auf, wie Sie systematisch die aus langfristiger und ökonomischer Sicht schlimmsten Probleme in Ihren Softwaresystemen und -architekturen finden können und wie Sie dann deren Lösung angehen können. Dabei spannen wir den Bogen von der Analyse der beteiligten Stakeholder und externen Schnittstellen über verschiedene Ansätze der (quantitativen) Code- und (qualitativen) Architekturanalyse bis hin zu fortgeschrittenen Themen wie Datenanalyse, Prozessanalyse oder Kontextanalyse. Anhand realer Probleme aus mittleren und großen Projekten zeige ich auf, dass die “Feinde” manchmal an überraschenden Stellen lauern.

    Read more

    Was Sie über die Advanced-Zertifizierung für Softwarearchitekten wissen sollten

    Talk Phillip Ghadir W-JAX 2015

    Wer über kurz oder lang die Prüfung zum Certified Professional for Software Architecture – Advanced anstrebt, muss sich nicht nur aus dem modular aufgebauten Advanced-Programm des iSAQB die richtigen Module aussuchen, sondern sollte sich auch frühzeitig auf die Prüfung einstellen. In diesem Vortrag gebe ich einen kurzen Überblick über den Advanced Level für die Zertifierung von Advanced-Softwarearchitekten, das Prüfungsverfahren und gebe meine persönlichen Ansichten zur Erfolgsstrategie für den Advanced Level.

    Read more
  • Many Roads Lead to Microservices

    Talk Eberhard Wolff Microservices Meetup Rhein-Main

    Microservices solve a lot of problems with current architectures: E.g. they help with agile processes, enable Continuous Delivery and increase robustness and scaling. But what is the best way to create a Microservices architecture? That depends on the concrete scenario - and can be very different for each individual project. This talk shows the many value propositions of Microservices and how to find the best way to a Microservices architecture.

    Read more
  • Why programmers need to smell their software systems

    Link Gernot Starke jaxenter.com

    If your software system is slow and struggles to ‘evolve’, there’s a good chance your team is only working one-dimensionally, says our colleague Gernot Starke in this interview with jaxenter.com.

  • Microservices: Architektur für agile Softwareentwicklung

    Talk Eberhard Wolff Berlin Expert Days 2015

    Die Aufteilung von Software in kleine Microservices hat viele Vorteile. Diese Services können einzeln in Produktion gebracht werden. So können viel mehr Features parallel entwickelt und ausgeliefert werden - eine ideale Ergänzung zu agiler Software-Entwicklung. Ebenso sind Microservices leichter zu verstehen und zu warten - daher kann die hohe Entwicklungsgeschwindigkeit auch langfristig beibehalten werden. Der Vortrag zeigt, wie Microservices funktionieren und welche Vor- und Nachteile sie mit sich bringen.

    Read more
  • Schluss mit Verschlimmbesserung: Software-Evolution, aber richtig

    Talk Gernot Starke Dev Day 2015

    In diesem Talk erfahren Sie, worauf es bei Evolution, Wartung und Änderung von Software wirklich ankommt. Den größten Teil unseres Informatikerlebens verbringen wir mit Anpassungen bestehender Systeme - und genau diesen Teil ignoriert die klassische IT-Ausbildung. Ich zeige einen pragmatischen und systematischen Lösungsweg aus diesem Dilemma - und verspreche Ihnen Bausteinen wesentlicher Lösungsansätze:

    • So finden Sie die schlimmsten Probleme
    • So überzeugen Sie Ihr Management von Umbaumaßnahmen
    • So gehen Sie kurz-, mittel- und langfristig Verbesserungs- und Evolutionsprojekte an
    Read more
  • Know your Enemies – Problembewusstsein als Grundlage von Änderungs- und Evolutionsprojekten

    Talk Gernot Starke JAX 2015 Slides available

    Die meiste Zeit verbringen wir in der Softwareentwicklung mit Änderung oder Verbesserung bestehender Systeme - dabei ist es besonders wichtig, an den richtigen Stellen zu ändern (und nicht willkürlich die bekannten Refactoring-Patterns anzuwenden). Ich zeige auf, wie Sie systematisch die aus langfristiger und ökonomischer Sicht schlimmsten Probleme in Ihren Softwaresystemen und -architekturen finden können - und wie Sie dann deren Lösung angehen können. Dabei spannen wir den Bogen von der Analyse der beteiligten Stakeholder und externen Schnittstellen über verschiedene Ansätze der (quantitativen) Code- und (qualitativen) Architekturanalyse bis hin zu fortgeschrittenen Themen wie Datenanalyse, Prozessanalyse oder Kontextanalyse. Anhand realer Probleme aus mittleren und großen Projekten zeige ich auf, dass die “Feinde” manchmal an überraschenden Stellen lauern.

    Read more
  • arc42-Realitycheck

    Talk Gernot Starke JAX 2015 Slides available

    Seit über zehn Jahren gibt es arc42 - die pragmatische Vorlage/Arbeitshilfe für Architekturdokumentation. Im Vortrag stelle ich diverse Optionen für den Praxiseinsatzvon arc42 vor - von Werkzeugen bis hin zur Organisation von Dokumentation im Projekt. Anhand von Beispielen zeige ich auf, wie Architektur- und Codedokumentationzusammenspielen und wie wir eine pragmatische und nützliche (technische) Projektdokumentation aufsetzen können. Insbesondere sehen Sie textbasierte (AsciiDoc-)Dokumentation im Zusammenspiel mit Modellierungswerkzeugen wie Enterprise Architect und Visual Paradigm im Einsatz - und wie das zusammen mit git auch entwicklerfreundlich funktioniert.

    Gerne dürfen Sie mir (dem Sprecher) im Vorfeld Ihre konkreten Fragen zu Architekturdokumentation und arc42 zukommen lassen. Im Vortrag werde ich möglichst viele davon beantworten.

    Read more
  • Microservices mit Clojure

    Talk Philipp Schirmacher, Silvia Schreier JAX 2015 Slides available

    Microservices zeichnen sich insbesondere durch ihre Eigenständigkeit aus: Die Services sind so lose gekoppelt wie möglich. Damit bietet eine Microservices-Architektur den idealen Rahmen für den Einsatz unterschiedlicher Technologien, die jeweils genau zum zu lösenden Problem und dem Skillset der Entwickler passen. In einem solchen Umfeld lassen sich die Vorteile einer modernen Sprache wie Clojure voll ausnutzen: Knapper und präziser Code, Parallelverarbeitung und direkter Support für asynchrone Programmierung.

    Microservices stellen jedoch auch besondere Herausforderungen: Wie lassen sich neue Projekte ohne viel Overhead aufsetzen? Wie können Services miteinander kommunizieren? Wie schütze ich meinen Service, wenn ein anderer Service ausfällt? Und wenn ich einen Service gebaut habe: Wie bringe ich ihn in Produktion und gestalte das Monitoring?

    In dieser Session führen wir die Teilnehmer Schritt für Schritt an Clojure heran und zeigen am Beispiel, mit welchen Clojure-Bibliotheken sich die genannten Herausforderungen elegant lösen lassen.

    Read more
  • Microservices - Are your Frameworks ready?

    Talk Alexander Heusingfeld, Martin Eigenbrodt microXchg 2015 - The Microservices Conference Slides available

    The term “MicroServices” has become a marketing buzzword filled with a variety of different meanings. This actually not-so-new service-oriented approach to system architecture promises great advantages compared to its monolithic counter parts but it also comes with a lot of new challenges which developers didn’t find themselves faced with before. In this session we’d like to highlight those challenges that arise in practice and take a look at how different JVM-based application development stacks try to tackle them. We will identify gaps and discuss whether its reasonable at all to expect your framework to bridge them. Examples shown will include Dropwizard, Spring Cloud and Play2 Scala.

    Read more
  • Mikroservices mit Erlang/OTP

    Talk Christoph Iserlohn BOB Konferenz 2015 Slides available

    Mikroservice-Architekuren sind zur Zeit in aller Munde. Und obwohl es noch nicht einmal eine allgemein akzeptierte Definition davon gibt, was eine Mikroservice-Architektur eigentlich genau ist, haben sich in der Praxis eine Reihe von Merkmalen und Prinzipien herausgebildet, die typisch dafür sind, wenn von einer Mikroservice-Architektur gesprochen wird.

    Erlang/OTP ist eine Plattform, bestehend aus der funktionalen Sprache Erlang und der Middelware OTP, für die Entwicklung von verteilten und hochverfügbaren Systemen, die ursprünglich aus dem Telekommunkationsbereich stammt. Viele der Prinzipien von Mikroservice-Architekturen finden sich in Erlang/OTP wieder, was Erlang/OTP zu einen herausragenden Kandidaten für die Implementierung von Mikroservices macht.

    Dieser Talk gibt zunächst einen Überblick über die Prinzipien von Mikroservice-Architekturen, und stellt den Nutzen und die Herausforderungen dar, die mit der Realisierungen derselbigen einhergehen. Danach wird die Erlang/OTP Plattform vorgestellt, aufgezeigt welche Prinzipien von Mikroservice-Architekturen sich dort wiederfinden und dargelegt wie mit Erlang/OTP Mikroservices entwickelt werden können.

    Read more
  • Nano, Micro, Mini, oh my: Modularization for sustainable systems

    Talk Stefan Tilkov Microservices Meetup Berlin Slides available

    Architects are used to being able to rely on a common technical basis for their systems, but it usually takes only a few successful versions for a system to turn into a hard-to-change, monolithic, annoying mess: Homogeneity, valued in the beginning, turns into a liability. In this talk, we’ll look at concepts for turning a single system into a system of systems, and discuss the architectural und organizational challenges that arise. We’ll also highlight how these ideas are definitely compatible, but possibly not identical to what’s currently being discussed as “microservices” in the community.

    Read more
  • Fun Stories from an Architect’s Life

    Talk Stefan Tilkov GOTO Berlin 2014 Slides available

    In this session, I will talk about entertaining examples of architectural disasters in software projects. We will see how excellent ideas can turn into nightmares, how one can slowly but thoroughly introduce incredible complexity, and how a merge between organizational and technical failures can grind productivity to a halt. Names and irrelevant details have been changed to protect the somewhat innocent, but everything is based on actual things I had to experience – and sometimes helped create – in the real world.

    Read more
  • Methodical Improvement of Software Systems and Architectures: The aim42 approach

    Talk Gernot Starke European Conference on Software Architecture (ECSA) 2014 Slides available

    The presentation outlines AIM42, the architecture-improvement-method, a systematic yet pragmatic approach to improve productive systems. AIM42 relies on a small number of domain concepts and works in three phases (analysis, evaluation, improvement) supported by crosscutting activities. For each phase, AIM42 proposes a number of proven and established practices and patterns. The method addresses both business and technical stakeholders of software systems. aim is developed by an active community in open-source style, backed by extensive industrial experience and scientific research. It has proven to work under time- and budget constraints in various industries.

    Read more
  • Nano, Micro, Mini, oh my: Modularization for sustainable systems

    Talk Stefan Tilkov Microservices Meetup Munich Slides available

    Architects are used to being able to rely on a common technical basis for their systems, but it usually takes only a few successful versions for a system to turn into a hard-to-change, monolithic, annoying mess: Homogeneity, valued in the beginning, turns into a liability. In this talk, we’ll look at concepts for turning a single system into a system of systems, and discuss the architectural und organizational challenges that arise. We’ll also highlight how these ideas are definitely compatible, but possibly not identical to what’s currently being discussed as “microservices” in the community.

    Read more
  • Quality-driven Software Architecture

    Talk Gernot Starke W-JAX 2011

    Allem Hype von Convention over Configuration und DDD-Frameworks (wie Rails, Grails oder NakedObjects) zum Trotz: Manchmal ist ein domänenorientierter Entwurf einfach nicht ausreichend, weil nichtfunktionale Anforderungen jenseits aller fachlichen Strukturen maßgeblich für die Architektur von Systemen sind. Im Vortrag zeige ich unter anderem einige Grenzen von Domain-driven Design auf.

    Read more