Sie sehen von Alexander Heusingfeld aus dem Zeitraum bis in
  • Von „schlecht“ zu „viel besser“ in drei Iterationen – Softwaremodernisierung am Beispiel

    Vortrag Alexander Heusingfeld, Gernot Starke Software Architecture Summit 2018, München

    Zeit- und Featuredruck, hohe technische Schulden, wenig Innovation – möglicherweise gepaart mit Fluktuation und Unverständnis seitens Management – so sah es zu Beginn unserer Rettungsaktion mit dem zentralen IT-System eines (realistischen aber fiktiven) Unternehmens aus. Erleben Sie die Geschichte von VENOM, einem großen, erfolgreichen aber auch chaotischen IT-System aus der Sicht verschiedener Beteiligten.

    Unsere Protagonisten sind zufriedene und erschrockene Benutzer, motivierte, engagierte und frustrierte Entwickler, scham- und rücksichtslose, effektive und chaotische Manager, Admins und Betreiber und Andere. Erleben Sie, wie methodische Verbesserung von Software funktionieren kann: Von der systematischen Architekturbewertung über die Entwicklung angemessener Verbesserungsmaßnahmen bis hin zur effektiven Umsetzung zeigen wir auf, wie Modernisierung und Innovation sich mit Projektalltag und Feature-Druck vereinbaren lassen. Sie lernen drei Iterationen einer Modernisierungs- und Verbesserungsinitiative kennen, die das (ziemlich verkorkste) System wieder auf Trab bringt.

    Mehr lesen
  • Probleme bei der Einführung von Microservices: Seien Sie vorbereitet!

    Artikel Alexander Heusingfeld

    Nachdem man sich die Frage gestellt hat, warum man Microservices einsetzen will, und diese richtig beantwortet hat – nicht wegen dem Hype oder um als spannendes Unternehmen für Fachkräfte dazustehen –, geht es im nächsten Schritt natürlich darum, Microservices auch einzuführen. Dabei wird man auf jeden Fall auf einige Probleme stoßen. Es gilt, die Zahl der unknown Unknowns zu reduzieren, sodass Sie in Ihren Projekten weniger Überraschungen erleben. Die Probleme teilen sich in vier Bereiche auf: Technik, Prozesse, Schnitt und Menschen.

    Mehr lesen
  • Warum wollen Sie Microservices einführen?

    Artikel Alexander Heusingfeld

    Mit diesem Artikel möchte ich Ihnen die Frage stellen, warum Sie eigentlich Microservices einführen wollen. Denn es ist immens wichtig, sich der Gründe und Ziele bewusst zu sein. Leider habe ich zu oft erlebt, wie die glänzenden, neuen Technologien die eigentlichen Ziele des Unternehmens in Vergessenheit geraten lassen und zum Selbstzweck werden.

    Mehr lesen
  • Innovation Tokens – Gegen Informatikerromantik und Technologieüberflutung

    Artikel Alexander Heusingfeld

    Zu oft werden in Softwareprojekten zu viele neue Dinge gleichzeitig ausprobiert, ohne dass der Business Value erkennbar wäre- und vor allem, ohne die Risiken vorher abzuschätzen. Eine Möglichkeit, die unnötige Technologieüberflutung zu vermeiden, sind Innovation Tokens. Mit diesen lassen sich Innovationen in geregeltere Bahnen lenken und bieten eine Grundlage für weniger emotionale Technologiediskussionen.

    Mehr lesen
  • Architekturmodernisierung mit SCS und Microservices

    Vortrag Alexander Heusingfeld, Michael Vitz OOP 2017 Folien verfügbar

    Dieser Vortrag adressiert ein klassisches Dilemma der IT: eine große, monolithische Anwendung, kritisch und wichtig, und innerlich ungeheuer schwer und aufwendig zu warten. Um auf fachliche Änderungen und dynamische Märkte schneller reagieren zu können, müssen wir dieses Altsystem modularisieren und strukturell sowie konzeptionell modernisieren – dabei aber kontinuierlich (hoch) verfügbar halten. Ganz nebenbei verfügen wir natürlich nur über ein eingeschränktes Budget.

    Wir zeigen Ihnen anhand etablierter Praktiken und Patterns (aus dem Fundus von aim42.org) typische Möglichkeiten auf, solche Projekte anzugehen. So können Sie Stück für Stück, gerade so, wie es das Projektbudget zulässt, die Architektur des Gesamtsystems modernisieren, ohne ein Big-Bang-Release zu fürchten. Hierbei wollen wir auch die Frage beantworten, mit welchen Themen Sie sich neben „Wie teile ich mein System auf“ außerdem beschäftigen müssen, und wie wir die Vorteile einer Microservice-Architektur nutzen können, ohne uns gleich allen ihren Herausforderungen auf einmal stellen zu müssen.

    Zielpublikum: Architekten, Entwickler, Projektleiter Voraussetzungen: Basiswissen Software-Architektur und verteilte Systeme Schwierigkeitsgrad: Anfänger

    Mehr lesen
  • Dynamisch überwacht: Monitoring von Microservice-Architekturen

    Vortrag Alexander Heusingfeld, Tammo van Lessen Microservices Summit 2016

    Ein Softwaresystem kann nur dann erfolgreich betrieben werden, wenn es feinmaschig überwacht wird. Mit dem Aufschwung der Microservices-Architekturen reichen die traditionellen Monitoringmittel nicht mehr aus, denn sie erfordern ein hohes Maß an Flexibilität und Dynamik von Organisation und Infrastruktur. Wegen der Verteilung auf verschiedene Systeme ist es jedoch umso wichtiger, die einzelnen Dienste sorgfältig und nachhaltig zu überwachen und Verfügbarkeit, Performance (fachlich wie technisch), Zuverlässigkeit und Wirtschaftlichkeit kontinuierlich zu messen. So entsteht ein jederzeit aktuelles, vergleichendes Bild auf die Systemlandschaft. Dafür müssen allerdings neue Konzepte für Logging, Tracing und Alarming umgesetzt werden, die die Aggregation, Korrelation und Visualisierung von Laufzeitinformationen an zentraler Stelle erlauben.

    Das Trio Logs, Metriken und Tracingdaten stellt die Grundlage zur Verfügung, eine solche Beobachtungsstelle zu realisieren. Doch was sind eigentlich wichtige Logs? Welche Metriken soll ich erfassen? Welche Sichten auf meine Anwendung erlauben mir die Metriken? Diese Fragen versuchen wir in der Session zu beantworten und stellen dazu die wichtigsten Ansätze und Werkzeuge zum Überwachen von modernen verteilten Systemen vor.

    Mehr lesen
  • Deployment und Monitoring von Microservices

    Artikel Alexander Heusingfeld

    Beim Deployment von Microservices verschwimmen die Grenzen zwischen Mikro- und Makroarchitektur. Während das Team die Mikroarchitektur für jeden Service individuell entscheiden kann, muss man sich bei Makroarchitektur-Themen mit anderen Teams zusammensetzen, um die beste Lösung für Themen zu finden, die mehrere Services betreffen. In diesem Artikel wollen wir uns ansehen, welche Entscheidungen ein Team für sich treffen kann und welche mit anderen Teams abgestimmt werden müssen. Zu diesem Zweck möchte ich beispielhaft den Lernprozess beschreiben, den ich in Teams erleben durfte, die “einfach mal” mit Microservices angefangen haben.

    Mehr lesen
  • Dynamisch überwacht: Monitoring von Microservice-Architekturen

    Vortrag Alexander Heusingfeld, Tammo van Lessen Microservices Summit 2016

    Ein Softwaresystem kann nur dann erfolgreich betrieben werden, wenn es feinmaschig überwacht wird. Mit dem Aufschwung der Microservices-Architekturen reichen die traditionellen Monitoringmittel nicht mehr aus, denn sie erfordern ein hohes Maß an Flexibilität und Dynamik von Organisation und Infrastruktur. Wegen der Verteilung auf verschiedene Systeme ist es jedoch umso wichtiger, die einzelnen Dienste sorgfältig und nachhaltig zu überwachen und Verfügbarkeit, Performance (fachlich wie technisch), Zuverlässigkeit und Wirtschaftlichkeit kontinuierlich zu messen. So entsteht ein jederzeit aktuelles, vergleichendes Bild auf die Systemlandschaft. Dafür müssen allerdings neue Konzepte für Logging, Tracing und Alarming umgesetzt werden, die die Aggregation, Korrelation und Visualisierung von Laufzeitinformationen an zentraler Stelle erlauben.

    Das Trio Logs, Metriken und Tracingdaten stellt die Grundlage zur Verfügung, eine solche Beobachtungsstelle zu realisieren. Doch was sind eigentlich wichtige Logs? Welche Metriken soll ich erfassen? Wie finde ich Bottlenecks in meiner Architektur? Diese Fragen versuchen wir in der Session zu beantworten und stellen dazu die wichtigsten Ansätze und Werkzeuge zum Überwachen von modernen verteilten Systemen vor.

    Mehr lesen
  • Microservice-Architekturen zur Modernisierung von Bestandssystemen

    Vortrag Alexander Heusingfeld, Michael Vitz Microservices Summit 2016

    Ein klassisches Dilemma der IT: eine große, monolithische Anwendung, kritisch und wichtig, und innerlich ungeheuer schwer und aufwändig zu warten. Um auf fachliche Änderungen und dynamische Märkte schneller reagieren zu können, müssen wir dieses Altsystem modernisieren – nur wie? Erneuern wir nur den Technologie-Stack und bauen einen neuen Monolithen? Oder modularisieren wir und bauen strukturell sowie konzeptionell Neues? Wie können wir das entscheiden?

    Wir zeigen Ihnen in diesem Workshop anhand etablierter Praktiken und Patterns (aus dem Fundus von aim42.org) typische Möglichkeiten auf, solche Projekte anzugehen und die Systeme dabei (hoch) verfügbar zu halten. So können Sie Stück für Stück, gerade so wie es das Projektbudget zulässt, die Architektur des Gesamtsystems modernisieren, ohne ein Big-Bang-Release zu fürchten. Hierbei wollen wir uns auch mit der Frage beschäftigen, die so gern von unseren Vorgesetzten gestellt wird: “Können Sie mir mal vorrechnen, wieso eine Microservice-Architektur die finanziell bessere Entscheidung ist?“ Nach dem Workshop haben Sie einige anwendbare Muster kennengelernt, mit deren Hilfe Sie Ihre eigenen Monolithen wieder zu besser wartbaren Systemen migrieren können.

    Mehr lesen
  • Microservices zur Architektur­modernisierung

    Vortrag Alexander Heusingfeld, Michael Vitz JAX 2016 Folien verfügbar

    Dieser Vortrag adressiert ein klassisches Dilemma der IT: eine große, monolithische Anwendung, kritisch und wichtig, und innerlich ungeheuer schwer und aufwändig zu warten. Um auf fachliche Änderungen und dynamische Märkte schneller reagieren zu können, müssen wir dieses Altsystem modularisieren und strukturell sowie konzeptionell modernisieren – dabei aber kontinuierlich (hoch) verfügbar halten. Ganz nebenbei verfügen wir natürlich nur über ein eingeschränktes Budget.

    Wir zeigen Ihnen anhand etablierter Praktiken und Patterns (aus dem Fundus von aim42.org) typische Möglichkeiten auf, solche Projekte anzugehen und Stück für Stück die Architektur des Gesamtsystems zu modernisieren. Hierbei unterstützen uns u. A. Bibliotheken wie Hystrix dabei, die Risiken dieser Umstellung zu managen und auch zu visualisieren. Nach dem Vortrag haben Sie einige anwendbare Muster kennengelernt, mit deren Hilfe Sie Ihre eigenen Monolithen wieder zu besser wartbaren Systemen migrieren können.

    Mehr lesen
  • Microservices im Experten-Check, Teil 3: Wie groß sollte ein Microservice sein?

    Link Alexander Heusingfeld, Eberhard Wolff, Stefan Tilkov, Uwe Friedrichsen, Jörg Müller, Alexander Schwartz, Stefan Toth, Oliver Wehrens

    Acht Microservice-Experten, Autoren des Java Magazins und Sprecher auf den Microservice Days der JAX 2016, geben in kurzen Statements Einblicke in ihre Praxiserfahrungen mit Microservices. Teil 3 beschäftigt sich mit der Frage, wovon man sich bei der Aufteilung von Microservices leiten lassen sollte, und wie groß so ein Microservice eigentlich werden sollte.

  • Microservices im Experten-Check, Teil 2: Wann man Microservices nutzen sollte und wann eher nicht

    Link Alexander Heusingfeld, Eberhard Wolff, Stefan Tilkov, Uwe Friedrichsen, Jörg Müller, Alexander Schwartz, Stefan Toth, Oliver Wehrens

    Teil 2 der Diskussion vom acht Microservice-Experten auf jaxenter.de. Sie geben in kurzen Statements Einblicke in ihre Praxiserfahrungen mit Microservices. Sie klären auf, wann man mit Microservices lieber erst gar nicht anfängt und auf welche erste Erfolge sie zurückblicken.

  • Microservices im Experten-Check, Teil 1: Warum eigentlich Microservices?

    Link Alexander Heusingfeld, Eberhard Wolff, Stefan Tilkov, Uwe Friedrichsen, Jörg Müller, Alexander Schwartz, Stefan Toth, Oliver Wehrens

    Was ist eigentlich der Sinn von Microservices, einer Continuous-Delivery-Pipeline und dem ganzen Rest? Acht Microservice-Experten, Autoren des Java Magazins und Sprecher auf den Microservice Days der JAX 2016, bringen in dieser Serie auf den Punkt, warum das Konzept der verteilten Anwendungen so genial ist. Außerdem zeigen sie auf, wo die Knackpunkte liegen und ob das ganze Brimborium um den Kulturwandeln gerechtfertigt ist.

  • Wider den Blindflug: Logging und Metriken in verteilten Anwendungen

    Link Alexander Heusingfeld, Tammo van Lessen

    Ein Softwaresystem kann nur dann erfolgreich betrieben werden, wenn es feinmaschig überwacht wird. In dieser JAX 2015-Session beschäftigten sich unsere Kollegen Alexander Heusingfeld und Tammo van Lessen mit der Evolution von verteilten Anwendungen und deren Monitoring. Sie zeigen, welche Metriken erfasst und welche Informationen geloggt werden sollten, wie man sie zentral aggregiert und auswertet, und welche freien Tools dabei helfen, so einen reibungslosen Betrieb zu sichern.

  • When Microservices Meet Real-World Projects: Lessons Learned

    Vortrag Alexander Heusingfeld JUG Dortmund Spring Event Folien verfügbar

    Als Berater sehen wir oft beide Seiten der Medaille: Auf der einen Seite arbeiten wir mit Leading-Edge-Technologien, die meist gerade erst marktreif sind. Auf der anderen Seite stehen Kunden mit sehr konservativen Betriebsabteilungen, Legacy-Systemen und strikten Reglementierungen zur Datensicherheit.

    In dieser Session möchten wir von den Erfahrungen berichten, die wir im Beratungsalltag sammeln durften. Was bedeutet eigentlich “pets vs. cattle”? Warum soll sich ein Entwickler mit den Business-Use-Cases auseinandersetzen? Warum können IT-Projekte auf Grund der Unternehmensorganisationen scheitern, und was hat eine DevOps-Mentalität mit Perspektivenwechsel zu tun? Wir zeigen Wege, wie wir eine Legacy-Anwendung iterativ modernisiert und in mehrere, leichter wartbare Self-Contained-Systeme aufgeteilt haben. Dabei werden nicht nur die unterschiedlichen Ebenen von Architekturentscheidungen herausgestellt, sondern auch die Auswirkungen auf die Organisationsstruktur und kritische Punkte auf dem Weg verdeutlicht.

    Mehr lesen
  • When Microservices Meet Real-World Projects: Lessons Learned

    Vortrag Alexander Heusingfeld, Tammo van Lessen JavaLand 2016 Folien verfügbar

    Als Berater sehen wir oft beide Seiten der Medaille: Auf der einen Seite arbeiten wir mit Leading-Edge-Technologien, die meist gerade erst marktreif sind. Auf der anderen Seite stehen Kunden mit sehr konservativen Betriebsabteilungen, Legacy-Systemen und strikten Reglementierungen zur Datensicherheit.

    In dieser Session möchten wir von den Erfahrungen berichten, die wir im Beratungsalltag sammeln durften. Was bedeutet eigentlich “pets vs. cattle”? Warum soll sich ein Entwickler mit den Business-Use-Cases auseinandersetzen? Warum können IT-Projekte auf Grund der Unternehmensorganisationen scheitern, und was hat eine DevOps-Mentalität mit Perspektivenwechsel zu tun? Wir zeigen Wege, wie wir eine Legacy-Anwendung iterativ modernisiert und in mehrere, leichter wartbare Self-Contained-Systeme aufgeteilt haben. Dabei werden nicht nur die unterschiedlichen Ebenen von Architekturentscheidungen herausgestellt, sondern auch die Auswirkungen auf die Organisationsstruktur und kritische Punkte auf dem Weg verdeutlicht.

    Mehr lesen
  • Don’t Fly Blind: Logging and Metrics in Microservice Architectures

    Vortrag Alexander Heusingfeld, Tammo van Lessen microXchg 2016 – The Microservices Conference Folien verfügbar

    While many organizations are keen on breaking up their monolithic applications and establishing microservice architectures, only few of them truly appreciate the impact on runtime information like log data and metrics. But without it you are almost blind in production. And without correlating events from different sources it becomes very difficult to make sense of your metrics and to draw accurate conclusions. If you want to break monoliths into a variety of distributed services, standard approaches are no longer sufficient. In this session, we will show the conceptual foundation and best-of-breed tooling for a monitoring solution of a decentralized and distributed application landscape.

    The video recording of this talk can be found at https://www.youtube.com/watch?v=nWgoyLl8wbM

    Mehr lesen
  • Microservices in the Real World

    Link Alexander Heusingfeld, Tammo van Lessen

    InfoQ did an interview with our colleagues Alexander Heusingfeld and Tammo van Lessen about getting people from operations involved in architecture and dealing with “us vs. them” behavior when applying DevOps. They also talked about what the Self-Contained Systems approach is and how it can be used to modernize software systems, similarities and differences between the Self-Contained Systems approach and microservices, improving deployment pipelines and using measurements in deployment, and about their experiences with a “getting out of your comfort zone” program.

  • Monitoring, Logging und Metriken in verteilten Anwendungen

    Vortrag Alexander Heusingfeld, Michael Vitz Microservices Summit

    Microservices bieten für Entwicklung und Business große Vorteile. Oft führen sie allerdings zu einem deutlich komplexeren Betrieb. Dieser Workshop zeigt die Herausforderungen beim Betrieb von verteilten Anwendungen auf. Die Teilnehmer lernen hier Tools wie den ELK-Stack, Grafana und InfluxDB und die Unterschiede zwischen Logdaten und Metriken kennen. Die Tools werden es ihnen ermöglichen, ihre betrieblichen Anforderungen zu formulieren und das richtige Maß an Monitoring für ihre Microservices zu finden. Wir zeigen, welche Komponenten man in einer modernen Logging- und Metrik-Infrastruktur verwenden kann, wie man diese aufsetzt und in bestehende Systeme wie bspw. Nagios integriert. Hierbei wird auch klar, warum und wo der Betrieb maßgeblich die Makro- und Mikro-Architektur eines Systems mitbestimmen sollte.

    Mehr lesen
  • Microservices zur Architektur­modernisierung

    Vortrag Alexander Heusingfeld, Michael Vitz Microservices Summit

    Dieser Workshop adressiert ein klassisches Dilemma der IT: Eine große, monolithische Anwendung, kritisch und wichtig, und innerlich ungeheuer schwer und aufwändig zu warten. Um auf fachliche Änderungen und dynamische Märkte schneller reagieren zu können, müssen wir dieses Altsystem modularisieren und strukturell sowie konzeptionell modernisieren – dabei aber kontinuierlich (hoch) verfügbar halten. Ganz nebenbei verfügen wir natürlich nur über ein eingeschränktes Budget… Wir zeigen Ihnen anhand etablierter Praktiken und Patterns (aus dem Fundus von aim42.org) typische Möglichkeiten auf, solche Projekte anzugehen und Stück für Stück die Architektur des Gesamtsystems zu modernisieren. Hierbei unterstützen uns u.A. Bibliotheken wie Hystrix dabei die Risiken dieser Umstellung zu managen und auch zu visualisieren. Nach dem Workshop haben Sie einige anwendbare Muster kennengelernt, mit deren Hilfe Sie Ihre eigenen Monolithen wieder zu besser wartbaren Systemen migrieren können.

    Mehr lesen
  • When Microservices Meet Real-World Projects

    Vortrag Alexander Heusingfeld GOTO Conference Berlin 2015 Folien verfügbar

    As a consultant, Alexander Heusingfeld has seen both sides of the coin: on the one hand, he gets to know the leading-edge technologies that have just become ready for the market. On the other hand, there are customers with conservative operation teams, legacy systems, and strict data security regulations.

    In this session, he shares some learnings from consulting gigs, talks about what business domain thinking means, and why the DevOps mindset can change the team spirit. He explains some of the approaches he used to iteratively modernize legacy systems into multiple self-contained systems, the different levels of architectural decisions that have to be taken and the impact of this architectural approach on a classic organization structure.

    Mehr lesen
  • Microservices Meet Real-World Projects: Lessons Learned

    Vortrag Alexander Heusingfeld, Tammo van Lessen JavaOne Conference 2015 Folien verfügbar

    As consultants, this session’s speakers regularly see both sides of the coin: on the one hand, they get to know the leading-edge technologies that have just become ready for the market. On the other hand, there are customers with conservative operation teams, legacy systems, and strict data security regulations. In this session, they share some learnings from their consulting gigs, what business domain thinking did to their customers, and why the DevOps mindset changed the team spirit. They explain the different approaches they used to iteratively modernize a big Java legacy system into multiple self-contained systems, the different levels of architectural decisions they made, the impact on a classic organization structure, and the critical points along the way.

    Mehr lesen
  • Don’t Fly Blind: Logging and Metrics in Microservice Architectures

    Vortrag Alexander Heusingfeld, Tammo van Lessen JavaOne Conference 2015 Folien verfügbar

    While many organizations are keen on breaking up their monolithic applications and establishing microservice architectures, only few of them truly appreciate the impact on runtime information like log data and metrics. But without it you are almost blind in production. And without correlating events from different sources it becomes very difficult to make sense of your metrics and to draw accurate conclusions. If you want to break monoliths into a variety of distributed services, standard approaches are no longer sufficient.

    In this session, we will show the conceptual foundation and best-of-breed tooling for a monitoring solution of a decentralized and distributed application landscape.

    Mehr lesen
  • Microservices - Are Your Frameworks Ready?

    Video Alexander Heusingfeld, Martin Eigenbrodt

    In their talk at the MicroXchg conference in February 2015, Alex Heusingfeld and Martin Eigenbrodt discussed some of the challenges creating microservices on JVM stacks with examples using Dropwizard, Spring Cloud and Play2 Scala.

  • Per request debugging with Log4j 2 filters

    Blog-Post Alexander Heusingfeld

    Customers quite regularly call on me to support them when an application is not behaving as expected. On a development machine there are a lot of ways and utilities to analyse the situation. But troubleshooting the erroneous application behaviour in production environments quite often limits your tool belt to a minimum.

    Mehr lesen
  • Wider den Blindflug: Logging und Metriken in verteilten Anwendungen

    Vortrag Alexander Heusingfeld, Tammo van Lessen JAX 2015 Folien verfügbar

    Ein Softwaresystem kann nur dann erfolgreich betrieben werden, wenn es feinmaschig überwacht wird. Mit dem Aufschwung der Microservices-Architekturen reichen die traditionellen Monitoringmittel nicht mehr aus, denn der Erfolg dieses Architekturmodells hängt maßgeblich von den erfassten Kennzahlen ab. Je mehr Informationen man zur Laufzeit erfassen kann, desto genauer kann man den Gesundheitszustand des Gesamtsystems bestimmen. Dafür müssen neue Konzepte für Logging und Metriken umgesetzt werden, die die Aggregation, Korrelation und Visualisierung von Laufzeitinformationen an zentraler Stelle erlauben.

    In dieser Session zeigen wir, welche Metriken erfasst und welche Informationen geloggt werden sollten, wie man sie zentral aggregiert und auswertet, und welche freien Tools dabei helfen, so einen reibungslosen Betrieb zu sichern.

    Mehr lesen
  • Distributed Metrics and Log Aggregation

    Vortrag Alexander Heusingfeld, Tammo van Lessen JavaLand 2015 Folien verfügbar

    Most operation teams will agree, without runtime information like log data and metrics you are literally blind in production. Even if such data is available, without correlating events from different sources it becomes very difficult to make sense of your metrics and to draw accurate conclusions. With the rise of microservice architectures, which aim at breaking monoliths into zoos of distributed services, standard approaches with local logfiles and basic runtime metrics are not sufficient anymore. Instead there is an increasing need for a centralized log and metrics collection that allows for aggregating, correlating and visualizing any kind of runtime events.

    In this session, we will show both, the conceptual foundation and best practices for a monitoring solution of a decentralized and distributed application landscape. Coming from a blind example setup, we will show how logging data and runtime metrics can be captured, collected, evaluated and visualized in order to improve the operational experience and the ability to respond early to problems.

    Mehr lesen
  • Microservices - Are your Frameworks ready?

    Vortrag Alexander Heusingfeld, Martin Eigenbrodt microXchg 2015 - The Microservices Conference Folien verfügbar

    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.

    Mehr lesen
  • Micro Services on the JVM – a practical overview

    Vortrag Alexander Heusingfeld, Martin Eigenbrodt OOP 2015 - Software meets Business Folien verfügbar

    There is a lot of buzz going on about micro services. Though actually not-so-new this service-oriented approach to system architecture promises great advantages compared to its monolithic counter parts. In this session we‘d like to show different implementations of MicroServices on the JVM and their individual benefits. We‘ll look at Dropwizard, Spring Boot + Java8 and Play2 + Scala. The attendees will get an idea of how to get started with Micro Services and how to slice a „monolithic idea“ into vertical services.

    You will:

    1. get an idea of how to get started with Micro Services
    2. get tips on how to slice a “monolithic app” into vertical services
    3. Learn about typical gotchas in systems of systems

    This session is an extension of our JavaOne 2014 talk which used an example application to showcase a typical monolithic architecture. As simple as this scenario is, it holds types of use cases which can be found in a majority of real world applications. It was sliced into different vertical applications each implemented with a different JVM technology.

    With this session businesses and developers will gain a greater overview of the micro service concept and will be able to compare it to their established approaches. By keeping services small and self-contained, the concept of micro services enables companies to improve their architecture e.g. by replacing services/ applications faster.

    Mehr lesen
  • Microservices on the JVM - a practical overview

    Vortrag Alexander Heusingfeld, Martin Eigenbrodt Devoxx 2014 Folien verfügbar

    There is a lot of chatting going on about the new cool kid on the block - microservices. Though the ideas are actually not that new, this service-oriented approach to system architecture promises great advantages compared to its monolithic counter parts. Unfortunately it seems that many developers get lost in the buzzwords due to a lack of concrete practical examples.

    In this session we’d like to show different implementations of microservices on the JVM and their individual benefits. We’ll look at Dropwizard, Spring Boot + Java8 and Play2 + Scala. Doing this the attendees will get an idea of how to get started with microservices, how to slice a “monolithic idea” into vertical services and what the benefits are.

    Mehr lesen

    Concurrency in Enterprise Java

    Vortrag Alexander Heusingfeld Devoxx 2014 Folien verfügbar

    This session will introduce the benefits and gotchas of concurrent programming in Java EE by showing different scenarios we can make use of the new functionality in JSR236. This includes advanced use cases for ContextualProxies, RxJava, ListenableFuture (Guava) and CompletableFuture.

    Mehr lesen
  • Firmenkultur bei innoQ

    Artikel Alexander Heusingfeld

    Bereits kurze Zeit nach meinem Wechsel zu innoQ war mir klar, dass ich über diesen Kulturschock unbedingt etwas schreiben wollte. Die 1-jährige Zugehörigkeit schien nun ein guter Zeitpunkt, um noch einmal Revue passieren zu lassen, warum ich zu innoQ kam und was ich in den ersten 12 Monaten erlebt habe.

    Mehr lesen
  • Micro Services on the JVM - a practical overview

    Vortrag Martin Eigenbrodt, Alexander Heusingfeld JavaOne 2014 Folien verfügbar

    There is a lot of chatting going on about the new cool kid on the block - micro services. Though actually not-so-new this service-oriented approach to system architecture promises great advantages compared to its monolithic counter parts which are often found in real-life businesses. Unfortunately it seems that many developers get lost on the way due to a lack of concrete practical examples.

    In this session we’d like to show different implementations of MicroServices on the JVM and their individual benefits. We’ll look at Dropwizard, Spring Boot + Java8 and Play2 + Scala. Doing this the attendees will get an idea of how to get started with Micro Services, how to slice a “monolithic idea” into vertical services and what the benefits are.

    Link to JavaOne CON4952 talk

    Mehr lesen
  • Software Improvement – Done Right

    Vortrag Gernot Starke, Alexander Heusingfeld European Conference on Software Architecture (ECSA) 2014 Folien verfügbar

    Greenfield development is a rare luxury in the software world. Usually developers and software architects have to enhance, modify or repair existing systems. The emphasis of changes lies on additional features, instead of architectural, structural or conceptual improvement – often resulting from restricted budgets and severe timing constraints.

    This tutorial helps you out of this maintenance dilemma – by showing how to:

    • identify important and valuable improvement opportunities within your system,
    • convince management that architectural evolution is neccessary – and which benefits and risks to expect,
    • find appropriate solution approaches to technical problems and risks,
    • maintain conceptual integrity of your system over its complete lifetime – keeping understandability high and maintenance costs an adequate ranges.

    We introduce aim42 – the (open source) methodical approach to systematic architecture improvement.

    aim42 relies on a few clear domain concepts and works iteratively in three phases (analyze, evaluate, improve) supported by crosscutting activities. For each phase, In the tutorial, you experience many of the proven and established practices and patterns contained in aim42. We explain how to addresses both business and technical stakeholders of your system.

    By participating, you enhance your own methodical toolset by various practices to identify problems and issues, evaluate those in economical terms and find technical and structural remedies for improvement.

    All our content is backed by intensive experience. We cover detailed examples from various domains and projects, and provide practical tipps on how to improve your own systems.

    Mehr lesen
  • Software ändern, aber richtig - mit AIM42

    Vortrag Alexander Heusingfeld JUG Dortmund Sommerfest Folien verfügbar

    Den größten Teil unseres Informatikerlebens verbringen wir mit Anpassungen an bestehenden Systemen - genau dieser Teil kommt in der klassischen Ausbildung aber praktisch nicht vor. In diesem Lightning-Talk sprechen wir über Software-Änderungen, welche Ursachen sie haben, wo es häufig zu Meinungsverschiedenheiten bzgl. Prioritäten zwischen Entwicklung und Fachabteilung kommt und zeigen wie aim42 mit Hilfe von Mustern und methodischen Bausteinen diese Schwierigkeiten überbrücken helfen kann.

    http://www.jugdo.de/2014/08/08/sommer-event-programm/

    Mehr lesen
  • Tschüss JavaEE Thread-Sorgen, hallo JSR236

    Vortrag Alexander Heusingfeld JAX 2014 Folien verfügbar

    Kopfschmerzen wegen Multi-Threading in Java-EE-Applikationen waren gestern. Die “Concurrency Utilities for Java EE” bringen ThreadPool-Management und Monitoring in den Application Server, sodass Entwicklern diese Sorgen genommen werden. Welche Vorteile bringt der JSR 236 eigentlich mit? Wie können die ManagedExecutor Entwicklern und Operatoren helfen, Asynchronität und Parallelverarbeitung zu realisieren, zu steuern und zu überwachen? Was hat Spring 4.0 eigentlich mit dem JSR 236 zu tun? Diese und weitere Fragen sollen in der Session beantwortet werden.

    Mehr lesen

    „It’s not rocket science“, aber ganz nah dran

    Vortrag Alexander Heusingfeld JAX 2014

    Java EE: Kaum ein anderes Framework schafft es dermaßen gut, vorhandene Komplexität hinter einfachen Spezifikationen und APIs zu verstecken. Was in der Theorie der Lehrbücher und in einfachen Beispielen problemlos funktioniert, führt in der Praxis allerdings nicht selten zu nicht brauchbaren und wenig performanten Architekturen - von Skalierung ganz zu schweigen. Wo liegt das Problem? Enterprise-Computing-Projekte haben ihre eigenen Herausforderungen und Gesetze, denen man leider nur selten mit 08/15-Lösungen Herr werden kann. Der Teufel steckt wie immer im (Praxis-)Detail und es gilt aus den Erfahrungen anderer zu lernen, um nicht jeden Fehler selber machen zu müssen. Die anwesenden Java-EE-Experten zeigen in dieser Session klassische Pitfalls und Anti-Pattern aus ihrem Praxisalltag auf, die in der Theorie zwar gute Lösungen zu sein scheinen, in der Praxis aber ins Chaos führen – Alternativen inklusive. Lassen sie sich überraschen und stellen sie sich auf den einen oder anderen Aha-Effekt ein!

    Mehr lesen
  • Multi-Threading in Java-EE-Applikationen

    Vortrag Alexander Heusingfeld JavaLand 2014 Folien verfügbar

    Kopfschmerzen wegen Multi-Threading in Java EE Applikationen waren gestern. Die “Concurrency Utilities for Java EE” bringen ThreadPool Management und Monitoring in den ApplicationServer, so dass Entwicklern diese Sorgen genommen werden. Welche Vorteile bringt der JSR236 eigentlich mit? Wie können die ManagedExecutor Entwicklern und Operatoren helfen Asynchronität und Parallelverarbeitung zu realisieren, steuern und überwachen? Was hat Spring 4.0 eigentlich mit dem JSR236 zu tun? Diese und weitere Fragen sollen in der Session beantwortet werden.

    Mehr lesen
  • Enterprise Application Integration War Stories

    Vortrag Alexander Heusingfeld, Martin Huber OOP 2014 Folien verfügbar

    In den heutigen heterogenen Systemlandschaften stehen Entwickler und Architekten häufig vor komplexen Herausforderungen, wenn es um die Integration von Anwendungen geht. Über die Zeit entstehen so durch wechselnde Anforderungen häufig Moloch-ähnliche Systeme, die eng an die angebundenen Schnittstellen gekoppelt und kaum noch wartbar sind.

    In diesem Talk erklären wir, was “Enterprise Integration Patterns” sind und zeigen Beispiele aus der Praxis, welche durch den Einsatz der Pattern verbessert werden konnten.

    Mehr lesen
  • Enterprise Integration Patterns - Best Practices for Application Integration

    Vortrag Alexander Heusingfeld, Martin Huber W-JAX 2013

    In den heutigen heterogenen Systemlandschaften stehen Entwickler und Architekten häufig vor komplexen Herausforderungen, wenn es um die Integration von Anwendungen geht. Über die Zeit entstehen so häufig molochähnliche Systeme, die eng an die angebundenen Schnittstellen gekoppelt sind. Doch auch, wenn es um individuelle Schnittstellen geht, muss man “das Rad nicht neu erfinden”. Dieser Talk gibt eine Einführung in Enterprise Integration Patterns, die häufige Problemstellungen bei der Integration von Enterprise-Applikationen in heterogene Umgebungen aufzeigen und Lösungskonzepte anbieten. Um die Theorie in die Praxis zu bringen, dient eine Java-basierte Auftragsverwaltung eines Logistikdienstleisters, die verschiedene Schnittstellen unterschiedlicher Geschäftspartner anbindet. Hier werden eigene Implementierungen der Patterns mithilfe der Java-EE–7-APIs wie JMS 2.0 und JAX-RS 2.0 den Ansätzen von Spring Integration und Apache Camel gegenübergestellt und die Vor- und Nachteile der konkreten Lösungen aufgezeigt.

    Mehr lesen
  • Enterprise Integration Patterns with Java EE (CON7969)

    Vortrag Alexander Heusingfeld JavaOne 2013 Folien verfügbar

    In today’s heterogeneous system/application environments, enterprise developers and architects are often faced with complex integration challenges that often result in Moloch-like code. This session introduces common patterns for enterprise application integration (EAI) that can easily be used to integrate Java EE applications into heterogeneous system environments. Learn how to face the challenges of small and medium businesses by leveraging the benefits of Java EE APIs and see different implementations with Apache Camel and Spring Integration.

    An order management application of a logistics service provider that implements multiple interfaces of heterogeneous business partner systems serves as an example.

    Mehr lesen