Sie sehen von Phillip Ghadir aus dem Zeitraum bis in
  • Die Jagd läuft – Digitalisierung im Unternehmen

    Vortrag Phillip Ghadir, Gernot Starke OOP 2017

    Seit einiger Zeit beschäftigen bimodale IT, Two-Speed Architecture und Digitalisierung das IT-Management vieler Unternehmen. Wir möchten diese Begriffe erklären und in den Kontext aktueller disruptiver Innovationen einordnen. Damit zeigen wir sowohl aus technischer wie auch IT-Management-Perspektive auf, wie und warum Themen wie Docker, Continuous-Deployment/Delivery sowie Ambient Computing essenzielle strategische Herausforderungen meistern helfen.

    In diesem Vortrag beschäftigen wir uns mit den geänderten Rahmenbedingungen in der heutigen Zeit, in denen Mitarbeiter, Interessenten und Kunden jederzeit leistungsstarke, mobile, Akku-betriebene Multi-Core-Systeme mit sich führen und trotzdem unter starren Unternehmensprozessen und IT-Dinosaurier-System leiden müssen. Dabei gibt es heute für Software weniger Grenzen als jemals zuvor!

    Während Systemstabilität früher eines der zentralen Qualitätsmerkmale war, werden heute eher Anpassbarkeit, Flexibilität und time-to-market gefordert. Solche Einflussfaktoren steigern die Erwartungshaltung an die IT - und verändern damit deren Spielregeln gewaltig: Disruptive digitale Innovationen werden zur Notwendigkeit von IT-Management und -Entwicklung.

    Auf der Suche nach neuen Geschäftsmodellen darf sich IT daher nicht nur mit dem Aufrechterhalten des Status quo begnügen, sondern muss proaktiv solche Änderungen einleiten und begleiten. Im Vortrag beleuchten wir aktuelle Trends aus der Sicht von IT-Architekten, beispielsweise die bimodale IT, Two-Speed Architecture sowie Digitalisierung. Dazu geben wir praktische Hilfestellung zu deren Einsatz und der Bewältigung möglicher Risiken.

    Zielpublikum: IT-Manager, Software-/Systemarchitekten Voraussetzungen: Projekterfahrung Schwierigkeitsgrad: Fortgeschritten

    Mehr lesen
  • Wie kommt man zu Self-Contained Systems?

    Artikel Phillip Ghadir

    Self-Contained Systems bezeichnet ein Konzept für Softwarebausteine, das klare Integrationsregeln auf der Makro-Ebene definiert: Systeme werden in eigenständige Teilsysteme zerlegt, die zu einem Gesamtsystem integriert werden. Häufig wird vorgeschlagen, Systeme entlang von Domänen in Self-Contained Systems zu zerlegen. In diesem Artikel wird ein alternativer Ansatz für das Schneiden einer Architektur in föderierte Self-Contained Systems vorgestellt.

    Mehr lesen
  • Horden von Zombies

    Artikel Phillip Ghadir

    Kennen Sie das Computer-Spiel „Plants vs. Zombies“? Das Szenario ist einfach: Zombies stürmen auf unser Haus zu. Als Spieler haben wir eigentlich nur eine Chance, der Übermacht zu begegnen: Wir müssen die Verteidigungsmechanismen vorbereiten, die wir im Eifer des Gefechts brauchen werden. Paprikaschoten, Erbsen und Walnüsse werden uns helfen, die Angriffswut der Zombies zu stoppen. In dieser Ausgabe nutze ich die Kulisse des Spiels, um ein paar Eigenschaften von Reactive Extensions vorzustellen.

    Mehr lesen
  • Ordnung durch minimale Regeln

    Artikel Stefan Tilkov, Phillip Ghadir, Oliver Wolf

    Wie viele andere Unternehmen dieser Branche auch ist innoQ in der Boomzeit der Jahrtausendwende entstanden. Mit einigem Frust aus vorangegangenen Tätigkeiten gründeten wir damals mit einigen Gleichgesinnten ein Unternehmen mit dem Anspruch, Dinge anders und natürlich besser zu machen, als wir sie vorher bei unseren Arbeitgebern erleiden mussten. Daraus hat sich mittlerweile ein System entwickelt, das nicht nur die Geschäftsleitung, sondern nahezu alle Mitarbeiter bei innoQ sehr schätzen – und das Erstaunen, dass uns beim Erklären des Modells häufig entgegenschlägt, war Motivation genug, die wesentlichen Aspekte in diesem Artikel näher zu beschreiben. Sicher passen nicht alle unserer Lehren zu jedem Unternehmen, aber vielleicht können sie Ihnen als Inspiration dienen. Für uns hat es bislang sehr gut funktioniert – nicht mehr, aber auch nicht weniger.

    Mehr lesen
  • Cloud Native Architecture - gebaut für die Cloud

    Vortrag Phillip Ghadir The Architecture Gathering 2016

    Heute lassen sich Systeme dank unterschiedlichster Cloud-Dienste softwareseitig anders schneiden als noch vor einigen Jahren. Ein System für die Cloud zu entwickeln, kann die Time-to-Market verkürzen oder auch die Skalierbarkeit und Elastizität verbessern, erfordert aber Infrastruktur-Knowhow. Dieser Vortrag stellt einige Infrastruktur- und Plattform-Services und sich daraus ergebende Architektur-Optionen vor.

    Mehr lesen
  • Cloud Native Architectures an einem Beispiel

    Vortrag Phillip Ghadir Software Architecture Summit 2016

    Wenn wir Systeme für die Cloud bauen, stehen verschiedenste Infrastruktur- und Plattformdienste zur Verfügung. Die Optionen reichen von der einfachen Nutzung virtueller Maschinen bis hin zum Aufbau beliebig komplexer Datenverarbeitungslogik – ganz ohne (eigene) Server. Cloud-Anbieter erlauben uns, Services auf Knopfdruck zu abonnieren. Neue virtuelle Maschinen, Repositories, Datenbanken, Message-Queues und Event-Hooks sind nur wenige Mausklicks oder Cloud-API-Aufrufe entfernt.

    Dieser Workshop stellt verschiedene Architektur-Alternativen und unterschiedliche Cloud-Services an einem konkreten Beispiel vor und verknüpft dies mit den Themen aus den vergangenen Summits: der Kopplung von Self-Contained Systems & Microservices über Web-APIs und der Integration per Reactive Extensions.

    Mehr lesen
  • Java-Web-Frameworks von innen?

    Artikel Michael Vitz, Phillip Ghadir

    Web-Frameworks für Java gibt es nun bereits seit fast 20 Jahren. Diese nehmen dem Anwendungsentwickler eine Menge Arbeit ab und sorgen dafür, dass dieser sich nicht auf Infrastruktur konzentrieren muss, sondern die Anwendungslogik im Vordergrund steht. Doch was genau tut so ein Web-Framework eigentlich? Dieser Artikel zeigt, was heutige Web-Frameworks leisten und wo diese sich dann doch in Nuancen unterscheiden.

    Mehr lesen
  • Video-Interview mit Phillip Ghadir zu Cloud-native Architectures

    Link Phillip Ghadir

    Die Entwickler Akademie interviewte Phillip Ghadir beim Software Architecture Summit im März 2016. Er spricht im Interview unter anderem über Möglichkeiten, die sich durch Infrastrukturdienste der Amazon Web Services bieten.

  • Ein Domänenmodell für das SmartHome

    Artikel Phillip Ghadir, Thomas Eichstädt-Engelen

    Es gibt in der Domäne SmartHome viele unterschiedliche Sichtweisen, proprietäre Produktfamilien, einige offene Standards und verschiedene Konsortien, die versuchen, langfristig tragfähige, standardisierte Kommunikationsstandards zu definieren. Wir skizzieren für das Umfeld des sogenannten Ambient Assisted Living eine mögliche API für die relevanten Anwenderrollen.

    Mehr lesen
  • Gebaut für die Cloud – Cloud-Native Architectures

    Vortrag Phillip Ghadir Software Architecture Summit 2016

    Dieser Vortrag stellt einige Infrastruktur- und Plattform-Services vor und zeigt, welche Art von Self-Services wichtig sind, um Systeme für die Cloud zu entwickeln.

    Beispiele für Services unterschiedlichster Abstraktionsebenen zeigen ein Spektrum relevanter Architektur-Entscheidungen auf.

    Am Beispiel der Amazon-WS wird gezeigt, wie sich moderne Softwarearchitekturen Cloud-technisch umsetzen lassen.

    Mehr lesen
  • ReactiveX/RxJava vs. Zombies

    Vortrag Phillip Ghadir majug – Java User Group Mannheim Januar 2016

    Mit RxJava - dem Reactive Programming-Framework von Netflix - lassen sich Datenflüsse mit Komponenten programmieren, die strukturell unabhängig sind, ohne dabei auf Higher-Order-Functions wie map, reduce oder filter verzichten zu müssen. In diesem Vortrag stellt Phillip Ghadir Reactive Programming mit RxJava vor und zeigt, wie sich die Konzepte asynchrone Eventstreams und Observables verwenden lassen. Anhand der Grundidee des Computer-Spiels Plants vs. Zombies wird die Verwendung von RxJava demonstriert. Zu guter Letzt wird von dem Beispiel abstrahiert und skizziert, wie sich mit ReactiveX reaktionsfreudige Systeme bauen lassen.

    Mehr lesen
  • ReactiveX/RxJava vs. Zombies

    Vortrag Phillip Ghadir rheinjug Düsseldorf - Die Düsseldorfer Java User Group

    Mit RxJava - dem Reactive Programming-Framework von Netflix - lassen sich Datenflüsse mit Komponenten programmieren, die strukturell unabhängig sind, ohne dabei auf Higher-Order-Functions wie map, reduce oder filter verzichten zu müssen.

    In diesem Vortrag stelle ich Reactive Programming mit RxJava vor und zeige, wie sich die Konzepte asynchrone Eventstreams und Observables verwenden lassen.

    Anhand der Grundidee des Computer-Spiels “Plants vs. Zombies” wird die Verwendung von RxJava demonstriert.

    Zu guter Letzt wird von dem Beispiel abstrahiert und skizziert, wie sich mit ReactiveX reaktionsfreudige Systeme bauen lassen.

    Mehr lesen
  • Amazon EC2 Container Service

    Artikel Martin Eigenbrodt, Phillip Ghadir

    Dank des Amazon EC2 Container Service finden Docker-Container nun auch bei den Amazon Web Services (AWS) Unterschlupf. In diesem Artikel stellen wir nach einem kurzen Überblick über die wichtigsten bisher verfügbaren Dienste den neuen Service vor, mit dem Docker-Container in der Cloud gehostet werden können.

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

    Vortrag 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.

    Mehr lesen
  • Gebaut für die Cloud - Cloud-Native Architectures

    Vortrag Phillip Ghadir Software Architecture Summit 2015

    Ein beliebig skalierbares System erfordert tendenziell eine beliebig große Infrastruktur – sowohl software- als auch hardwareseitig. Eine solche Infrastruktur lässt sich nur automatisiert beherrschen. Ihre schiere Größe lässt sich durch die Definition geeigneter – teils sehr einfacher, teils sehr komplexer – Dienste verbergen. Die Amazon WebServices bieten unterschiedlichste Dienste an, mit denen sich heute Systeme softwareseitig anders schneiden lassen als noch vor einigen Jahren. Features, die zuvor selbst entwickelt oder im Betrieb sichergestellt werden mussten, werden heute durch die Amazon Cloud angeboten. Von EC2 Container Services zum Hosten von Applikationen, die aus Docker-Containern bestehen, über die zu Grunde liegenden EC2 sowie neueren Services wie AWS-Lambda - die verfügbare Infrastruktur verschiebt die Aufgaben für das Entwickeln und Betreiben Cloud-nativer Systeme.

    Dieser Workshop zeigt die Möglichkeiten, die sich durch Infrastruktur-Dienste der Amazon WebServices bieten und geht darauf ein, wie ein Software-System strukturiert werden könnte, um AWS sinnvoll zu nutzen.

    Mehr lesen
  • Familie und innoQ

    Blog-Post Phillip Ghadir

    Der Zeit-Artikel „Berufstätige Mütter leiden unter Diskriminierung“ hat mich motiviert, darüber zu bloggen, wie wichtig uns bei innoQ das Vereinbaren von Privatleben, Familie und Arbeit ist.

    innoQ erreicht dies durch inhaltsbezogene Aufgaben, dezentrale Projektorganisation und einer Balance aus Freiräumen, Wertschätzung und Leistungsorientierung.

    Mehr lesen
  • Bessere Web-Apps mit HTML5-APIs

    Artikel Phillip Ghadir, Simon Kölsch

    Der Begriff HTML5 fasst eine bunte Sammlung aus verfügbaren und geplanten APIs zusammen, auf die im Browser von JavaScript aus zugegriffen werden kann. Einige dieser APIs ermöglichen heute, Anwendungen für den Browser zu realisieren, die vor wenigen Jahren noch Plugins erfordert hätten. Die prominentesten Vertreter sind sicherlich Video oder WebRTC. Zum Beispiel ist heute die Public-Key-Verschlüsselung bereits im Web-Client integrierbar oder das Reagieren auf Sensordaten der Betriebs-Hardware des Browsers möglich. Es folgt eine persönliche Auswahl an etablierten APIs und ein Ausblick auf einige noch recht frische.

    Mehr lesen
  • RXJava

    Vortrag Phillip Ghadir Java Forum Stuttgart 2015

    Mit RXJava - dem Reactive Programming-Framework von Netflix - lassen sich Datenflüsse mit Komponenten programmieren, die strukturell unabhängig sind, ohne dabei auf Higher-Order-Functions wie map, reduce oder filter verzichten zu müssen. In diesem Vortrag stelle ich Reactive Programming mit RXJava vor und zeige, wie die Konzepte für veränderliche Werte, Observables in der Kombination mit ein paar Praxistipps dabei helfen können, reaktionsfreudige Systeme zu bauen.

    Mehr lesen
  • Batch-Computing in Java

    Artikel Phillip Ghadir, Frank Hinkel

    Auch heute noch gibt es Bedarf für die wohl älteste Form der elektronischen Datenverarbeitung. Dass Batch immer noch relevant ist, zeigt der junge JSR 352 für Batch-Verarbeitung in Java EE 7. In diesem Beitrag diskutieren wir verschiedene Fragestellungen, die im Zusammenhang mit der Modernisierung bestehender und Umsetzung neuer Batch-Prozesse auftreten, und gehen auf Strategien und Technologieauswahl ein, die bei der Implementierung von Batch in der JVM auftreten können.

    Mehr lesen
  • Apache Cassandra

    Artikel Marc Jansing, Phillip Ghadir

    In dieser Kolumne stellen wir Cassandra vor und zeigen, warum die Datenbank quasi beliebig skaliert und höchst performant ist. Cassandra wirkt für Kenner von relationalen Datenbanken auf den ersten Blick recht vertraut, weil hier auch von Tabellen und Spalten die Rede ist und die Abfragen einfachen SQL-Abfragen ähnlich sehen. Dennoch unterscheidet sich Cassandra konzeptionell von relationalen Datenbank-Management-Systemen (RDBMS).

    Mehr lesen
  • Logging konsolidieren und Performance gewinnen

    Artikel Stefan Bodewig, Phillip Ghadir

    Apache Log4j 2.0 ist eine Neuimplementierung von Log4j zeichnet sich vor allem durch einen höheren Durchsatz – dank asynchronem I/O – aus. Die Neuerungen des Frameworks machen Lust darauf, Log4j2 einzusetzen. Da drängt sich die Frage auf, wie die Vorzüge von Log4j2 in einem System genutzt werden können, wenn Teile noch Log4J 1, commons-logging oder Ähnliches verwenden.

    Mehr lesen
  • Kanonische Architektur-Evolution

    Artikel Phillip Ghadir, Dr.-Ing. Daniel Lübke

    Mit dem Entwurf der Softwarearchitektur wollen wir noch vor der Umsetzung die Tragfähigkeit der Software sicherstellen. Wie gut wir die Trägfähigkeit einschätzen können, hängt neben Erfahrungswerten und Kenntnis der eingesetzten Technologien auch davon ab, wie konsistent wir unsere Konzepte tatsächlich implementieren.

    Wir brauchen also mehr als bloße Wunschvorstellungen über das System; wir benötigen Mechanismen für die konsequente Umsetzung der funktionalen und qualitativen Eigenschaften des Systems.

    Mehr lesen
  • Micro-Services in Java realisieren – Teil 2: Web-Apps in Docker-Umgebungen

    Artikel Phillip Ghadir

    In dem ersten Teil dieser zweiteiligen Reihe haben wir uns mit der Realisierung von Web-Apps mit dem leichtgewichtigen Framework DropWizard beschäftigt. In diesem Teil beschäftigen wir uns mit der offenen Plattform Docker. Damit lassen sich Umgebungen definieren und voneinander isolieren. Wie sich Docker von virtuellen Maschinen unterscheidet und was das für unsere Anwendungen bringt, stellt dieser Artikel vor.

    Mehr lesen
  • Micro-Services in Java realisieren – Teil 1: Leichtgewichtige Web-Apps mit DropWizard

    Artikel Phillip Ghadir

    Dieser Beitrag in zwei Teilen stellt zwei interessante Zutaten für den Bau von Micro-Services vor: Docker.io zum Bereitstellen von definierten Umgebungen für unsere Services und DropWizard zum Realisieren von Web-Anwendungen. In dieser Ausgabe beschäftigen wir uns zuerst einmal mit der Realisierung und einem dafür passenden Framework.

    Mehr lesen
  • Hystrix – Wider den Totalausfall

    Artikel Phillip Ghadir

    Michael T. Nygard hat in seinem Buch „Release It!” sehr anschaulich die Folgen von sich fortpflanzenden Fehlern beschrieben. Seine klare Empfehlung lautete, Isolationsmuster wie zum Beispiel Leistungsschutzschalter – engl. Circuit Breaker – in die Software zu integrieren, um Totalausfälle zu vermeiden. Mit Hystrix hat Netflix ein Framework bereitgestellt, das den Einbau von solchen Schaltern vereinfacht. Dieser Beitrag stellt das Framework vor.

    Mehr lesen
  • Architektur 201x: Neue Konzepte für die Architektur komplexer Systeme

    Vortrag Philipp Schirmacher, Robert Reimann, Phillip Ghadir, Tobias Neef JAX 2014

    Während im Enterprise-Umfeld Systeme häufig immer noch nach denselben Mustern entworfen werden wie vor zehn oder fünfzehn Jahren, haben sich die Dinge in den immer größer werdenden Internetplattformen, -diensten und Anwendungen der bekannten Internetanbieter dramatisch weiterentwickelt. In diesem Vortrag diskutieren wir, wie wir nach Mustern aus diesem Umfeld und mit der Maxime “weniger ist mehr” kleinere Systeme sehr viel effizienter entwickeln und diese dann zu großen Systemlandschaften zusammensetzen können.

    Mehr lesen
  • Hybride Softwarearchitekturen

    Vortrag Phillip Ghadir JAX 2014

    Wer nur Monokultur propagiert, erschwert Architekturentscheidungen und erreicht nicht immer die gesteckten Ziele. Monokultur beeinflusst Wartbarkeit und Integrierbarkeit unterschiedlich. Die technische Umsetzung profitiert von der Kombination orthogonaler Konzepte. Dieser Vortrag zeigt, wie Ansätze à la Reactive Extensions, aktorbasierte Systeme, rein funktionale Programmteile und ressourcenorientiertes API-Design helfen können, die Softwarearchitektur eines Systems zu verbessern und dabei die Fachlichkeit im Blick zu behalten. Unter dem Schlagwort hybride Softwarearchitekturen fasse ich die explizite Verbindung dieser orthogonalen Konzepte zusammen.

    Mehr lesen
  • Domain-Driven Design in Clojure

    Artikel Phillip Ghadir, Philipp Schirmacher

    In diesem Artikel setzen wir die Prinzipien des Domain-Driven Designs mit Clojure um. Wir stellen die Domäne Rating als Beispiel vor und demonstrieren strategisches sowie taktisches DDD. Wir zeigen, wie sich das Domänenmodell in Clojure implementieren lässt.

    Mehr lesen
  • Endlich viel erben?

    Artikel Phillip Ghadir, Oliver Tigges

    Im Fahrwasser der Lambda-Funktionen werden in Java 8 Default-Methoden eingeführt, um Interfaces aus dem JDK abwärtskompatibel um neue Methoden zu erweitern. Hier schließen wir an den Artikel von Christian Robert (Default-Methoden in Java 8, JavaSPEKTRUM 03/2013) an. Wir klären bis zu welchem Grad Mehrfacherbung in Java einzieht und wie wir die Möglichkeiten und das Risiko für bestehende Systeme einschätzen.

    Mehr lesen
  • ROCA: Keine Angst vor HTML und JavaScript

    Artikel Phillip Ghadir

    ROCA ist ein Architekturstil zur Entwicklung anständiger und zukunftsfähiger Web-Frontends. Er umfasst eine Reihe von Empfehlungen sowohl für die Client- als auch für die Serverseite. Der ROCA-Stil erfordert von vielen Java-Entwicklern ein gewisses Umdenken. Grund genug, sich den Stil genauer anzuschauen.

    Mehr lesen
  • Hypermedia as the Engine of Application State – Spring Hateoas

    Artikel Phillip Ghadir

    Das kürzlich veröffentlichte Spring Hateoas vereinfacht das Verlinken von Ressource-Repräsentationen und bietet Mechanismen zur Link-Erzeugung und zum Reverse-Routing. Dieser Artikel stellt vor, wie diese Konzepte mit Spring MVC zusammen arbeiten und die Entwicklung von Webanwendungen erleichtern.

    Mehr lesen
  • Log-Daten effektiv verarbeiten mit Apache Kafka

    Artikel Phillip Ghadir, Arne Landwehr

    Mit Apache Kafka stellen wir ein ungewöhnliches Messaging-System vor. Es besticht durch persistente Speicherung der Nachrichten, hohen Transaktionsdurchsatz und gute Skalierbarkeit. Kafkas Architektur ermöglicht dadurch nicht nur den Einsatz in Online-Szenarien mit zeitnaher Verarbeitung, sondern auch in Offline-Szenarien mit stark zeitverzögerter Verarbeitung von Nachrichten. Dieser Beitrag demonstriert, wie Kafka auch mit großem Log-Aufkommen zurecht kommen kann.

    Mehr lesen
  • Micro-Cloud mit Cloud Foundry

    Artikel Phillip Ghadir, Oliver Wolf

    In dieser Ausgabe stellen wir mit Cloud Foundry einen Plattformdienst vor, mit dem Java-Anwendungen in der Cloud betrieben werden können. Die Plattform stellt Java-Anwendungen eine virtuelle Umgebung mit Ressourcen zur Verfügung. Wir haben Cloud Foundry für diese Kolumne gewählt, weil es die Cloud-Plattform auf den eigenen Rechner holt. Dadurch wird die Cloud- Entwicklung netzunabhängig.

    Mehr lesen
  • Software Architecture Summit

    Vortrag Simon Brown, Neal Ford, Phillip Ghadir, Gernot Starke, Venkat Subramaniam, Stefan Tilkov, Vaughn Vernon Software Architecture Summit

    Der Software Architecture Summit ist das neue Trainingsevent für alle, die in IT-Projekten mit dem Thema Softwarearchitektur in Berührung kommen: Softwarearchitekten selbst, aber auch Entwickler, Qualitätssicherer und Systemanalytiker, die mit Architekten und Entwicklern besser kommunizieren möchten.

    Sie lernen das Handwerkszeug erfolgreicher Architekten kennen: Wie sehen Architekturstrategien für moderne Webanwendungen aus? Wie entwerfen Sie geeignete Schnittstellen? Welche Architekturmuster passen zu Domain-driven Design? Wie führen Sie Architekturarbeit in agile Teams ein? Wie bewerten Sie die Qualität von Architekturen? Wie beherrschen Sie Java Concurrency? Wie profitieren Sie von Continuous Delivery?

    Erfahren Sie im Software Architecture Summit die Antworten auf diese Fragen aus Sicht von sieben der bedeutendsten internationalen Architekturexperten. Sie profitieren dabei von deren einzigartigem Praxiswissen zu Architekturdokumentation, Architekturentwicklung, Prozessen und Organisation. Dieses Trai- ningsevent liefert Ihnen das Know-how, um Ihre geschäftskritischen Projekte erfolgreich zu meistern!

    innoQ ist Unterstützer dieser Veranstaltung.

    Mehr lesen
  • Early-Design Reviews

    Artikel Phillip Ghadir

    Sie erfahren in diesem Whitepaper, wie Kunden der innoQ in unterschiedlichen Projektphasen von der Umsetzungs- und Architektur-Expertise von innoQ profitiert haben. Sie lernen die notwendigen Voraussetzungen für erfolgreiche Review-Projekte kennen.

    Mehr lesen
  • Software Architecture Camp und Softskills für Softwarearchitekten

    Vortrag Phillip Ghadir, Gernot Starke, Jörg Preußig Software Architecture Camp

    Das Software Architeture Camp bietet Ihnen eine fundierte und pragmatische Einführung in Softwarearchitektur mit einem hohem Übungsanteil. Sie lernen in jedem Camp von mindestens zwei der bekanntesten Architektur-Profis, die Ihnen ihr außergewöhnliches Praxiswissen im Team aus oftmals ganz unterschiedlichen Sichtweisen vermitteln - spannende Diskussionen und besonders wertvolle Erfahrungen sind damit garantiert. Sie lernen und üben die vielfältigen Aufgaben von Softwarearchitekten anhand von Fallstudien. Der Fokus des Camps liegt auf methodischem und systematischem Vorgehen bei Architekturentwurf und -bewertung.

    Im Anschluss des Workshops haben Sie die Möglichkeit, sich durch eine unabhängige Prüfungsinstitution zum „Certified Professional for Software Architecture“ gemäß dem standardisierten Curriculum des „International Software Architecture Qualification Board“ (iSAQB, isaqb.org) prüfen und zertifizieren zu lassen.

    Veranstalter: Entwickler Akademie

    Trainingszeiten: täglich 9.00 - 17.00 Uhr.

    Der Fokus liegt konsequent auf dem Praxiseinsatz aller Inhalte. Auf Wunsch mit anerkannter Zertifizierung zum „Certified Professional for Software Architecture“ durch das International Software Architecture Qualification Board (iSAQB)

    Come Together mit Freibier und Snacks am ersten Abend - für bestes Networking und Erfahrungsaustausch. Genießen Sie die All-inclusive-Verpflegung mit Erfrischungen und Snacks in den Pausen sowie ein leckeres Mittagsbuffet.

    Gedruckte Seminarmaterialien. Sie erhalten zusätzlich zur optionalen Zertifizierungsurkunde der iSAQB das offizielle Entwickler-Akademie-Zertifikat, das Ihnen Ihre erfolgreiche Teilnahme bescheinigt. Inkl. hochwertige Laptoptasche, Gratismagazine, kostenloser Internetzugang… u.v.m.

    Mehr lesen
  • Alltag in der Softwarearchitektur

    Vortrag Phillip Ghadir JAX 2013

    Als Architekten müssen wir dafür sorgen, dass die zu erstellende Software nicht nur dem Projektleiter die Abnahme beschert, sondern dem Auftraggeber und den Anwendern auch nachhaltig nützt. Dieser Vortrag zeigt, wie wir uns als Architekten auf unseren konstruktiven Beitrag konzentrieren und mit geeigneten Architekturkonzepten in den Grenzen unserer Projekte Freiraum schaffen können.

    Mehr lesen
  • Architecture War Stories

    Vortrag Phillip Ghadir, Gernot Starke JAX 2013

    Ein bisschen mussten wir Details verändern, um Unschuldige zu schützen und uns nicht völlig unbeliebt zu machen, aber in dieser Session plaudern wir aus dem Nähkästchen und berichten von einigen der schlimmsten Architekturverbrechen, die uns in unserer Karriere begegnet sind. Kurzweilige Unterhaltung ist garantiert, inhaltliche Erkenntnisse wahrscheinlich.

    Mehr lesen
  • Software Architecture Camp

    Vortrag Phillip Ghadir, Gernot Starke Software Architecture Camp

    Das Software Architeture Camp bietet Ihnen eine fundierte und pragmatische Einführung in Softwarearchitektur mit einem hohem Übungsanteil. Sie lernen in jedem Camp von mindestens zwei der bekanntesten Architektur-Profis, die Ihnen ihr außergewöhnliches Praxiswissen im Team aus oftmals ganz unterschiedlichen Sichtweisen vermitteln - spannende Diskussionen und besonders wertvolle Erfahrungen sind damit garantiert. Sie lernen und üben die vielfältigen Aufgaben von Softwarearchitekten anhand von Fallstudien. Der Fokus des Camps liegt auf methodischem und systematischem Vorgehen bei Architekturentwurf und -bewertung.

    Im Anschluss des Workshops haben Sie die Möglichkeit, sich durch eine unabhängige Prüfungsinstitution zum „Certified Professional for Software Architecture“ gemäß dem standardisierten Curriculum des „International Software Architecture Qualification Board“ (iSAQB, isaqb.org) prüfen und zertifizieren zu lassen.

    Veranstalter: Entwickler Akademie

    Trainingszeiten: täglich 9.00 - 17.00 Uhr.

    Der Fokus liegt konsequent auf dem Praxiseinsatz aller Inhalte. Auf Wunsch mit anerkannter Zertifizierung zum „Certified Professional for Software Architecture“ durch das International Software Architecture Qualification Board (iSAQB)

    Teilnehmerbegrenzung auf 24 Personen.

    Come Together mit Freibier und Snacks am ersten Abend - für bestes Networking und Erfahrungsaustausch. Genießen Sie die All-inclusive-Verpflegung mit Erfrischungen und Snacks in den Pausen sowie ein leckeres Mittagsbuffet.

    Gedruckte Seminarmaterialien. Sie erhalten zusätzlich zur optionalen Zertifizierungsurkunde der iSAQB das offizielle Entwickler-Akademie-Zertifikat, das Ihnen Ihre erfolgreiche Teilnahme bescheinigt. Inkl. hochwertige Laptoptasche, Gratismagazine, kostenloser Internetzugang… u.v.m.

    Mehr lesen
  • Architekturarbeit in der Praxis

    Vortrag Stefan Tilkov, Phillip Ghadir OOP 2013

    Als Architekten müssen wir dafür sorgen, dass die zu erstellende Software nicht nur dem Projektleiter die Abnahme beschert sondern dem Auftraggeber und den Anwendern auch nachhaltig nützt. Gerade wenn sich verschiedene Projektbeteiligte aktiv ins Projekt einbringen wollen, entstehen oft konkurrierende Ideen. In diesem Tutorial stellen wir Erfolgsrezepte vor, mit denen wir als Architekten uns auf unseren konstruktiven Beitrag konzentrieren können.

    Sie lernen:

    • Architekturarbeit nicht nur theoretisch, sondern auch in der Praxis verstehen

    • Mit Konflikten umgehen

    • Kompromisse zwischen taktischen und strategischen Zielen finden

    Mehr lesen
  • Java – Funktional ohne Zauberei

    Artikel Phillip Ghadir

    In dieser Ausgabe stelle ich die verschiedenen Möglichkeiten vor, mit der quelloffenen Bibliothek Totally Lazy in Java funktional zu programmieren. Mit Hilfe bekannter Higher-Oder-Functions erlaubt sie, Collections elegant sequenziell oder auch nebenläufig zu verarbeiten. Dabei stellt Totally Lazy sicher, dass die Verarbeitung der Sequenzen lazy erfolgt. Wie Totally Lazy hilft, Teile unseres Quellcodes wartungsfreundlicher zu gestalten, ist Gegenstand dieses Artikels.

    Mehr lesen
  • Softwarearchitektur wird von allen geprägt - The Battle of Ideas

    Vortrag Phillip Ghadir OBJEKTspektrum Information Days 2012 - 2. iSAQB Architekturtage

    Ob mit umfangreichen Entscheidungsbefugnissen ausgestattet oder dazu verdammt, sich jede Entscheidung von einem Gremium absegnen zu lassen: Als Architekten müssen wir dafür sorgen, dass die zu erstellende Software nicht nur dem Projektleiter die Abnahme beschert sondern dem Auftraggeber und den Anwendern auch nachhaltig nützt. Die Herausforderung entsteht dadurch, dass wir vielen Interessenvertretern und Projektbeteiligten gegenüber nicht weisungsbefugt sind. Gerade wenn sich verschiedene Projektbeteiligte aktiv ins Projekt einbringen wollen, entstehen oft konkurrierende Ideen. Dieser Vortrag stellt Erfolgsrezepte vor, mit denen wir uns als Architekten auf unseren konstruktiven Beitrag konzentrieren können. Die vorgestellten konkreten Maßnahmen sind sowohl in klassischen als auch in agilen Projektorganisationen anwendbar und helfen, den langfristig-orientierten Architekturvorgaben und -konzepten auch in den Grenzen unserer Projekte Freiraum zu verschaffen. Die Trennung von Zielen und Plänen, von Beschlüssen und Verlauf in der Kommunikation befähigt uns, sogar ohne formale Weisungsbefugnis Entwurfsentscheidungen herbeizuführen, sodass wir die Architektur auf die geplante Nutzung der Software ausrichten können. Der Vortrag liefert dazu über die Jahre verfeinerte Erfolgsrezepte und stellt vor, wie diese durch eine schlüssige Kombination verschiedener Werkzeuge unterstützt werden können.

    Mehr lesen
  • Softwarearchitektur wird von allen geprägt - The Battle of Ideas

    Vortrag Phillip Ghadir OBJEKTspektrum Information Days 2012 - 2. iSAQB Architekturtage

    Ob mit umfangreichen Entscheidungsbefugnissen ausgestattet oder dazu verdammt, sich jede Entscheidung von einem Gremium absegnen zu lassen: Als Architekten müssen wir dafür sorgen, dass die zu erstellende Software nicht nur dem Projektleiter die Abnahme beschert sondern dem Auftraggeber und den Anwendern auch nachhaltig nützt. Die Herausforderung entsteht dadurch, dass wir vielen Interessenvertretern und Projektbeteiligten gegenüber nicht weisungsbefugt sind. Gerade wenn sich verschiedene Projektbeteiligte aktiv ins Projekt einbringen wollen, entstehen oft konkurrierende Ideen. Dieser Vortrag stellt Erfolgsrezepte vor, mit denen wir uns als Architekten auf unseren konstruktiven Beitrag konzentrieren können. Die vorgestellten konkreten Maßnahmen sind sowohl in klassischen als auch in agilen Projektorganisationen anwendbar und helfen, den langfristig-orientierten Architekturvorgaben und -konzepten auch in den Grenzen unserer Projekte Freiraum zu verschaffen. Die Trennung von Zielen und Plänen, von Beschlüssen und Verlauf in der Kommunikation befähigt uns, sogar ohne formale Weisungsbefugnis Entwurfsentscheidungen herbeizuführen, sodass wir die Architektur auf die geplante Nutzung der Software ausrichten können. Der Vortrag liefert dazu über die Jahre verfeinerte Erfolgsrezepte und stellt vor, wie diese durch eine schlüssige Kombination verschiedener Werkzeuge unterstützt werden können.

    Mehr lesen
  • Softwarearchitektur wird von allen geprägt - The Battle of Ideas

    Vortrag Phillip Ghadir OBJEKTspektrum Information Days 2012 - 2. iSAQB Architekturtage

    Ob mit umfangreichen Entscheidungsbefugnissen ausgestattet oder dazu verdammt, sich jede Entscheidung von einem Gremium absegnen zu lassen: Als Architekten müssen wir dafür sorgen, dass die zu erstellende Software nicht nur dem Projektleiter die Abnahme beschert sondern dem Auftraggeber und den Anwendern auch nachhaltig nützt. Die Herausforderung entsteht dadurch, dass wir vielen Interessenvertretern und Projektbeteiligten gegenüber nicht weisungsbefugt sind. Gerade wenn sich verschiedene Projektbeteiligte aktiv ins Projekt einbringen wollen, entstehen oft konkurrierende Ideen. Dieser Vortrag stellt Erfolgsrezepte vor, mit denen wir uns als Architekten auf unseren konstruktiven Beitrag konzentrieren können. Die vorgestellten konkreten Maßnahmen sind sowohl in klassischen als auch in agilen Projektorganisationen anwendbar und helfen, den langfristig-orientierten Architekturvorgaben und -konzepten auch in den Grenzen unserer Projekte Freiraum zu verschaffen. Die Trennung von Zielen und Plänen, von Beschlüssen und Verlauf in der Kommunikation befähigt uns, sogar ohne formale Weisungsbefugnis Entwurfsentscheidungen herbeizuführen, sodass wir die Architektur auf die geplante Nutzung der Software ausrichten können. Der Vortrag liefert dazu über die Jahre verfeinerte Erfolgsrezepte und stellt vor, wie diese durch eine schlüssige Kombination verschiedener Werkzeuge unterstützt werden können.

    Mehr lesen
  • Power Workshop: RESTful HTTP in der Praxis

    Vortrag Stefan Tilkov, Phillip Ghadir W-JAX 2012

    In diesem Workshop lernen Sie die unter dem Begriff “REST” (REpresentational State Transfer) beschriebenen Prinzipien kennen und erfahren, wie auch fortgeschrittene Problemstellungen auf Basis der Architektur des Web gelöst werden können. Dabei wird vor allem auf die Architekturaspekte Wert gelegt und es werden sowohl grundlegende als auch weiterführende Aspekte behandelt. REST - Historie und Grundprinzipien REST vs. Web Services Patterns und Antipatterns Java-Frameworks für Clients und Server Einsatz von HTTP Caching Fortgeschrittene Use Cases: zuverlässige Zustellung, Sicherheit, Integrationsaspekte

    Mehr lesen
  • Eine Lanze für XML brechen

    Artikel Phillip Ghadir

    Heute – zehn Jahre nach der ersten Vorstellung von JAXB im JavaSPEKTRUM – möchte ich noch einmal eine Lanze für XML brechen. Auch wenn JSON, der sympathische Cousin von XML, immer mehr Freunde gewinnt, bietet XML immer noch einiges, wenn auch selten genutztes Potenzial. In dieser Kolumne möchte ich ein paar Aspekte von XML noch mal in Erinnerung rufen.

    Mehr lesen
  • Java-Programme mit Clojure würzen

    Artikel Phillip Ghadir

    Für jeden, der einen Lisp-Dialekt auf der JVM verwenden will, ist Clojure eine naheliegende Wahl. Es verbindet die Ausdruckskraft von Lisp mit der Vielzahl von bestehenden Java-Bibliotheken. Was zur Integration von Clojure mit Java gehört und wie sich die Mächtigkeit von Clojure auswirkt, wollen wir am Beispiel der Clojure-Bibliothek Incanter betrachten.

    Mehr lesen
  • Der Architektur-Praxis-Workshop Teil 1 und 2

    Vortrag Phillip Ghadir JAX on Tour 2012

    Gemeinsam mit den Teilnehmern wird ein einfaches fachliches System entwickelt. Dabei konkretisieren wir gemeinsam einige Anwendungsfälle, um dann kooperativ eine auf die Aufgabenstellung passende Softwarearchitektur zu entwerfen. Das System wird in jedem Fall über verschiedene Schnittstellen und unterschiedliche fachliche Prozesse verfügen, sodass es einige Herausforderungen gibt. Wir starten dabei mit der typischen Pre-Sales-Phase, in der nur unklare, sehr grobe Anforderungen vorliegen. Unser Beispielsystem ist mehr als nur „Hello World“, es erfordert eine Integration in eine heterogene Technologielandschaft. Das Architekturboard, das vor allem mit Teilnehmern der Session besetzt ist, steht vor spannenden Herausforderungen.

    Mehr lesen
  • Software besser entwerfen

    Vortrag Phillip Ghadir JAX on Tour 2012

    Inkrementeller Softwareentwurf fi ndet auf verschiedenen Ebenen statt. Die Auswahl von Technologie, Architekturmustern, Konstruktionsprinzipien, Regeln für den Komponentenschnitt erfolgen einerseits auf Basis der funktionalen und nichtfunktionalen Anforderungen, andererseits erkennt ein Großteil der Stakeholder nicht den Bezug zum gewünschten Produkt. Diese Session stellt ein Vorgehen vor, mit dem wir als Architekten sicherstellen können, dass wir die Softwareentwicklung passend anleiten können. Sie erhalten Einblick in Ansätze, die Sessions in vielen Projekten erfolgreich waren. Anhand ausgewählter „eigener“ Fehlleistungen werden die Erfolgsrezepte verdeutlicht. Sie erhalten als erfahrener Softwarearchitekt ein kohärentes Vorgehen zur Entwicklung und Kommunikation Ihrer Überlegungen zur Softwarearchitektur. Als Softwarearchitektur-Interessierter werden Sie einen Einstieg erhalten, der Sie gemeinsam mit der Session für die Entwurfsarbeit des Softwarearchitekten mit einem erprobten Vorgehen ausstattet.

    Mehr lesen

    Die fachliche Arbeit des Softwarearchitekten

    Vortrag Phillip Ghadir JAX on Tour 2012

    Wenn wir Architekten eine Vorstellung davon entwickelt haben, nach welchen Kriterien wir das Produkt strukturieren wollen, folgt die inhaltliche Arbeit, die wesentlichen Strukturen des Systems zu entwerfen. In dieser Session werden verschiedene Entwurfsparadigmen anhand eines fachlichen Beispiels vorgestellt. Sie erhalten in 90 Minuten einen Einblick in die Arbeit des Architekten und in seine typischen Fragestellungen: Welche Details sind die Wesentlichen? Welche können wir vernachlässigen? Wie geschieht das Bootstrapping? Wie können die Entwickler fachliche Variationen realisieren? Wie wollen wir zukünftige Anforderungsänderungen kanalisieren? - Wie stellen wir die Nachvollziehbarkeit sicher? In dieser Session werden verschiedene Alternativen gegenübergestellt. Anstatt die vermeintliche Silberkugel zu präsentieren, sorgen wir lieber dafür, dass unsere Werkzeugkiste ordentlich bestückt ist.

    Mehr lesen
  • Neo4j – Eine graph-basierte transaktionale Datenbank

    Artikel Phillip Ghadir

    Neo4j ist eine quelloffene NoSQL-Datenbank, die Daten in Graphen organisiert. Sie ermöglicht die effiziente Verarbeitung unterschiedlichster Anwendungsfälle, die zum Beispiel in relationalen oder NoSQL-Datenbanken mit anderen Datenmodellen eher aufwendig sind.

    Mehr lesen
  • Webanwendungen mit dem Play!-Framework

    Artikel Phillip Ghadir, Philipp Haußleiter

    Das Play!-Framework ist ein recht junges, vollständiges MVC-Framework, das den Charme von Ruby on Rails hat. Aber anstatt unreflektiert jede Entwurfsentscheidung von Rails ins Play!-Framework zu übernehmen - wie das manch andere Rails-Klone gemacht haben -, haben die Entwickler darauf geachtet, es so zu konstruieren, dass es sich gut in das Ökosystem eines typischen Java-Entwicklers einfügt.

    Mehr lesen
  • OpenShift Express

    Artikel Phillip Ghadir

    Oracle hat bereits zu Zeiten des Grid-Computing-Hypes verkündet, dass die bestehenden Java EE/J2EE-Standards völlig ausreichen, um Systeme für das Grid zu entwickeln. Diese Idee gewinnt im Cloud Computing bei verschiedenen „Platform as a Service (PaaS)“-Anbietern an Bedeutung, zumal der vom JCP akzeptierte JSR 342 verschiedene Features für Java EE 7 vorschlägt, die effizientere PaaS ermöglichen. Einen der Anbieter habe ich herausgepickt und mit ihm erste Geh-Versuche gemacht.

    Mehr lesen
  • Softwarearchitektur im Großen

    Vortrag Phillip Ghadir, Stefan Tilkov jax 2012

    Architekten sind es gewohnt, eine einheitliche technologische Basis für das Gesamtsystem vorauszusetzen, doch spätestens nach den ersten Versionen werden große Systeme oft zu schwerfälligen Monolithen und die anfangs positive Homogenität zum Nachteil. In diesem Vortrag betrachten wir Konzepte zur Zerlegung in einzelnen Systeme und damit verbundene architektonische und organisatorische Aspekte.

    Mehr lesen
  • arc42 - Von der Methode in die Praxis

    Vortrag Phillip Ghadir Enterprise Architektur Management Forum 2012

    arc42 – Der Weg des dynamischen Duos Nutzen im Unternehmen für IT-Portfolio-Management und Entwicklungsprojekte Voraussetzungen für die erfolgreiche Adaption

    Mehr lesen
  • „Software-Architekturen im Großen“

    Vortrag Phillip Ghadir, Stefan Tilkov 16. OBJEKTspektrum Information Days - iSAQB Architekturtag

    Architekturmuster für Individualsoftware finden sich reichlich. Ob im Java/Java EE- oder im .NET-Umfeld: Architekten sind es gewohnt, eine einheitliche technologische Basis für das Gesamtsystem vorauszusetzen. Spätestens nach den ersten Versionen gilt für große Systeme jedoch häufig, dass sie zu schwerfälligen Monolithen werden, und die anfangs positive Homogenität wird zum Nachteil. Eine Lösung dafür liegt in der Zerlegung in autonome Teile, in der Transformation in ein System von Systemen. In diesem Vortrag betrachten wir sowohl architektonische und organisatorische Aspekte dieses Ansatzes und beschäftigen uns mit Herausforderungen wie UI-Integration, Authentifizierung und Daten/Funktionsredundanz.

    Mehr lesen
  • „Software-Architekturen im Großen“

    Vortrag Phillip Ghadir, Stefan Tilkov 16. OBJEKTspektrum Information Days - iSAQB Architekturtag

    Architekturmuster für Individualsoftware finden sich reichlich. Ob im Java/Java EE- oder im .NET-Umfeld: Architekten sind es gewohnt, eine einheitliche technologische Basis für das Gesamtsystem vorauszusetzen. Spätestens nach den ersten Versionen gilt für große Systeme jedoch häufig, dass sie zu schwerfälligen Monolithen werden, und die anfangs positive Homogenität wird zum Nachteil. Eine Lösung dafür liegt in der Zerlegung in autonome Teile, in der Transformation in ein System von Systemen. In diesem Vortrag betrachten wir sowohl architektonische und organisatorische Aspekte dieses Ansatzes und beschäftigen uns mit Herausforderungen wie UI-Integration, Authentifizierung und Daten/Funktionsredundanz.

    Mehr lesen
  • „Software-Architekturen im Großen“

    Vortrag Phillip Ghadir, Stefan Tilkov 16. OBJEKTspektrum Information Days - iSAQB Architekturtag

    Architekturmuster für Individualsoftware finden sich reichlich. Ob im Java/Java EE- oder im .NET-Umfeld: Architekten sind es gewohnt, eine einheitliche technologische Basis für das Gesamtsystem vorauszusetzen. Spätestens nach den ersten Versionen gilt für große Systeme jedoch häufig, dass sie zu schwerfälligen Monolithen werden, und die anfangs positive Homogenität wird zum Nachteil. Eine Lösung dafür liegt in der Zerlegung in autonome Teile, in der Transformation in ein System von Systemen. In diesem Vortrag betrachten wir sowohl architektonische und organisatorische Aspekte dieses Ansatzes und beschäftigen uns mit Herausforderungen wie UI-Integration, Authentifizierung und Daten/Funktionsredundanz.

    Mehr lesen
  • Softwarearchitektur im Großen

    Artikel Stefan Tilkov, Phillip Ghadir OBJEKTspektrum Online Themenspecial Architekturen - 11/2011

    Architekturmuster für Individualsoftware finden sich reichlich. Ob im Java/Java EE- oder im .NET-Umfeld: Architekten sind es gewohnt, eine einheitliche technologische Basis für das Gesamtsystem vorauszusetzen. Spätestens nach den ersten Versionen gilt für große Systeme jedoch häufig, dass sie zu schwerfälligen Monolithen werden, und die anfangs positive Homogenität wird zum Nachteil. Es ist daher häufig ein gute Idee, die Entwicklung eines Systems damit zu starten, dass man versucht, es in einzelne, voneinander weitgehend unabhängige Teilsysteme zu zerlegen – also eine Transformation in ein System von Systemen vornimmt. Daraus ergibt sich eine Reihe von Herausforderungen, denn nur einige Architektur- und Entwurfsmuster sind auf diese Ebene übertragbar und darüber hinaus werden neue Ansätze erforderlich – in technologischer, aber auch in organisatorischer Sicht.

  • Demut für Softwarearchitekten

    Vortrag Phillip Ghadir SEACON 2011

    Wollen wir – als Architekten – das Konfigurationsmanagement dem Zufall überlassen? Wollen wir die Abhängigkeit zu Produkten, Technologien, Laufzeitumgebungen oder entfernten Systemen zufällig wachsen lassen? Um ein System wie aus einem Guss wirken zu lassen, müssen alle Aspekte des Designs ineinandergreifen. Der Vortrag zeigt, mit welchen Abstraktionen Software mit vielen Beteiligten effektiv konstruiert werden kann.

    Zielpublikum: Softwarearchitekten, Software-Designer, Technische Projektleiter

    Mehr lesen
  • Praktische Service-Evolution

    Artikel Phillip Ghadir, Dr.-Ing. Daniel Lübke JavaSPEKTRUM - Der Praktiker - 6/2011

    Bei der Serviceorientierung befreien wir uns von dem Ballast, erforderliche Funktionalität selbst bereitzustellen. Wir verwenden stattdessen lieber bestehende Dienste. Als Konsument fordern wir von benötigten Services sowohl funktionale Zusicherungen als auch die Einhaltung gewünschter Qualitätsmerkmale ein. Im Allgemeinen ist kein spezielles Setup notwendig: Der Anbieter registriert den Service. Der Konsument findet den Service über die Registratur. – Und ab geht’s. Der Artikel zeigt, worauf es ankommt, wenn man mit der Serviceorientierung aus technischer Perspektive auch mittel- bis langfristig erfolgreich sein will.

  • Vortrag „Demut für Softwarearchitekten“ auf der JAX 2011

    Vortrag Phillip Ghadir JAX 2011

    Der Abt von Shaolin fegt den Hof, um sich in Bescheidenheit zu üben.

    Aber was üben wir als Softwarearchitekten?

    Ein Softwarearchitekt der sich nicht mit der Softwareentwicklung die Finger schmutzig machen möchte, wird seiner primären Aufgabe, eine laufende Software abzuliefern, vermutlich nicht gerecht. Auch wenn er in einem Projekt nicht selbst programmiert, sollte er sich dennoch daran erinnern, wie man das macht. Sonst erliegt er vieleicht der Gefahr, die Entwicklung weg zu abstrahieren oder gar gering zu schätzen.

    Man kann sich natürlich nicht um jedes Detail kümmern - vor allem nicht in einem Projekt mit vielen Beteiligten. Aber wollen wir - als Architekten - das Konfigurationsmanagement dem Zufall überlassen? Wollen wir die Abhängigkeit zu Produkten, Technologien, Laufzeitumgebungen oder entfernten Systemen zufällig wachsen lassen? Genügt es, unseren “Entwicklern” die Namensgebung zu überlassen?

    Um ein System wie aus einem Guss wirken zu lassen, müssen alle Aspekte des Designs ineinander greifen. Auch die - tatsächlich implementierte - Softwarearchitektur. Der Vortrag zeigt, mit welchen Abstraktionen Software mit vielen Beteiligten effektiv konstruiert werden kann.

    Mehr lesen
  • Abgekapselt: Domänenmodelle und Interaktion

    Artikel Phillip Ghadir JavaSPEKTRUM - Der Praktiker - 5/2011

    Mit Domänenmodellen strukturieren wir fachliche Zusammenhänge: Auf Basis eines fachlichen Kerns werden applikationsspezifische Teile realisiert, die wir dann mit Benutzerschnittstellen versehen. Während der fachliche Kern die Datenkonsistenz sicherstellt, ermöglichen die Benutzerschnittstellen dem Anwender mit dem Kern zu interagieren.

  • Herr Postel und die komma-separierten Werte

    Artikel Phillip Ghadir JavaSPEKTRUM - Der Praktiker - 4/2011

    Wie sieht wartbarer und erweiterbarer Quelltext eigentlich aus? Wir nähern uns der Frage mit einem einfachen Experiment und kommen zu einem interessanten Ergebnis. Sie werden für einen überschaubaren Kontext – wie das Parsen einer CSV-Datei – sehen, was zu einer vermeintlich einfachen Lösung gehört. Mehr dazu gibt es auch auf GitHub.

  • Dreiteiliger Clojure-Artikel, Teil 3: Auf die Finger geschaut

    Artikel Phillip Ghadir Javamagazin, 2.2011

    Wenn man als Java-Entwickler nur lange genug in Ruby programmiert, sammeln sich automatisch so viele runde Klammern an, dass man sich fragen muss, wie man die wieder los wird. Eine geeignete Möglichkeit ist, eine Weile lang in einer Lisp-ähnlichen Programmiersprache wie Clojure zu programmieren. In diesem Artikel möchte ich ein paar Lösungsansätze für gängige Fragestellungen im Programmieralltag präsentieren. Vielleicht bringt der Artikel den einen oder anderen Lisp-Guru zum Weinen oder Lächeln. Immerhin entspringt er der Tastatur eines C++-/Java-/Ruby-Fuzzis.

  • Vom Sinn und Unsinn einer Zertifizierung für Softwarearchitekten – CPSA-F: Ein gemeinsamer Nenner für Softwarearchitekten

    Artikel Phillip Ghadir Objektspektrum, Ausgabe 11/2010

    Da Softwarearchitekt keine geschützte Berufsbezeichnung ist, können in einem Projektkontext erworbene Fähigkeiten oder Erfahrungen vom nächsten Arbeit- oder Auftraggeber schlimmstenfalls als ungenügend betrachtet werden. Solche Überraschungen wünscht sich weder der Softwarearchitekt noch der Arbeitgeber. Ein gemeinsames Verständnis würde helfen, dieses Risiko zu vermeiden. Um überprüfen zu können, ob jemand den Anforderungen an das Berufsbild Softwarearchitekt gerecht wird, gibt es verschiedene Zertifikate, die dies sicherstellen sollen. Dieser Artikel skizziert den Nutzen einer Zertifizierung aus der Perspektive eines Softwarearchitekten sowie aus der Perspektive eines Auftraggebers. Darüber hinaus beschreiben wir am Beispiel der Zertifizierung zum CPSA (Certified Professional for Software Architecture), welche fachlichen, organisatorischen und sozialen Kenntnisse von einem Softwarearchitekten gefordert werden und welche Aussagen man aus einem solchen Zertifikat ableiten kann bzw. welche nicht.

  • REST-based Integration Architecture for a Financial Business Service

    Vortrag Phillip Ghadir QCon London 2009

    When we started out building a large-scale financial application, we followed all the then-current buzzwords: SOAP, WSDL, WS-*. Many of the benefits we expected failed to arrive. We finally ended up developing new integration scenarios using an approach based on REST, Atom, and AtomPub, and have since seen a significant improvement in re-use and modularity. I will present the evolution of our customer’s rating service, initially available via web services up to the soft migration towards a REST-based approach. See which design decisions were made and how they turned out since its release in early 2007. This presentation will end with an explanation of pitfalls and shortcomings and the workarounds we chose.

    Mehr lesen
  • Bundle-Bee – OSGi-basiertes Grid-Computing

    Vortrag Phillip Ghadir & Philipp Haußleiter OOP 2009

    Bundle-Bee ist eine OSGi-basierte Grid-Plattform, die es Anwendungsentwicklern erlaubt, eigene Dienste als OSGi- Bundles zentral zu installieren, die über die Plattform automatisch auf verschiedene Knoten im Grid verteilt werden. Die Erstellung eigener Dienste erfordert mit wenigen Einschränkungen kein spezifisches Programmiermodell. Der Vortrag stellt die Konzepte sowie Funktionen der Plattform vor und zeigt auch deren Grenzen auf.

    Mehr lesen
  • Zutaten für performante Rails-Anwendungen

    Artikel Phillip Ghadir, christophw RailsWay 01/2009

    „Rails ist langsam und inperformant!“, sagen Rails-Gegner. Ruby ist um ein Vielfaches langsamer als beispielsweise Java oder Python. Dennoch gibt es Rails-Anwendungen, die trotz Ruby schnell genug sind. In diesem Artikel stellen wir einige Rezepte zur Realisierung performanter Rails-Anwendungen vor.

  • REST für SOA

    Vortrag Phillip Ghadir JAX 2008

    REST, kurz für REpresentational State Transfer, ist die Bezeichnung für die Architektur, die der größten verteilten Anwendung der Welt - dem World Wide Web - zugrunde liegt. Auf Basis der Kernprinzipien Hypermedia, identifizierbare Ressourcen, Statuslosigkeit und verhandelbare Repräsentationen lassen sich jedoch nicht nur reine Informationssysteme, sondern auch komplexe Anwendungs- zu Anwendungsszenarien realisieren. Nach einer Einführung in REST zeigt der Vortrag, wie eine REST-konforme Gesamtarchitektur einer SOA im Gegensatz zu einer Web-Service-basierten dazu führt, dass heute geschriebene Anwendungen auch für zukünftige Clients und Technologien tauglich sind. Demonstriert wird dies anhand eines praktischen Beispiels.

    Mehr lesen
  • Ruby on Rails

    Vortrag Phillip Ghadir, Rubén Parés-Selders OOP 2008

    “Ruby on Rails” erfreut sich weiterhin enormer Popularität. Basierend auf der dynamischen, objektorientierten Programmiersprache Ruby und deren Möglichkeiten zur Meta-Programmierung ist ein Framework entstanden, das für die Erstellung dynamischer, datenbankbasierter Web-Anwendungen an Produktivität kaum zu überbieten ist. Im Hands-on- Workshop lernen die Teilnehmer Ruby und Ruby on Rails kennen, entwickeln eine vollständige Anwendung selbst und haben so die Gelegenheit, sich selbst eine Meinung zu den Qualitäten des Frameworks zu bilden.

    Mehr lesen
  • Die Java Persistence API

    Artikel Phillip Ghadir, Oliver Tigges, Serge Pagop JavaSPEKTRUM 02/07

    Mit EJB 3 wurde im Rahmen des Java Community Process das Java Persistence API (JPA) entworfen und verabschiedet. JPA ist zwar im Rahmen von EJB 3 entstanden, aber durchaus auch separat verwendbar. Die Mission: einen einheitlichen Persistenzmechanismus sowohl für Standard-Java als auch für Enterprise-Java bereitzustellen, der alle anderen Standard-Persistenz-Mechanismen wie JDO (Java Data Objects) oder EJB (Enterprise JavaBeans) ablösen soll.

  • EJB 3 - Die (R)Evolution

    Link Phillip Ghadir, Stefan Tilkov JavaSPEKTRUM 01/2007

    In diesem Artikel möchten wir die Eigenschaften von EJB 3 im Vergleich zu den Vorgängern vorstellen. Der Java Community Process (JCP) hat bei der Entwicklung von EJB 3 ein Hauptaugenmerk auf die Vereinfachung der Entwicklungstätigkeiten gelegt und das Programmiermodell grundlegend überarbeitet. An die Stelle von Deklarationen und Redundanzen treten einfache Java-Konstrukte, Konventionen und Konfigurationen in Ausnahmefällen. Mit EJB 3 ist erstmals kein EJB-eigener Persistenzmechanismus standardisiert worden. Stattdessen hat man losgelöst von EJB 3 mit der Java Persistence Architecture (JPA) eine Basis geschaffen, die den Standard für alle Java-basierten Persistenzframeworks definieren soll. EJB 3 definiert nur, wie man JPA EJB-konform verwendet.

  • REST – Die Architektur des Web

    Artikel Stefan Tilkov, Phillip Ghadir OBJEKTspektrum 05/06

    In diesem Artikel werden die Prinzipien erläutert, die der Architektur des WWW zu Grunde liegen. Anhand eines Beispiels wird gezeigt, dass diese nicht nur für die Kommunikation zwischen Web-Browser und -Server Anwendung finden können, sondern auch für die Kommunikation zwischen beliebigen anderen Systemen geeignet sind. Im Gegensatz zu Ansätzen, die dazu die Technologien aus der verteilten Objektwelt verwenden, beschränken wir uns dabei auf das oftmals unterschätzte HTTP-Protokoll.

  • Trennung von fachlicher und technischer Komponentenarchitektur im Sinne der MDA

    Link Andreas Ditze, Phillip Ghadir, Stefan Tilkov OBJEKTspektrum, 02/2003

    Mit der MDA definiert die OMG einen Software-Entwicklungsansatz, der nicht neu ist, sondern existierende “Best Practices” unter einem griffigen Namen zusammenfasst. Der Beitrag beschreibt den Zusammenhang zwischen der Spezifikation von Architekturen auf unterschiedlichen Ebenen und der MDA. Dazu wird zunächst eine mögliche Definition der Architekturebenen vorgestellt, um im Anschluss eines der größte Probleme, den unterschiedlichen Lebenszyklus der einzelnen Architekturen, näher zu beleuchten. Schließlich werden Theorie und Praxis einander gegenübergestellt sowie erweiterte Konzepte vorgestellt.