Publications

Distributed Computing the Google Way
JavaForum Stuttgart und Herbstcampus 2010

Überall im Netz hinterlassen wir Kommentare, laden Fotos und Videos hoch, updaten unseren Status bei Facebook, bloggen, twittern, chatten, usw. Die Systeme generieren und verwalten immer mehr und mehr Daten. Das exponentielle Wachstum dieser Daten war für viele Pionier-Unternehmen wie Google, Yahoo, Amazon und Facebook eine große Herausforderung. Sie müssen Petabytes von Daten analysieren, um herauszufinden, welche Webseiten gut sind, welche Bücher Sie interessieren könnten und welche Werbung für Sie am besten geeignet ist. Dafür waren die existierenden Werkzeuge unzureichend.

Google war das erste Unternehmen, dass sein System - genannt MapReduce - zur Skalierung seiner Datenverarbeitung veröffentlicht hat. Apache Hadoop ist eine Open-Source Implementierung vom MapReduce Algorithmus und stellt heutzutage ein Kernstück der Infrastruktur vieler Unternehmen wie Yahoo, Facebook, LinkedIn oder Twitter dar. Doch die Anforderung, immer größere Datenmengen zu verarbeiten, trifft nun auch immer mehr herkömmliche Unternehmen und verlangt den Entwicklern völlig neue Fähigkeiten ab. Dieser Vortrag zeigt, wie man diesem Problem mit dem Apache Hadoop Framework begegnen kann.




Meet Mike, the SOA Architect - Erfahrungen aus SOA Projekten
JavaForum Stuttgart 2009

Die Automatisierung von unternehmensweiten Prozessen erfordert die immer umfangreichere Integration von unterschiedlichsten Systemen, Diensten und Benutzern. Entsprechend hoch sind die Anforderungen an die technische Umsetzung, welche oft eine große Herausforderung für Software-Architekten und Entwickler darstellt. Enterprise Application Integration (EAI) und Service Oriented Architecture (SOA) stellen den State-of-the-Art bei der Integration von Business Prozessen dar. Die Verbindung dieser Technologien und Business Prozess Management als generischer, automatisierter Ansatz bringen viele neue Denkmuster sowie Vorgehensweisen und Herausforderungen mit sich. Dieser Vortrag berichtet über die Erfahrungen von Mike, einem fiktiven Architekten, der mit der Integration von Prozessen in seinem Unternehmen beauftragt ist. Es wird gezeigt welche Erkenntnisse Mike im Verlauf des Projektes gesammelt hat und daraus verschiedene Patterns und Best Practices für EAI und SOA Projekte abgeleitet.





Strategien zum Umgang mit neuen Service-Versionen in einer SOA
ObjectSPEKTRUM 02/2009

Die Versionierung von Anwendungen und Softwaremodulen war schon immer eine Herausforderung für Softwareentwickler. Mit der Einführung von Services und serviceorientierten Architekturen (SOAs) ist diese Problemstellung noch wichtiger und gleichzeitig herausfordernder geworden, da die Komponenten in einer verteilten Umgebung nicht mehr der Kontrolle eines einzelnen Teams unterliegen. Dieser Artikel beleuchtet die Aufgaben des Versionsmanagements und mögliche Strategien zur Umsetzung. Zum Abschluss wird eine Strategie vorgestellt, die sich in der Praxis bei einem Energieversorger bewährt hat.



Best Practices and Patterns for Business Process Integration
OOP 2009

Die Automatisierung von unternehmensweiten Prozessen erfordert die immer umfangreichere Integration von unterschiedlichsten Systemen, Diensten und Benutzern. Entsprechend hoch sind die Anforderungen an die technische Umsetzung, welche oft eine große Herausforderung für Software-Architekten und Entwickler darstellt. Enterprise Application Integration (EAI) und Service Oriented Architecture (SOA) stellen den State-of-the-Art bei der Integration von Business Prozessen dar. Die Verbindung dieser Technologien und Business Prozess Management als generischer, automatisierter Ansatz bringen viele neue Denkmuster sowie Vorgehensweisen und Herausforderungen mit sich. In diesem Vortrag stellen wir verschiedene Patterns und Best Practices aus konkreten Projekten vor. Dabei bleiben wir nicht bei grauer Theorie, sondern zeigen auch deren konkrete Umsetzung mit Produkten von Marktführern, wie IBM Process Server oder TIBCO BusinessWorks, als auch mit Open Source Implementierungen.


Service-Lifecycle
JavaSPEKTRUM 01/2009
Ziel einer serviceorientierten Architektur ist eine möglichst weitgehende Automatisierung von Geschäftsprozessen. Diese werden durch Dienste, sogenannte Services, abgebildet. Wie jede Software durchläuft auch ein Service einen Lifecycle mit den Phasen: Analyse, Design, Entwicklung, Test und Betrieb. In diesem Artikel wird auf die Besonderheiten des Service-Lifecycles eingegangen.


Implementing Enterprise Integration Patterns with Apache Camel
JavaForum Stuttgart 2008
ausgezeichnet mit: Best Presentation Award 2008

In einer zunehmend vernetzten und automatisierten Welt wird die Integration von IT-Systemen immer bedeutender und stellt oft eine große Herausforderung für Software- Architekten und Entwickler dar. Mit dem Einsatz von Enterprise Integration Patterns, die bewährte Integrationslösungen beschreiben, kann diese Aufgabe wesentlich vereinfacht werden.
Nach einer kurzen Erläuterung einiger wichtiger Enterprise Integration Patterns, wird in diesem Vortrag das Open-Source Framework Apache Camel vorgestellt und gezeigt wie es unter Verwendung von minimalen Java oder XML Code dazu eingesetzt werden kann leistungsfähige Enterprise Integration Patterns zu implementieren um Systeme und Services über unterschiedliche Transport-Protokolle und Datenformate zu integrieren. Weiterhin wird auf die Einsatzmöglichkeiten von Apache Camel zur Dokumentation, Überwachung und Test von Webservices eingegangen.





AndroMDA - Einführung in eine Open Source Model Driven Architecture Lösung
TopSkill 2008

AndroMDA ist ein freiverfügbarer erweiterbarer Generatorbaukasten in Anlehnung an die Spezifikationen zur Model Driven Architecture (MDA) der Object Management Group (OMG). Aus UML-Modellen wird Code für beliebige Zielplattformen erzeugt. Anders als andere MDA-Toolkits bringt AndroMDA fertige Cartridges für aktuelle Entwicklungsplattformen wie Struts, JSF, Spring, Hibernate, EJB und jBPM mit. Weiterhin besteht zusätzlich die Möglichkeit zur Erstellung eigener Cartridges.
Nach einer kurzen Einführung in MDA gibt der Vortrag einen Überblick über AndroMDA und erläutert die Architektur und Grundprinzipien. Die Möglichkeiten des Toolkits werden anhand einer Web-Anwendung für Pizza-Bestellungen erklärt. Anschließend besteht die Möglichkeit zur Diskussion und zum Erfahrungsaustausch aus Projekten.