You're seeing by Stefan Tilkov from to in
  • Wait, what!? Our microservices have actual human users?

    Talk Stefan Tilkov EuregJUG Maas-Rhine March2017

    Microservice API styles, service lookups, datastores, scaling – all of our typical discussions about microservices seem to be centered around backend topics. But what about the user interface? How are we supposed to structure what is arguably the most important part of our applications – the one facing our users?

    In this session we’ll explore the role of the UI aspect in a microservice architecture, look at various methods of modularization, and derive a set of guidelines for avoiding monolithic frontends.

    Read more
  • Architecture Fishbowl

    Talk Stefan Tilkov Software Architecture Summit 2017

    In einem Fishbowl verschwimmt die Grenze zwischen Sprechern und Teilnehmern: Es bietet eine großartige Möglichkeit, die Themen des Summits ohne vorbestimmte Agenda zu diskutieren. Die Sprecher starten die Diskussion und stellen dabei sicher, dass sie eine möglichst große Menge kontroverser Statements abgeben, um die Diskussion anzufeuern. Danach haben Sie die Chance, an der dynamischen Diskussion teilzunehmen und Ihre eigenen Erfahrungen und Meinungen zu teilen. Moderiert von Stefan Tilkov.

    Read more
  • KEYNOTE: Architekturtransformationen in der Praxis

    Talk Gernot Starke, Stefan Tilkov Software Architecture Summit 2017

    Eigentlich wollen alle nur das Beste – und doch ist es oft so schwer, sinnvolle Veränderungen durchzusetzen. Dieses Gefühl plagt IT-Konferenzbesucher, wenn sie, frisch beflügelt von den großartigen Berichten über die Innovationsführer, wieder „nach Hause” kommen und dort mit den tollen neuen Ideen vor Wände laufen. In diesem Vortrag werfen wir einen Blick auf die typischen Probleme und diskutieren Wege, sie zu überwinden. Für das systematische Vorgehen spielen neben Technologie auch Politik und Betriebswirtschaft eine wichtige Rolle.

    Read more
  • Self-contained Systems: A Different Approach to Microservices

    Talk Stefan Tilkov GOTO Berlin 2016

    Microservices are the latest hype for software architectures. But just creating a set of small systems is by far not enough. Self-contained Systems (SCS) focus on an architecture approach based on Microservices. It is particularly useful for large systems and complex team structures. SCS allow to efficently develop software in such environments - even in the long run.

    The workshop explains Self-contained Systems, their advantages and disadvantages and the difference to Microservices.

    Read more
  • Progressive Web Components

    Talk Stefan Tilkov, Frederik Dohr GOTO Berlin 2016

    Every now and then the dawn of a new web standard paves the way for a shiny new generation of web technology. Web components are right around the corner, and their impact on the way we develop applications on the web will be huge. They will finally enable a well-defined, common way to develop self-contained, reusable and interoperable front-end components. But can this piece of technology live up to the fundamental philosophies of the web? Can web components be used to progressively enhance the core functionality of web applications? This talk will try to answer these questions and provide some advice on how to use web components safely and responsibly now and in the future.

    Read more
  • ROCA: Why you shouldn’t build Web UIs the way you do

    Talk Stefan Tilkov Devoxx 2016

    Many people who build web UIs go about it the wrong way without knowing about it – and popular frameworks don’t help.

    In this session, we’ll take a look at the architectural patterns that form the foundation of what makes the browser unique, explore how a developer can use them to build better web UIs using the framework-less style known as ROCA – and see how relying on less fancy tooling can lead to user experiences that are actually vastly superior in many ways.

    Read more
  • Wait, what!? Our microservices have actual human users?

    Talk Stefan Tilkov Devoxx 2016

    Microservice API styles, service lookups, datastores, scaling – all of our typical discussions about microservices seem to be centered around backend topics. But what about the user interface? How are we supposed to structure what is arguably the most important part of our applications – the one facing our users?

    In this session we’ll explore the role of the UI aspect in a microservice architecture, look at various methods of modularization, and derive a set of guidelines for avoiding monolithic frontends.

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

    Read more
  • Ordnung durch minimale Regeln

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

    Read more

    Microservices: One size does not fit all

    Talk Stefan Tilkov GOTO London 2016 Slides available

    If you pay any attention to software technology trends at all, there is no way you can have missed the “microservices” architecture approach, which seems to be the cure to every problem anyone ever had. But (Micro-)services, bounded contexts, components, modules, classes, structs and records, procedures and functions – whatever structuring mechanism we’re talking about, a recurring challenge is to find the right size for things. In this session, we will look at opposing forces from both technical and organizational perspectives, and come up with strategies for finding a good balance between the number of things (in this case, microservices) and their size.

    Read more
  • Warum Architekten scheitern (Keynote)

    Talk Stefan Tilkov The Architecture Gathering 2016 Slides available

    Wir alle kennen die mit großen Visionen gestarteten Projekte, die im Disaster enden und bestenfalls noch als schlechtes Beispiel dienen können. Aber warum scheitern ambitionierte Architekturansätze? Warum wird „Architekt“ mittlerweile von Einigen schon als Schimpfwort benutzt? Und was können wir Architekten tun, um unseren Ruf zu retten?

    In diesem Vortrag sehen wir uns einige der häufigsten Gründe für das Scheitern an – und diskutieren Ansätze zu ihrer Vermeidung.

    Read more
  • Innovation vs. Stabilität – Architekturtransformation im Großen

    Talk Stefan Tilkov Software Architecture Summit 2016

    Eigentlich wollen alle nur das Beste – und doch ist es oft so schwer, sinnvolle Veränderungen durchzusetzen. Dieses Gefühl plagt IT-Konferenzbesucher, wenn sie frisch beflügelt von den großartigen Berichten über die Innovationsführer wieder „nach Hause” kommen und dort mit den tollen neuen Ideen vor Wände laufen.

    In diesem Vortrag werfen wir einen Blick auf die typischen Probleme und diskutieren Wege, sie zu überwinden. Dabei spielt neben PaaS, Continuous Delivery, Cloud und DevOps auch Politik und Betriebswirtschaft eine wichtige Rolle.

    Read more
  • Blockchain – die langsamste (und spannendste) Datenbank der Welt

    Talk Stefan Tilkov Berlin Expert Days – BED-Con

    Als Fundament der virtuellen Währung Bitcoin ist das Blockchain-Verfahren mittlerweile die Basis für zahlreiche neue Geschäftsideen.

    Die üblichen Verdächtigen übertrumpfen sich gegenseitig mit Superlativen dazu, wie „disruptiv“ die darauf basierenden Startups sein werden. In diesem Vortrag betrachten wir zunächst die technischen Grundlagen und beleuchten Vor- und Nachteile. Danach identifizieren wir praktische Szenarien und diskutieren, wie man diese konkret umsetzt.

    Read more
  • Wait, what!? Our microservices have actual human users?

    Talk Stefan Tilkov Java User Group Darmstadt

    Microservice API styles, service lookups, datastores, scaling – all of our typical discussions about microservices seem to be centered around backend topics. But what about the user interface? How are we supposed to structure what is arguably the most important part of our applications – the one facing our users? In this session we’ll explore the role of the UI aspect in a microservice architecture, look at various methods of modularization, and derive a set of guidelines for avoiding monolithic frontends.

    Read more
  • Interview mit Stefan Tilkov: “Ich bin keinesfalls der Meinung, dass man immer Microservices einsetzen sollte”

    Article Stefan Tilkov

    Im Vorfeld des Software Architecture Summit ist auf jaxenter.de ein kurzes Interview mit Stefan Tilkov zur Frage „Microservices oder Software-Monolithen“. Dabei kommt auch das Problem in den Blick, wie Legacy-Anwendungen an moderne Architektur-Ansätze herangeführt werden können.

  • Wait, What? Microservices Have Actual Human Users?

    Talk Stefan Tilkov PHP Usergroup Düsseldorf

    Microservice API styles, service lookups, datastores, scaling – all of our typical discussions about microservices seem to be centered around backend topics. But what about the user interface? How are we supposed to structure what is arguably the most important part of our applications – the one facing our users? In this session we’ll explore the role of the UI aspect in a microservice architecture, look at various methods of modularization, and derive a set of guidelines for avoiding monolithic frontends.

    Read more
  • Wait, What? Microservices Have Actual Human Users?

    Talk Stefan Tilkov Goto Night Copenhagen August 2017

    Microservice API styles, service lookups, datastores, scaling – all of our typical discussions about microservices seem to be centered around backend topics. But what about the user interface? How are we supposed to structure what is arguably the most important part of our applications – the one facing our users?

    In this session we’ll explore the role of the UI aspect in a microservice architecture, look at various methods of modularization, and derive a set of guidelines for avoiding monolithic frontends.

    Read more
  • Software Engineering Radio Podcast, Episode 263: Camille Fournier on Real-World Distributed Systems

    Audio Stefan Tilkov, Camille Fournier Software Engineering Radio

    In this episode of the SE Radio podcast, Stefan Tilkov talks to Camille Fournier about the challenges developers face when building distributed systems. Topics include the definition of a distributed system, whether developers can avoid building them at all, and what changes occur once they choose to. They also discuss the role distributed consensus tools, such as Apache Zookeeper, play, and whether and when they are needed, and give some examples from Fournier’s experience building real-world systems at Goldman Sachs and Rent the Runway.

  • Software Engineering Radio Podcast, Episode 261: David Heinemeier Hansson on the State of Rails, Monoliths, and More

    Audio Stefan Tilkov, David Heinemeier Hansen Software Engineering Radio

    David Heinemeier Hansson, creator of the Ruby on Rails framework and a partner at the software development company Basecamp, talks to Stefan Tilkov about the state of Ruby on Rails and its suitability for long-term development. He addresses some of the common criticisms of Rails, such as perceived usefulness for only simple problems, claimed lack of scalability, and increasing complexity. David also talks about the downsides of building JavaScript-centric, “sophisticated” web UIs, and why he prefers well-structured, “majestic” monoliths to microservices.

  • Wait, what!? Our microservices have actual human users ?

    Talk Stefan Tilkov SI-SE 2016

    Microservice API styles, service lookups, datastores, scaling – all of our typical discussions about microservices seem to be centered around backend topics. But what about the user interface? How are we supposed to structure what is arguably the most important part of our applications – the one facing our users?

    We’ll explore the role of the UI aspect in a microservice architecture, look at various methods of modularization, and derive a set of guidelines for avoiding monolithic frontends.

    Read more
  • Tutorial I : Advanced REST

    Talk Stefan Tilkov SI-SE 2016

    REST als der Architekturstil des Webs ist mittlerweile keine Neuigkeit mehr, sondern in den meisten Fällen die bevorzugte Alternative für die Umsetzung von nicht nur von Web­Services. Die Diskussion darüber hat sich mittlerweile von Einsteigerthemen und Rechtfertigungen weg und zu fortgeschrittenen Fragestellungen hin entwickelt.

    In diesem Workshop diskutiert Stefan Tilkov mit den Teilnehmern fortgeschrittene Aspekte jenseits der Grundlagen. Zu den Themen gehören Versionierung, Dokumentation, Hypermedia, die Entwicklung von Clients, Teststrategien und vieles mehr. Dabei werden sowohl theoretische Architekturaspekte wie auch praktische Werkzeuge behandelt. Die Teilnehmer bekommen die Gelegenheit, alle Fragen zu stellen, zu denen sie noch nie befriedigende Antworten bekommen haben.

    Read more
  • Building Microservices in Clojure

    Talk Stefan Tilkov Joy of Coding

    One of the key tenets of the microservice architecture approach is isolation, allowing individual developers or teams to make local decisions. Clojure, a practical Lisp running on top of the JVM, has already done a lot to increase Lisp’s popularity outside of academic circles. Let’s combine the two to address the remaining doubts about its suitability for the real world! This talk will introduce both the architectural concept and the language, and show how you can combine tools from the Clojure and Java ecosystem to build Clojure-based microservices in practice.

    Read more
  • The Web Ahead, Episode 116: Preserving the Architecture of the Web with Stefan Tilkov

    Audio Stefan Tilkov thewebahead.net

    Stefan Tilkov joins Jen Simmons of “Web Ahead” podcast to talk about the architectural style of the web, and how to understand to best create an application on the web.

  • Why software architects fail – and what to do about it

    Talk Stefan Tilkov Goto Berlin 2016 Program Release Party

    We’ve all seen them: Ambitious projects, starting out with grand visions, ending up as costly lessons in what not to do, leaving behind the ruins of promising paradigms, technologies, tools, and careers. But why do architecture approaches sometimes hurt instead of providing value? Why has “architect” become a negative term for some people? And what can we do to improve our own work? We’ll look at some of the most common pitfalls that ensure you’ll come up with a disaster, and discuss how they can be avoided.

    Read more

    Video-Interview mit Stefan Tilkov

    Link Stefan Tilkov

    Beim Software Architecture Summit im März 2016 wurde Stefan Tilkov unter anderem zum Thema „Fortgeschrittene REST-Architekturen“ interviewt. Im Gespräch geht es um die Umsetzung dieses Architekturstils in der Praxis, Fortbildung für Softwarearchitekten und mehr.

  • Software Engineering Radio Podcast, Episode 257: Michael Nygard on Clojure in Practice

    Audio Stefan Tilkov, Michael Nygard Software Engineering Radio

    Michael Nygard of “Release It!” fame talks with Stefan Tilkov about his experience using the Clojure programming language. Topics include the tool chain and development process, the Clojure learning curve, and on-boarding new developers. Michael explains the similarities and differences compared to typical OO languages when implementing domain logic, and uses both game development and typical web development projects as examples. Finally, the two discuss how well Clojure can be used in the face of long-running projects, and some typical obstacles and strategies for introducing it to real-world scenarios.

  • Software Engineering Radio Podcast, Episode 249: Vaughn Vernon on Reactive Programming with the Actor Model

    Audio Stefan Tilkov, Vaughn Vernon Software Engineering Radio

    In this episode, SE Radio Host Stefan Tilkov talks to Vaughn Vernon about the topic of his most recent book, Reactive Messaging Patterns with the Actor Model. Vaughn explains the concepts and history of reactive programming, the actor model and its consequences, actors and their relation to object orientation, a typical approach for designing a system made of actors, Scala/Akka and Erlang, and the role of enterprise integration patterns.

  • Software Architektur für Innovation

    Talk Stefan Tilkov OBJEKTspektrum Information Days 2016 Slides available

    Um Innovationen in einem Software-System zu ermöglichen, muss die Architektur der Software änderbar sein, schnell auf das Geschehen am Markt reagieren und neue Technologien einfach unterstützen. Der Vortrag stellt wichtige moderne Prinzipien wie Continuous Delivery und Microservices vor und erläutert, wie solche Ansätze umgesetzt werden sollen. Im Mittelpunkt steht die Funktionsweise dieser Techniken und welche Vorteile sie aus einer Geschäftsperspektive in einem innovativen Umfeld bieten.

    Read more
  • Warum Architekten scheitern

    Talk Stefan Tilkov JUG Hamburg Special Day: Architektur Slides available

    Wir alle kennen die mit großen Visionen gestarteten Projekte, die im Disaster enden und bestenfalls noch als schlechtes Beispiel dienen können. Aber warum scheitern ambitionierte Architekturansätze? Warum wird „Architekt“ mittlerweile von Einigen schon als Schimpfwort benutzt? Und was können wir Architekten tun, um unseren Ruf zu retten? In diesem Vortrag sehen wir uns einige der häufigsten Gründe für das Scheitern an – und diskutieren Ansätze zu ihrer Vermeidung.

    Read more
  • 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.

  • Episode 52: Microservices und Self-contained Systems

    Audio Christian Weyer, Stefan Tilkov Heise Developer 18.03.2016

    In dieser Episode des heise Developer Podcast sprechen Christian Weyer und Stefan Tilkov über Microservices jenseits des Hypes. Zu den Themen gehören neben der Rolle von Microservices für Architekturarbeit die unterschiedlichen Varianten, die sich aktuell etablieren, Self-contained Systems, Pro und Contra von Monolithen, polyglotter Programmierung, die Auswirkungen auf die Organisation und die Rolle von Benutzerschnittstellen.

  • Fortgeschrittene REST-Architektur

    Talk Silvia Schreier, Stefan Tilkov Software Architecture Summit 2016

    REST als der Architekturstil des Webs ist mittlerweile keine Neuigkeit mehr, sondern in den meisten Fällen die bevorzugte Alternative für die Umsetzung von nicht nur von Web-Services. Die Diskussion darüber hat sich mittlerweile von Einsteigerthemen und Rechtfertigungen weg und zu fortgeschrittenen Fragestellungen hin entwickelt.

    In diesem Workshop diskutieren Silvia Schreier und Stefan Tilkov, zwei der Autoren des deutschsprachigen „REST und HTTP“-Buches, mit den Teilnehmern fortgeschrittene Aspekte jenseits der Grundlagen. Zu den Themen gehören Versionierung, Dokumentation, Hypermedia, die Entwicklung von Clients, Teststrategien und vieles mehr. Dabei werden sowohl theoretische Architekturaspekte wie auch praktische Werkzeuge behandelt. Die Teilnehmer bekommen die Gelegenheit, alle Fragen zu stellen, zu denen sie noch nie befriedigende Antworten bekommen haben.

    Read more
  • Embrace the Browser, Architect’s Edition

    Talk Stefan Tilkov EnhanceConf 2016 Slides available

    Progressive enhancement is a technique mostly known to, and practiced by, front-end developers and designers. In many large projects, the most important decisions (a.k.a. “architecture”) are made by backend architects, who couldn’t care less about frontend “details”. But they should! In this talk, I’ll try to explore some reasons how adopting the architecture of the web in general, and the capabilities of the browser in particular, improves the overall architecture.

    Read more
  • Wait, what!? Our microservices have actual human users?

    Talk Stefan Tilkov microXchg 2016 – The Microservices Conference Slides available

    Microservice API styles, service lookups, datastores, scaling – all of our typical discussions about microservices seem to be centered around backend topics. But what about the user interface? How are we supposed to structure what is arguably the most important part of our applications – the one facing our users? In this session we’ll explore the role of the UI aspect in a microservice architecture, look at various methods of modularization, and derive a set of guidelines for avoiding monolithic frontends.

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

    Read more
  • Ab sofort alles anders: Was eine neue Ausgangslage für unsere Architekturen bedeutet

    Talk Stefan Tilkov OOP 2016 – Software meets Business Slides available

    In den meisten Fällen sind Veränderungen in Architekturthemen graduell – wir verbessern Ansätze, finden und dokumentieren Muster, wenden Altbekanntes neu an. Aber was passiert, wenn Innovationen völlig neue Architekturen ermöglichen? In diesem Vortrag beschäftigen wir uns u. a. mit Entwicklungen bei Netzwerkbandbreiten und Hauptspeichergrößen, der Explosion der Geräteanzahl, der Veränderung der Infrastruktur in allen Schichten und der immer stärkeren Automatisierung und untersuchen diese auf ihre Auswirkungen auf gängige Architekturen.

    Im Vortrag werden wir gemeinsam Stück für Stück eine Umgebung konstruieren, die viele der bestehenden Grenzen nicht kennt. Was bedeutet es, wenn wir beliebig viel Hauptspeicher haben? Wenn eine Netzwerkinteraktion nicht mehr (wesentlich) teurer ist als eine lokale? Wenn Hardware nicht mehr physisch, sondern rein virtuell ist und die Anschaffung und Optimierung der Server selbst Teil der Architektur wird? Wir werden uns ansehen, mit welchen Architekturansätzen man aus einer solchen Umgebung das meiste herausholen kann – sowohl im „modernen“ Cloud-/E-Commerce-Umfeld als auch bei klassischen Unternehmensarchitekturen.

    Danache werden Sie die Auswirkungen von folgenden Entwicklungen verstehen:

    • Netzwerkbandbreiten und Hauptspeichergrößen
    • die Explosion der Geräteanzahl
    • die Veränderung der Infrastruktur in allen Schichten
    • die immer stärkere Automatisierung auf gängige Architekturen

    Zielpublikum: Architekten, Entwickler
    Voraussetzungen: Projekterfahrung
    Schwierigkeitsgrad: Fortgeschritten

    Read more
  • One size does not fit all: Carving up stuff for fun and profit (Opening Keynote)

    Talk Stefan Tilkov Topconf Linz 2016 Slides available

    (Micro-)services, bounded contexts, components, modules, classes, structs and records, procedures and functions – whatever structuring mechanism we’re talking about, a recurring challenge is to find the right size for things. Opposing forces influence our decisions from both technical and organizational perspectives, and strategies for finding a good balance are few and far between. Let’s take a closer look at what works, what doesn’t, and why.

    Read more
  • Redis in der Praxis

    Podcast Lucas Dohmen, Stefan Tilkov

    In dieser Episode unterhalten sich Lucas Dohmen und Stefan Tilkov über Redis, eine NoSQL-Datenbank aus der Key-Value-Kategorie, die sich insbesondere durch ihre hohe Geschwindigkeit und ihre intelligenten Datenstrukturen auszeichnet. Dabei werden nicht nur die Features aufgezählt, sondern auch praktische Hinweise zum Einsatz gegeben. Read more
  • Software Engineering Radio Podcast, Episode 241: Kyle Kingsbury on Consensus in Distributed Systems

    Link Stefan Tilkov Software Engineering Radio

    Kyle Kingsbury, known as Aphyr on Twitter and for his blog by the same name, talks to Stefan Tilkov about consensus in distributed systems and about his experience in testing systems to see how they behave in case of failures. In addition to discussing some of the theoretical foundations, such as the CAP theorem, isolation levels, and consensus protocols, Kyle talks about some specific databases, including MongoDB, Riak, and Redis, and discusses how they maintain and achieve — or fail to achieve — a consistent state. Finally, there’s some advice for practitioners on how to pick a solution and understand its properties.

  • Heise Developer Podcast, Episode 49: Architekturanalyse und -bewertung

    Link Stefan Tilkov Heise Developer Podcast

    In dieser Episode spricht Stefan Tilkov mit Carola Lilienthal über Ansätze zur Bewertung von Architekturen. Was bedeutet Analyse und Bewertung von Architekturen, was macht man da eigentlich und welche Aspekte kann man betrachten? Was sind die Ergebnisse und die Folgeaktivitäten? Neben diesen Fragen beschäftigen sich die Podcaster auch mit den zwischenmenschlichen Aspekten, gehen kurz auf formal(er)en Methoden und besprechen, wie man sich als Architekt(in) dem Thema nähern kann.

  • REST und HTTP

    Podcast Silvia Schreier, Oliver Wolf, Martin Eigenbrodt, Stefan Tilkov

    In dieser Folge spricht Stefan Tilkov mit seinen neuen Co-Autoren Martin Eigenbrodt, Silvia Schreier und Oliver Wolf anlässlich der kürzlich erschienenen dritten Auflage von „REST und HTTP“ über die Grundlagen von REST und Hypermedia und die Frage, wie man gute Web-Anwendungen baut. Read more
  • Microservices: Awesome, as long as they are neither ‘micro’ nor ‘services’

    Talk Stefan Tilkov GOTO Night: Microservices Slides available

    Microservices - awesome, as long as they are neither ‘micro’ nor ‘services’. The concept of a microservices architecture hit the community with tremendous force, and immediately struck a nerve. But the name is unfortunate – some of the connotations it carries are not at all necessary to reap the benefits of this approach. In this talk, we will discuss the forces that are independent from the size and the kind of interface offered, and see how they can be applied to various different scenarios.

    Read more
  • Logging und Metrics

    Podcast Tammo van Lessen, Stefan Tilkov

    In der zwanzigsten Folge unseres Podcasts spricht Tammo van Lessen mit Stefan Tilkov über modernes Logging und Monitoring. Durch DevOps ist einige Bewegung in die Welt des verteilten Monitorings von Anwendungen gekommen. Aus dem Hashtag #monitoringsucks wurde dank neuer Werkzeuge recht schnell #monitoringlove. Tammo stellt einige dieser Ansätze und Tools für gutes Logging und die Erfassung von Metriken in verteilten Umgebungen vor. Read more
  • Don’t start with a monolith

    Link Stefan Tilkov

    In an article published on martinfowler.com, Stefan Tilkov argues that starting with a monolith when your goal is a microservices architecture is typically the wrong thing to do.

  • DevOps

    Podcast Oliver Wolf, Stefan Tilkov

    Oliver Wolf und Stefan Tilkov sprechen in dieser Folge über die engere Verzahnung von Softwareentwicklung und Betrieb, auch DevOps genannt. Sie beleuchten Vorteile und organisatorische Herausforderungen dieser Vorgehensweise. Außerdem geht es auch darum, wie man interne Widerstände überwinden kann, um DevOps auch in traditionell strukturierten Organisationen einzuführen. Read more
  • Rollen- und Gehaltsmodell bei innoQ Deutschland

    Blog Post Stefan Tilkov

    Im Laufe der Jahre haben wir bei innoQ mit einer Reihe unterschiedlicher Rollen- und Gehaltsmodelle experimentiert. In Deutschland haben wir mittlerweile ein relativ stabile Struktur, die in diesem Beitrag näher beschrieben wird.

    Read more
  • Twelve-Factor App: Web-Applikationen auf die neue Art

    Podcast Michael Vitz, Stefan Tilkov

    Michael Vitz und Stefan Tilkov sprechen in dieser Folge über die Twelve-Factor App, eine Entwicklungsmethode für skalierbare Web-Applikationen in der Cloud. Michael erklärt zunächst, welche Ziele hinter dieser Methode stehen und erläutert dann die 12 Faktoren im Detail. Außerdem diskutieren Stefan und Michael über Vor- und Nachteile der Twelve-Factor App und beleuchten Gemeinsamkeiten und Unterschiede zu Microservices. Read more
  • Why You Should Avoid a Canonical Data Model

    Blog Post Stefan Tilkov

    As an enterprise architect, you might be tempted to strive for a canonical data model for your systems’ interfaces. That’s not a good idea.

    Read more
  • Software als Open Source veröffentlichen – einfach, rechtssicher, kooperativ

    Talk Stefan Tilkov, Tobias Haustein OOP 2015 - Software meets Business

    Der Verein TOSSCA hat sich zum Ziel gesetzt, die Kooperation von Unternehmen im Open Source Umfeld zu vereinfachen. Da die Nutzung von Open Source Software in Unternehmen durchaus weit verbreitet ist, konzentriert sich TOSSCA vor allem darauf, bei der Veröffentlichung selbst entwickelter Software zu unterstützen. Hierzu bietet der Verein allen Beteiligten (Entwicklern, Projekt Managern, Juristen, Entscheidern) genau die spezifische Unterstützung an, die bei der Klärung sämtlicher Fragen rund um eine gemeinsame, rechtssichere und risikoarme Veröffentlichung und der anschließenden Weiterentwicklung notwendig sind.

    Im Vortrag wird anhand konkreter erster Open Source Projekte das rechtliche Konstrukt vorgestellt. Zudem werden die deutlichen Vorteile für Unternehmen und Einzelentwickler erläutert.

    Dieser Vortrag findet im Rahmen der OOP 2015 Fachmesse statt.

    Read more
  • Ruby on Rails

    Podcast Robert Glaser, Stefan Tilkov

    In dieser Folge spricht Robert Glaser mit Stefan Tilkov über das Web-Framework Ruby on Rails. Robert stellt die Hauptbestandteile und aktuellen Neuerungen des Frameworks vor und schildert seine Erfahrungen im täglichen Umgang mit Rails. Read more
  • Nano, Micro, Mini, oh my: Modularization for sustainable systems

    Talk Stefan Tilkov Microservices Meetup Berlin Slides available

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

    Read more
  • Fun Stories from an Architect’s Life

    Talk Stefan Tilkov BUILD STUFF Slides available

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

    Read more
  • REST: I don’t Think it Means What You Think it Does

    Talk Stefan Tilkov BUILD STUFF Slides available

    These days, REST has become truly fashionable. No matter what system, product or service we look at, everything claims to offer a “REST API”. But as is often the case with technical concepts that gain acceptance, many instances just stick the label on something that really doesn’t meet expectations. This session will start with a pragmatic introduction to the basic principles of the Web’s architectural approach. Next, we’ll spend the majority of the time looking at the most common misconceptions, and conclude with an extended Q&A.

    Read more
  • Fun Stories from an Architect’s Life

    Talk Stefan Tilkov GOTO Berlin 2014 Slides available

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

    Read more
  • Architektur 201x: Neue Konzepte für die Architektur komplexer Systeme

    Talk Stefan Tilkov W-JAX 2014 Slides available

    Während im Enterprise-Umfeld Systeme häufig immer noch nach denselben Mustern entworfen werden wie vor 10 oder 15 Jahren, haben sich die Dinge in den immer größer werdenden Internet-Plattformen, -Diensten und Anwendungen der großen Internet-Anbieter dramatisch weiterentwickelt. Dazu zählen vor allem die Konzepte zu Modularisierung in viele einzelne, voneinander weitgehend unabhängige Systeme, der deutlich flexiblere und tolerantere Umgang mit verschiedenen Programmiersprachen und Frameworks und passende Entwicklungs- und Deployment-Strategien, die weniger eine gemeinsame technologische Implementierungsbasis, sondern eher gemeinsame Schnittstellen voraussetzen.

    In diesem Vortrag diskutieren wir, wie wir nach der Maxime “weniger ist mehr” kleinere Systeme deutlich effizienter entwickeln und diese zu großen Systemlandschaften zusammensetzen können, ohne uns von einzelnen Technologieplattformen abhängig zu machen. Dass solche Systemlandschaften dann auch noch rein zufällig perfekt mit modernen Cloud-Ansätzen zusammenspielen, versteht sich – aus Gründen der Buzzword-Kompatibilität – fast von selbst.

    Read more
  • Software Engineering Radio Podcast, Episode 210: Stefan Tilkov on Architecture and Micro Services

    Link Stefan Tilkov Heise Developer Podcast

    Micro services is an emerging trend in software architecture that focuses on small, lightweight applications as a means to avoid large, unmaintainable, monolithic systems. This approach allows for individual technology stacks for each component and more resilient systems. Micro services uses well-known communication schemes such as REST but also require new technologies for the implementation. Methodologies like the Twelve-Factor App provide a set of rules for the deployment and operation of such systems. Teams take care of several of those services and deal with separate business domains to make the best use of Conway’s Law. These business domains provide a more coarse-grained software architecture. In this episode, Stefan Tilkov discusses these new approaches as well as their benefits and drawbacks with Eberhard Wolff.

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

    Talk Stefan Tilkov Microservices Meetup Munich Slides available

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

    Read more
  • Heise Developer Podcast, Episode 46: Ressourcen für Softwarearchitekten

    Link Stefan Tilkov Heise Developer Podcast

    In dieser Episode unterhalten sich Stefan Tilkov und Michael Stal zum Thema Ressourcen für Architekten. Welche Bücher muss man kennen? Welche Podcasts, Videos, Online-Kurse? Wem sollte man auf Twitter folgen?

  • REST und RESTful HTTP: Was es ist – und was nicht

    Talk Stefan Tilkov Developer Week 2014

    REST gehört mittlerweile zum guten Ton: Was auch immer wir ansehen, ob Produkt, Dienst oder Framework: Überall wimmelt es nur so von Dingen, die behaupten, „RESTful“ zu sein. Aber wie immer, wenn etwas gerade in Mode ist, handelt es sich dabei um Etikettenschwindel. In diesem Vortrag beginnen wir mit einer pragmatischen Einführung in die Grundlagen von REST, des Architekturstils des Webs, bevor wir den größten Teil unserer Zeit damit verbringen, uns die häufigsten Irrtümer und Missverständnisse rund um das Thema anzusehen.

    Read more
  • Heise Developer Podcast, Episode 45: Entwicklung von Offline-Webanwendungen

    Link Stefan Tilkov Heise Developer Podcast

    In dieser Episode spricht Stefan Tilkov mit Jan Lehnardt über Hood.ie, ein Framework zur Entwicklung von Offline-Webanwendungen.

  • “REST”: I don’t Think it Means What You Think it Does

    Talk Stefan Tilkov goto Amsterdam 2014

    These days, REST has become truly fashionable. No matter what system, product or service we look at, everything claims to offer a “REST API”. But as is often the case with technical concepts that gain acceptance, many instances just stick the label on something that really doesn’t meet expectations. This session will start with a pragmatic introduction to the basic principles of the Web’s architectural approach. Next, we’ll spend the majority of the time looking at the most common misconceptions, and conclude with an extended Q&A.

    Read more
  • Wenn Systeme aus dem Ruder laufen

    Podcast Arne Landwehr, Stefan Tilkov

    In der fünfzehnten Folge unseres Podcasts spricht Arne Landwehr mit Stefan Tilkov über Stabilitäts-Pattern für verteilte Anwendungen und die Bibliothek "Hystrix". Arne erläutert dabei unter anderem, um was es sich bei "Circuit-Breakern" handelt und wie sie uns zu stabileren Systemen führen können. Read more
  • Heise Developer Podcast, Episode 44: Modularisierte Architektur für große Systeme

    Link Stefan Tilkov Heise Developer Podcast

    In dieser Episode spricht Stefan Tilkov mit Eberhard Wolff über die Idee, ein Softwaresystem in eine Vielzahl kleinerer Systeme aufzuteilen, und die Konsequenzen, die sich aus einem solchen Ansatz ergeben.

  • Ein Blick hinter die Kulissen

    Podcast Stefan Tilkov, Till Schulte-Coerne

    In dieser Folge sitzt Stefan Tilkov einmal auf der anderen Seite des Tisches: Till Schulte-Coerne interviewt den Geschäftsführer der innoQ Deutschland über die Philosophie und Werte des Unternehmens. Stefan erzählt z.B. warum man sich bewusst für einen Mangel an formalen Prozessen entschieden hat, was innoQ für die Förderung des internen Know-Hows macht und wieso es sich lohnt, mehrmals pro Jahr mehrtägige Firmenevents zu organisieren. Read more
  • Keine Angst vor runden Klammern - Clojure: das Lisp auf der JVM

    Talk Silvia Schreier, Stefan Tilkov JAX 2014 Slides available

    Clojure ist eine innovative, ungemein praktische JVM-Sprache mit Lisp-Wurzeln, die von Grund auf für die Parallelverarbeitung ausgelegt ist und dabei mit vielen bekannten Mustern aus der OO-Welt bricht. Ein besonderes Merkmal ist dabei das klare und einfache grundlegende Design der Sprache. Im Vortrag wird nach einer Einführung in die Konzepte und die Syntax der praktische Nutzen von Clojure demonstriert und insbesondere auch auf die Integrationsmöglichkeiten mit anderen JVM-Sprachen eingegangen.

    Read more
  • Heise Developer Podcast, Episode 43: Single Page Apps mit AngularJS

    Link Stefan Tilkov Heise Developer Podcast

    Eine Podcast-Episode über flexible Client-Architekturen für Desktop, Mobil und Browser – am Beispiel von AngularJS.

  • Architecture War Stories

    Talk Stefan Tilkov CRAFT 2014 Slides available

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

    Read more
  • REST: Implementierungsansätze auf der JVM

    Talk Stefan Tilkov, Martin Eigenbrodt BEDcon 2014 Slides available

    REST-basierte APIs werden immer populärer, und damit steigt auch die Anzahl von Bibliotheken und deren Mächtigkeit. In diesem Vortrag wollen wir die Theorie auf das absolute Minimum begrenzen und ganz praktisch zeigen, wie man REST-APIs mit Java und anderen JVM-Sprachen realisiert.

    Die Verwendung von verschiedenen Sprachen, Bibliotheken und Frameworks gibt uns die Chance, die unterschiedlichen Lösungsansätze für Aufgaben und Problemstellungen wie URL/Pfad-Mapping, (Un)Marshalling, Content Negotiation, Caching und Headermanipulation sowie deren Vor- und Nachteile gegenüberzustellen – und bei der Gelegenheit auch gleich die Stärken und Schwächen der jeweiligen Umgebung zu betrachten.

    Read more
  • Architektur 201x: Neue Konzepte für die Architektur komplexer Systeme

    Talk Stefan Tilkov JavaLand 2014 Slides available

    Während im Enterprise-Umfeld Systeme häufig immer noch nach denselben Mustern entworfen werden wie vor 10 oder 15 Jahren, haben sich die Dinge in den immer größer werdenden Internet-Plattformen, -Diensten und Anwendungen der bekannten Internet-Anbieter dramatisch weiterentwickelt. In diesem Vortrag wird diskutiert, wie sich 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 lassen.

    Read more
  • From Parts to a Whole: Modular Development of a Large-Scale e-Commerce Site

    Talk Stefan Tilkov QCon London 2014

    In this session, we will show how OTTO, Germany’s largest online fashion retailer, used a system-of-systems approach to enable modular, parallel development of its ambitious shop relaunch. We’ll talk about the Otto.de platform’s macro and micro architecture, the modularization into autonomous subsystems, as well as the challenges, both technical and organizational, in integrating the parts into a consistent whole using simple Web Technologies. Topics covered also include cross-cutting concerns such as an asset server, the approach to platform engineering and quality assurance, aggregation of front-end components including caching strategies, and the management of APIs and media types.

    A green field approach based on open source components, a distributed architecture instead of a monolith, cross-functional and agile engineering teams with a strong devops focus, continuous delivery and fast feedback as the new culture on product development - these are the characteristics of OTTO’s new online world. Launched in October 2013 the new shop managed the traffic peak before Christmas successfully.

    Read more
  • Heise Developer Podcast, Episode 42: Interview mit Erik Meijer

    Link Stefan Tilkov Heise Developer Podcast

    SoftwareArchitekTOUR-Podcaster Stefan Tilkov sprach mit Erik Meijer über das Konzept von “Functional Reactive Programming” und über “Reactive Extensions”, eine für viele verschiedene Programmiersprachen verfügbare Bibliothek für deren Nutzung zur Programmierung von Netzwerkanwendungen.

  • Sicherheit von IT-Systemen

    Podcast Willem van Kerkhof, Stefan Tilkov

    Willem van Kerkhof spricht mit Stefan Tilkov über die Sicherheit von IT-Systemen. Allgemeine nichttechnischen Aspekte, wie die Wahl von Passwörtern, sind dabei mindestens genauso wichtig wie technische Implikationen beispielsweise zur Absicherung von Web-Anwendungen. Read more
  • Architektur 201x: Neue Konzepte für die Architektur komplexer Systeme

    Talk Stefan Tilkov OOP 2014 Slides available

    Während im Enterprise-Umfeld Systeme häufig immer noch nach den selben Mustern entworfen werden wie vor 10 oder 15 Jahren, haben sich die Dinge in den immer größer werdenden Internet-Plattformen, -Diensten und Anwendungen der großen Internet-Anbieter dramatisch weiterentwickelt. Dazu zählen vor allem die Konzepte zu Modularisierung in viele einzelne, voneinander weitgehend unabhängige Systeme, der deutlich flexiblere und tolerantere Umgang mit verschiedenen Programmiersprachen und Frameworks und passende Entwicklungs- und Deployment-Strategien, die weniger eine gemeinsame technologische Implementierungsbasis, sondern eher gemeinsame Schnittstellen voraussetzen.

    In diesem Vortrag diskutieren wir, wie wir nach der Maxime “weniger ist mehr” kleinere Systeme deutlich effizienter entwickeln und diese zu großen Systemlandschaften zusammensetzen können, ohne uns von einzelnen Technologieplattformen abhängig zu machen.

    Dass solche Systemlandschaften dann auch noch rein zufällig perfekt mit modernen Cloud-Ansätzen zusammenspielen, versteht sich – aus Gründen der Buzzword-Kompatibilität – fast von selbst.

    Read more
  • Warum und Wie von Software-Evolution

    Talk Stefan Tilkov, Gernot Starke OOP 2014 Slides available

    Ändern und Erweitern - aber richtig!

    In den Systemen, die uns die technisch die meisten Probleme machen, steckt oft der größte Wert. Wir würden sie am liebsten komplett neu entwickeln, aber das stellt sich bei näherem Hinsehen als äußerst schwierig heraus. Also vielleicht doch behalten? Oder heftig modernisieren? In diesem Vortrag erhalten Sie einen Überblick, worauf es bei Evolution von Software ankommt: Wir müssen auf geänderte Anforderungen reagieren, mit neuen und veränderten Schnittstellen zurecht kommen, unsere Basistechnologien austauschen können und ganz nebenbei noch auf Wartungskosten achten. Dazu beschreiben wir taktische und strategische Maßnahmen, die nicht nur zu der jeweiligen Entscheidung passen, sondern auch eine realistische Chance haben, in die Praxis umgesetzt zu werden.

    Read more
  • Graphdatenbanken

    Podcast Oliver Tigges, Stefan Tilkov

    In der zehnten Folge unseres Podcasts spricht Oliver Tigges mit Stefan Tilkov über Graphdatenbanken, eine Unterklasse der NoSQL-Datenbanken. Oliver erklärt welche Eigenschaften graphbasierte Datenbanken haben und beschreibt Szenarien in denen ihr Einsatz gegenüber dem Einsatz von "klassischen" relationalen Datenbanken sinnvoll erscheint. Read more
  • Heise Developer Podcast, Episode 41: Interview mit Dave Thomas

    Link Stefan Tilkov Heise Developer Podcast

    Diese Episode ist der Auftakt mehrerer Interviews mit berühmten Softwareentwicklern, die im Rahmen von SoftwareArchitekTOUR geführt wurden. Dave Thomas hat sich vorrangig einen Namen als Begründer der Smalltalk-Firma Object Technology International gemacht.

  • Play!

    Podcast Tobias Neef, Stefan Tilkov

    In seinem zweiten innoQ Podcast spricht Tobias Neef mit Stefan Tilkov über das Web-Framework Play. Tobias stellt die wesentlichen Features des Frameworks vor und beschreibt deren Einsatz. Er diskutiert den alternativen Einsatz von Play mit Java oder Scala und geht auf die Hauptunterschiede zwischen Play 1 und 2 ein. Read more
  • Web Development mit Clojure

    Talk Stefan Tilkov, Philipp Schirmacher W-JAX 2013

    Clojure ist eine JVM-basierte funktionale Sprache mit besonderen Konzepten, die das Unmögliche möglich macht: Ein tatsächlich in der Praxis von normalsterblichen Entwicklern einsetzbares Lisp. In dieser Session zeigen wir nach einer Minimaldosis Theorie, wie mit Clojure und einem Satz von Open-Source-Bibliotheken effizient und eine hochqualitative Webanwendung realisiert werden kann.

    Read more

    ROCA: Resource-oriented Client Architecture

    Talk Stefan Tilkov, Till Schulte-Coerne W-JAX 2013

    Eingezwängt zwischen statusbehafteten Komponenten-Server-Frameworks auf der einen und Single-Page-Apps auf der anderen Seite könnte man meinen, die klassische Architektur von Webanwendungen hätte ausgedient. Das stimmt jedoch keineswegs: Schöpft man das Potenzial des Webs vernünftig aus, so stellt man fest, dass es gerade ohne ein Verbiegen der Grundprinzipien möglich ist, skalierbare und ergonomische Anwendungen zu entwickeln. ROCA (Resource-oriented Client Architecture) ist der Name für einen Ansatz, der diesem Muster folgt und sich vor allem durch den richtigen Einsatz von JavaScript sowie die Einhaltung von REST-Prinzipien auszeichnet.

    Read more

    Von passiven zu aktiven APIs

    Talk Stefan Tilkov, Oliver Wolf W-JAX 2013 Slides available

    REST-APIs sind ein wesentlicher Erfolgsfaktor für moderne webbasierte Dienste. Viele APIs verlangen jedoch vom Nutzer detailliertes Wissen über mögliche Aktionen auf exponierten Ressourcen, obwohl dies bei konsequenter Nutzung von Hypermedia vermeidbar wäre. In diesem Vortrag zeigen wir anhand konkreter Beispiele, wie man von solchen passiven zu hypermediagetriebenen, aktiven APIs kommt.

    Read more
  • Architecture War Stories

    Talk Gernot Starke, Stefan Tilkov W-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.

    Read more
  • Modern Batch

    Podcast Frank Hinkel, Stefan Tilkov

    In dieser Folge unterhalten sich Frank Hinkel und Stefan Tilkov über Batchverarbeitung, was gerade für große Unternehmen immer ein wichtiger Bestandteil der IT gewesen ist und bleiben wird. Frank stellt die Herausforderungen der Thematik vor und spricht über die Bedeutung von Frameworks wie Spring Batch. Read more
  • Web Development: You’re Doing it Wrong

    Talk Stefan Tilkov GOTO Berlin Conference 2013

    Even without any sort of programming framework with lots of abstraction layers and fancy tooling, the Web platform is one of the most powerful environments for distributed and collaborative systems. If, that is, we actually /use/ it instead of continuously /abusing/ it through trying to turn it into something it’s not. In this session, we’ll challenge many commonly-held assumptions about how to best develop web applications. Even though we’ll briefly touch the REST architectural style, most of the time will be spent discussing the strengths and ideal roles for HTML, CSS, JavaScript and their connection to the Web’s core standards, HTTP and URIs. We’ll see how a focus on simplicity and moderate use of technologies can lead to great applications that integrate well, scale well, are fun to develop, and are maintainable in the long run.

    Read more
  • Scala

    Podcast Tobias Neef, Stefan Tilkov

    In dieser Folge diskutiert Tobias Neef mit Stefan Tilkov über Vorteile von und Vorurteile gegen Scala. Tobias gibt einen kurzen Überblick über einige wichtige Features und sowie deren Nutzen in der Praxis. Read more
  • CSS-Präprozessoren

    Podcast Roman Stranghöner, Falk Hoppe, Stefan Tilkov

    Roman Stranghöner und Falk Hoppe sprechen mit Stefan Tilkov über die Möglichkeit, die Verwendung von CSS mit Hilfe von Präprozessoren zu vereinfachen und besser in die Gesamtarchitektur von Webanwendungen einzubetten. Read more
  • CSS-Architektur

    Podcast Roman Stranghöner, Falk Hoppe, Stefan Tilkov

    Falk Hoppe und Roman Stranghöner sprechen mit Stefan Tilkov über die Architekturaspekte von CSS. Read more
  • Clojure

    Podcast Philipp Schirmacher, Stefan Tilkov

    Stefan Tilkov unterhält sich mit Philipp Schirmacher über Clojure, ein pragmatisches und praxistaugliches Lisp für die Java Virtual Machine. Read more
  • Architekturdokumentation

    Podcast Gernot Starke, Stefan Tilkov

    Gernot Starke und Stefan Tilkov unterhalten sich darüber, ob und wozu man Architekturen dokumentieren sollte, welche Mittel es dazu gibt und wie das auch zu Projekten passt, die Sinn haben. Read more
  • openHAB: Home-Automation mit Java

    Podcast Thomas Eichstädt-Engelen, Kai Kreuzer, Stefan Tilkov

    In diesem Podcast unterhalten sich die openHAB-Committer Kai Kreuzer und Thomas Eichstädt-Engelen mit Stefan Tilkov über den technischen Hintergrund des openHAB-Projektes, die Community die sich darum gebildet hat und die Erfahrungen mit einem populären Open Source-Projekt. Read more

    Frontend-Optimierung von Webanwendungen

    Podcast Till Schulte-Coerne, Stefan Tilkov

    In dieser Episode unterhält sich Till Schulte-Coerne mit Stefan Tilkov über die Frontend-Optimierung bei Webanwendungen. Till macht dabei darauf aufmerksam, dass Geschwindigkeit nicht nur im Backend verbessert werden kann und stellt verschiedene Möglichkeiten zum Optimieren vor. Read more
  • Architektur-Strategien für moderne Web-Anwendungen

    Talk Stefan Tilkov Experten-Forum-Stuttgart

    Auch 2013 wird das Experten-Forum-Stuttgart (EFS) stattfinden, diesmal am 5. Juli und wieder im Anschluss an das Java Forum Stuttgart. Es werden 12 halbtägige Workshops in 6 parallelen Tracks angeboten. Gut 100 Teilnehmer werden erwartet, welche sich auf hochrangige Referenten und brandaktuelle Themen freuen können.

    Ein Highlight bei der Veranstaltung ist Stefan Tilkov mit seinem Workshop-Thema “Architektur-Strategien für moderne Web-Anwendungen”.

    Teilnahmegebühr: 320 Euro zzgl.19% MwSt. Frühbucher bei Anmeldung bis 26.05.2013: Ermässigung um 30 Euro

    Read more
  • Software Architecture Summit

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

    Read more
  • Von passiven zu aktiven APIs

    Talk Stefan Tilkov, Oliver Wolf JAX 2013 Slides available

    REST-APIs sind ein wesentlicher Erfolgsfaktor für moderne webbasierte Dienste. Viele APIs verlangen jedoch vom Nutzer detailliertes Wissen über mögliche Aktionen auf exponierten Ressourcen, obwohl dies bei konsequenter Nutzung von Hypermedia vermeidbar wäre. In diesem Vortrag zeigen wir anhand konkreter Beispiele, wie man von solchen passiven zu Hypermedia-getriebenen aktiven APIs kommt.

    Read more
  • Heise Developer Podcast, Episode 39: Entwicklung für Embedded-Systeme mit mbeddr

    Link Stefan Tilkov Heise Developer Podcast

    Zu Gast ist Markus Völter, der mehr über mbeddr, ein Open-Source-Werkzeug zur Entwicklung eingebetteter Systeme mit C, verrät.

  • Architekturkonzepte für große Webanwendungen

    Talk Stefan Tilkov OOP 2013

    “Früher hatten Unternehmen Websites, heute sind sie Websites” - auch wenn dieses Bonmot nicht immer zutrifft, ist doch klar, dass Webanwendungen immer wichtiger werden, ob nun für den externen oder internen Gebrauch. In dieser Session befassen wir uns mit Entwicklungs-, Modularisierungs-, Betriebs- und Organisationskonzepten großer Web-Systeme. Wir betrachten die Rolle verschiedener Frontend- und Backend-Technologien und adressieren Fragen nach Ergonomie, Skalierbarkeit, Performance, aber auch Nachhaltigkeit und Investitionsschutz.

    Sie lernen:

    • Große Web-Anwendungen beherrschen, sowohl im öffentlichen Web wie auch unternehmensintern

    • Einheitliches Look & Feel trotz Modularisierung und Dekomposition

    • Technische Herausforderungen verstehen und adressieren können

    Read more
  • Architekturarbeit in der Praxis

    Talk 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

    Read more
  • Heise Developer Podcast, Episode 38: Barrierefreiheit

    Link Stefan Tilkov Heise Developer Podcast

    Der SoftwareArchitekTOUR-Podcast zu Barrierefreiheit und Usability. Als Gast ist der blinde Softwareentwickler Artur Ortega geladen.

  • NodeJS

    Talk Stefan Tilkov eJug Seminar

    Node.js ist ein Framework zur Umsetzung von Netzwerkapplikationen in JavaScript, dessen Unterstützung für Funktionen höherer Ordnung perfekt zu einem Programmiermodell passt, das Non-blocking I/O in den Mittelpunkt stellt. In dieser Session wird Node.js und das umgebende Ökosystem vorgestellt und gezeigt, wie sich auf dieser Basis hochperformante Clients und Server implementieren lassen.

    Read more

    Clojure: Innovation aus dem Jahr 1958 für eine Sprache im Jahr 2012

    Talk Stefan Tilkov eJug Seminar

    Clojure ist eine innovative, ungemein praktische JVM-Sprache mit Lisp-Wurzeln, die von Grund auf für die Parallelverarbeitung ausgelegt ist und dabei mit vielen bekannten Mustern aus der OO-Welt bricht. Ein besonderes Merkmal ist dabei das klare und einfache grundlegende Design der Sprache. Im Vortrag wird nach einer Einführung in die Konzepte und die Syntax der praktische Nutzen von Clojure demonstriert und insbesondere auch auf die Integrationsfähigkeit in klassische Java-Anwendungen eingegangen.

    Read more
  • Weg mit den alten Zöpfen!

    Talk Stefan Tilkov OBJEKTspektrum Information Days 2012 - 2. iSAQB Architekturtage

    Man gewöhnt sich an alles, auch an Architekturmuster und -paradigmen. Irgendwann werden sie zu Allgemeingut und so selbstverständlich, dass man überhaupt nicht mehr auf die Idee kommt, sie kritisch zu hinterfragen. Genau das werden wir in dieser Session tun – und an Vielem rütteln, was uns unverrückbar scheint. Teilnehmer, die auf Kritik an objektorientierter Programmierung, persistenten Daten, Design Patterns im Allgemeinen oder dem Schichtenmuster im Besonderen allergisch reagieren, sollten dieser Session fernbleiben.

    Read more
  • ROCA

    Article Falk Hoppe, Till Schulte-Coerne, Stefan Tilkov

    Eingezwängt zwischen statusbehafteten, serverseitigen Komponenten-Frameworks auf der einen und Single-Page-Apps auf der anderen Seite könnte man meinen, die klassische Architektur von Webanwendungen hätte ausgedient. Das stimmt jedoch keineswegs: Schöpft man das Potenzial des Webs vernünftig aus, so stellt man fest, dass es gerade ohne ein Verbiegen der Grundprinzipien möglich ist, skalierbare und ergonomische Anwendungen zu entwickeln. ROCA (Resource-oriented Client Architecture) ist der Name für einen Ansatz, der diesem Muster folgt und sich vor allem durch den richtigen Einsatz von JavaScript sowie die Einhaltung von REST-Prinzipien auszeichnet.

    Read more
  • Heise Developer Podcast, Episode 37: ROCA (Resource-oriented Client Architecture)

    Link Stefan Tilkov Heise Developer Podcast

    Eine Episode über Ansätze für die Entwicklung von Webanwendungen und insbesondere über ROCA, einen Ansatz, der auf serverseitiges HTML und Unobtrusive JavaScript setzt.

    Podcast: ROCA (Resource-oriented Client Architecture)

    Link Christian Weyer, Stefan Tilkov Heise Developer 13.11.2012

    In dieser Episode des heise Podcasts diskutieren die Podcaster Christian Weyer und Stefan Tilkov verschiedene Ansätze für die Entwicklung von Webanwendungen und dabei insbesondere ROCA (Resource-oriented Client Architecture), einen Ansatz, der auf serverseitiges HTML und Unobtrusive JavaScript setzt.

  • ROCA: Resource-oriented Client Architecture

    Talk Stefan Tilkov, Till Schulte-Coerne W-JAX 2012

    Eingezwängt zwischen statusbehafteten Komponenten-Server-Frameworks auf der einen und Single-Page-Apps auf der anderen Seite könnte man meinen, die klassische Architektur von Webanwendungen hätte ausgedient. Das stimmt jedoch keineswegs: Schöpft man das Potenzial des Webs vernünftig aus, so stellt man fest, dass es gerade ohne ein Verbiegen der Grundprinzipien möglich ist, skalierbare und ergonomische Anwendungen zu entwickeln. ROCA (Resource-oriented Client Architecture) ist der Name für einen Ansatz, der diesem Muster folgt und sich vor allem durch den richtigen Einsatz von JavaScript sowie die Einhaltung von REST-Prinzipien auszeichnet.

    Read more

    Was Sie aus Erlang, Clojure & Co. für den Mainstream lernen können

    Talk Stefan Tilkov, Gernot Starke W-JAX 2012

    Wer sich mit spannenden, neuen und wiederentdeckten exotischen Technologien beschäftigen möchte, kann sich aktuell über Material nicht beklagen. Aber was bringt das dem normalen Entwickler, der sich in den engen Grenzen technischer und organisatorischer Rahmenbedingungen bewegen muss? In diesem Vortrag diskutieren wir, welche Ansätze aus “Alternativen” sich in den Mainstream übernehmen lassen.

    Read more
  • RESTful HTTP - Beyond the Intro Level

    Talk Stefan Tilkov W-JAX 2012

    There is probably no developer left who hasn’t been exposed to at least one introduction to REST, and most have by now gathered some first-hand experience. In this session, there will be no introduction, only advanced stuff, such as hypermedia aspects, security, format/resource/representation design, and implementation issues - with room for lots of questions (and hopefully, answers).

    Read more
  • Power Workshop: RESTful HTTP in der Praxis

    Talk 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

    Read more
  • ROCA: Resource-oriented Client Architecture

    Talk Stefan Tilkov WebTech Conference 2012

    Eingezwängt zwischen statusbehafteten Komponenten-Server-Frameworks auf der einen und Single Page Apps auf der anderen Seite könnte man meinen, die klassische Architektur von Webanwendungen hätte ausgedient. Das stimmt jedoch keineswegs: Schöpft man das Potenzial des Webs vernünftig aus, so stellt man fest, dass es gerade ohne ein Verbiegen der Grundprinzipien möglich ist, skalierbare und ergonomische Anwendungen zu entwickeln. ROCA (Resource-oriented Client Architecture) ist der Name für einen Ansatz, der diesem Muster folgt und sich vor allem durch den richtigen Einsatz von JavaScript sowie die Einhaltung von REST-Prinzipien auszeichnet.

    Read more

    RESTful HTTP - Beyond the Intro Level

    Talk Stefan Tilkov WebTech Conference 2012

    There is probably no developer left who hasn’t been exposed to at least one introduction to REST, and most have by now gathered some first-hand experience. In this session, there will be no introduction, only advanced stuff, such as hypermedia aspects, security, format/resource/representation design, and implementation issues - with room for lots of questions (and hopefully, answers).

    Read more
  • Challenges & Chances in Polyglot Programming

    Talk Stefan Tilkov goto

    Why would anybody want to use more than one programming language? Or why would anyone accept being stuck with just one? In this session, we’ll explore what makes programming languages equal and what makes them different (including paradigms, typing strategy, verbosity, ecosystems and politics), and what your strategy for dealing with conservative and progressive forces within your organization should be. Some real-world experience will be thrown in for good measure.

    Read more
  • Weg mit den alten Zöpfen!

    Talk Stefan Tilkov JAX on Tour 2012

    Man gewöhnt sich an alles, auch an Architekturmuster und -paradigmen. Irgendwann werden sie zu Allgemeingut und so selbstverständlich, dass man überhaupt nicht mehr auf die Idee kommt, sie kritisch zu hinterfragen. Genau das werden wir in dieser Session tun – und an vielem rütteln, was uns unverrückbar scheint. Teilnehmern, die auf Kritik an objektorientierter Programmierung, persistenten Daten, Design Patterns im Allgemeinen oder dem Schichtenmuster im Besonderen allergisch reagieren, sollten dieser Session fernbleiben.

    Read more
  • RESTful HTTP für SOA: Stand der Dinge

    Talk Stefan Tilkov JAX on Tour 2012

    Eine Einführung in REST und RESTful HTTP benötigen die meisten Architekten nicht mehr. Wie aber sieht es aus, wenn man sich tatsächlich dafür entschieden hat, den Architekturstil des Webs für eigene Architekturen konkret auszuprägen? Nach der (versprochen!) kürzesten REST-Einführung der Welt werden in dieser Session bewusst die Probleme angesprochen, die sich bei der konkreten Umsetzung in der Praxis stellen. Ein besonderer Schwerpunkt liegt dabei auf Hypermedia-Aspekten, Sicherheit, Format-, Ressourcen- und Repräsentationsdesign und Implementierungsstrategien – mit reichlich Raum für Fragen und Antworten.

    Read more

    REST-konforme User Interfaces: ROCA und mehr

    Talk Stefan Tilkov JAX on Tour 2012

    Eingezwängt zwischen statusbehafteten Komponenten-Server-Frameworks auf der einen und Single-Page Apps auf der anderen Seite könnte man meinen, die klassische Architektur von Webanwendungen hätte ausgedient. Das stimmt jedoch keineswegs: Schöpft man das Potenzial des Webs vernünftig aus, so stellt man fest, dass es gerade ohne ein Verbiegen der Grundprinzipien möglich ist, skalierbare und ergonomische Anwendungen zu entwickeln. ROCA (Resourceoriented Client Architecture, http://roca-style.org) ist der Name für einen Ansatz, der diesem Muster folgt und sich vor allem durch den richtigen Einsatz von JavaScript sowie die Einhaltung von REST-Prinzipien auszeichnet.

    Read more
  • Polyglot – „Polyglot Programming“? Wer braucht schon mehr als eine Programmiersprache?

    Talk Stefan Tilkov JAX on Tour 2012

    Lange Zeit war die leichteste Entscheidung in einem Projekt die über die einzusetzende Programmiersprache, denn sie wurde in aller Regel schon längst auf Unternehmensebene getroffen. Für viele Entwickler und Architekten in Großunternehmen war Java dabei für mehr als ein Jahrzehnt die offensichtliche Wahl. In letzter Zeit gewinnen diverse Alternativen (wie Scala, JRuby, Groovy oder Clojure) mehr und mehr an Popularität. Dass eine davon Java den Rang ablaufen wird, ist ebenso unwahrscheinlich wie die Vorstellung, dass alle einfach wieder von der Bildfl äche verschwinden. In diesem Vortrag wird die Frage diskutiert, wie Architekten und Entwickler eine Entscheidung für die „richtige“ Programmiersprache treffen können, welche Stärken und Schwächen die einzelnen Alternativen haben, wie sie in einem großen System sinnvoll miteinander kombiniert werden können und welche Auswirkungen auf die Architektur und Anforderungen an das Projektteam sich daraus ergeben.

    Read more
  • Heise Developer Podcast, Episode 36: Modellierst du schon oder programmierst du noch?

    Link Stefan Tilkov Heise Developer Podcast

    Der SoftwareArchitekTOUR-Podcast ging tatsächlich auf Tour und besuchte die rheinjug in Düsseldorf, um im Rahmen einer Podiumsdiskussion über die Frage “Modellierst du schon oder programmierst du noch?” zu diskutieren.

  • Domain Specific Languages

    Article Stefan Tilkov

    In den letzten Jahren hat es sich eingebürgert, bei domänenspezifischen Sprachen zwei Varianten zu unterscheiden: interne und externe. Dabei gewinnen interne DSLs insbesondere durch die steigende Popularität dynamischer Sprachen zunehmend an Bedeutung.

    Read more
  • Heise Developer Podcast, Episode 35: Leichtgewichtige Webapplikationen – nicht nur für mobile Geräte

    Link Stefan Tilkov Heise Developer Podcast

    Die aktuellen Entwicklungen vor allem bei mobilen Endgeräten und Cloud Computing bedeuten für viele Softwareprojekte ein Umdenken in der Architektur.

  • Von der Ad-hoc-Lösung zur Plattform

    Talk Stefan Tilkov webinale

    Ein schneller Start ist ein essenzieller Erfolgsfaktor, und deswegen ist es absolut richtig, ein Webangebot zunächst nur mit dem unbedingt nötigen technischen Aufwand zu starten. Aber wie kann man sicherstellen, dass die IT die Weiterentwicklung nicht ausbremst, weil ein System die Anforderungen an Flexibilität, Durchsatz und Geschwindigkeit auf Dauer nicht mehr erfüllen kann? Wie schafft man eine nachhaltige Basis, ohne in technischer Schönheit zu sterben? In dieser Session werden die Zutaten vorgestellt, die für eine skalierbare, hochperformante und langfristig tragbare Plattform verwendet werden können, ohne dabei gesunden Pragmatismus aus dem Auge zu verlieren.

    Read more
  • Unlearning OOP: How to design Clojure programs

    Talk Stefan Tilkov EuroClojure 2012

    Your background is in OOP languages and you have become intrigued by Clojure. You know that things are different, and that continuing to design your programs in the same way you did in the past is likely going to cause problems. In this session, we will take a look at concepts that are likely to be familiar to you, such as encapsulation, type and class hierarchies, modularization, and domain modeling, and show what the analogies in idiomatic Clojure are. We will also take a look at some of the additional tools Clojure offers that go way beyond what you are used to — hopefully setting you off on your way to become a great Clojure programmer.

    Read more
  • Heise Developer Podcast, Episode 34: Ausbildung zum Architekten

    Link Stefan Tilkov Heise Developer Podcast

    SoftwareArchitekTOUR erläutert, warum Ausbildungsprogramme Sinn machen und Zertifizierung nicht nur als Geschäft von Anbietern dient.

  • Erlang, Clojure & Co.: Was der Mainstream von Alternativen lernen kann

    Talk Gernot Starke, Stefan Tilkov jax 2012

    Wer sich mit spannenden, neuen und wiederentdeckten exotischen Technologien beschäftigen möchte, kann sich aktuell über Material nicht beklagen. Aber was bringt das dem normalen Entwickler, der sich in den engen Grenzen technischer und organisatorischer Rahmenbedingungen bewegen muss? In diesem Vortrag diskutieren wir, welche Ansätze sich aus “Alternativen” in den Mainstream übernehmen lassen.

    Read more
  • Softwarearchitektur im Großen

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

    Read more
  • Heise Developer Podcast, Episode 33: Die Rolle des Softwarearchitekten

    Link Stefan Tilkov Heise Developer Podcast

    Eine Episode über die Erfahrungen, Kompetenzen und Fähigkeiten, die ein Softwarearchitekt benötigen sollte.

  • Web und Cloud fürs Unternehmen – was interessieren uns schon Twitter, Facebook, Google und Co.?

    Talk Stefan Tilkov, Oliver Wolf OOP 2012

    Natürlich ist interessant, was die ganz Großen im Web tun, um mit der Last von mehreren Hundert Millionen Benutzern fertig zu werden. Aber welche konkreten Lehren können Entwickler in Unternehmen daraus ziehen? Der Vortrag beschreibt, welche Prinzipien und Ansätze auf den Kontext einer Unternehmensanwendung und auf kleinere externe Web-Anwendung übertragbar sind.

    Read more

    Softwarearchitektur für große Systeme

    Talk Stefan Tilkov OOP 2012

    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.

    Read more
  • Moderne Web-Architektur

    Talk Till Schulte-Coerne, Stefan Tilkov OOP 2012

    Die Architekturen von Web-Anwendungen haben sich in den letzten Jahren rasant entwickelt. In diesem Tutorial wird gezeigt, wie eine Web-Anwendung State-of-the-Art aufgebaut wird. Dabei stehen keine Programmiersprache oder einzelne Frameworks, sondern die Gesamtarchitektur im Mittelpunkt, vom optimierten Frontend über eine modulare und skalierbare Geschäftslogik bis hin zur passenden Persistenz. Buzzwords wie REST, Distributed Caching, Sharding, NoSQL werden dabei enttarnt und auf ihre konkreten Auswirkungen auf die Architektur hin untersucht.

    Read more
  • „Software-Architekturen im Großen“

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

    Read more
  • Enterprise IT vs. WWW

    Talk Stefan Tilkov 16. OBJEKTspektrum Information Days - iSAQB Architekturtag

    Jahrelang haben wir als Architekten von Enterprise-Systemen die Bemühungen der PHP-Script-Kiddies belächelt, “ordentliche” Systeme auf die Beine zu stellen. Wer richtig spannende Systeme bauen wollte, konnte dies vor allem im Kontext großer Unternehmenssysteme tun. Aber die Welt hat sich geändert: Mittlerweile sind die Anwendungen mit den höchsten nichtfunktionalen Anforderungen mitnichten die unternehmensinternen, sondern die globalen Webanwendungen wie Google, Amazon.com, Facebook & Co. Dieser Vortrag stellt die Architekturkonzepte erfolgreicher, großer Webanwendungen vor und beleuchtet, welche davon für unternehmensinterne Systeme eingesetzt werden können und wie diese die Softwarearchitektur beeinflussen. Dabei stehen vor allem einfache Protokolle, die Architektur des Web und der Nutzen von Standard-Infrastrukturelementen im Vordergrund.

    Read more

    „Software-Architekturen im Großen“

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

    Read more

    Heise Developer Podcast, Episode 32: Business Process Management

    Link Stefan Tilkov Heise Developer Podcast

    Eine Episode mit dem BPEL-Experten Daniel Lübke über Business Process Management (BPM) und die allgemeine Frage nach dessen Sinn und Unsinn.

  • „Software-Architekturen im Großen“

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

    Read more
  • Workshop: Architekturen für hochskalierbare Webanwendungen

    Talk Stefan Tilkov, Till Schulte-Coerne W-JAX 2011

    Für die Entwicklung von Webanwendungen gibt es eine ganze Reihe unterschiedlicher Realisierungsalternativen. Die Entscheidung für eine bestimmte Programmiersprache oder ein bestimmtes Webframework ist dabei nur ein kleiner Baustein, denn eine Webanwendung, insbesondere wenn Sie hohen, nichtfunktionalen Anforderungen unterliegt, ist eine Gesamtlösung, die aus vielen individuell entwickelten, aber auch vielen Standardkomponenten besteht. Der Workshop beschäftigt sich dazu mit den zum Teil wenig bekannten Details der Basisprotokolle, mit den Auswirkungen, die sich aus der internen Anwendungsarchitektur für die Gesamtarchitektur ergeben, mit Frontend-Optimierungen und der Einbettung in die Gesamtinfrastruktur aus Standardkomponenten wie Intermediaries und den Invidualbestandteilen.

    Read more
  • Node.js: eine Einführung

    Talk Stefan Tilkov W-JAX 2011

    Node.js ist ein Framework zur Umsetzung von Netzwerkapplikationen in JavaScript, dessen Unterstützung für Funktionen höherer Ordnung perfekt zu einem Programmiermodell passt, das Non-blocking I/O in den Mittelpunkt stellt. In dieser Session wird Node.js und das umgebende Ökosystem vorgestellt und gezeigt, wie sich auf dieser Basis hochperformante Clients und Server implementieren lassen.

    Read more
  • Softwarearchitektur im Großen

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

  • Practical Cloud Computing for Enterprise

    Talk Stefan Tilkov JBoss OneDayTalk 2011

    Cloud Computing, the industry’s next big buzzword, is applied liberally to ensure services and products are perceived as being cool and innovative. But what’s a developer to do to exploit the Cloud’s (alleged and real) benefits? In this session, we’ll take a look at different Cloud Computing technologies, product categories and usage scenarios, and the architectural trade-offs involved in deciding when to use which. Topics covered include sharding, non-relational datastores, and parallel processing strategies, their advantages and disadvantages compared to “classical” approaches, and ways to combine the old with the new.

    Read more
  • Heise Developer Podcast, Episode 31: Webarchitekturen

    Link Stefan Tilkov Heise Developer Podcast

    Eine Episode über die Architektur von Webanwendungen inklusive Frontend-Optimierungen, die Rolle von Programmiersprachen und Webframeworks, Skalierbarkeit sowie die Einbettung in die Gesamtarchitektur.

  • HTTP und REST

    Book Stefan Tilkov

    Neuauflage des Buches “REST und HTTP: Einsatz der Architektur des Web für Integrationsszenarien” von Stefan Tilkov.

  • Architekturen für hochskalierbare Webanwendungen

    Talk Stefan Tilkov, Till Schulte-Coerne JAX 2011

    Für die Entwicklung von Webanwendungen gibt es eine ganze Reihe unterschiedlicher Realisierungsalternativen. Die Entscheidung für eine bestimmte Programmiersprache oder ein bestimmtes Webframework ist dabei nur ein kleiner Baustein. Denn eine Webanwendung, insbesondere wenn Sie hohen, nichtfunktionalen Anforderungen unterliegt, ist eine Gesamtlösung, die aus vielen individuell entwickelten, aber auch vielen Standardkomponenten besteht. Der Workshop zeigt zunächst systematisch, aus welchen Architekturelementen eine Webanwendung bzw. Website besteht. Für die verschiedenen Schichten werden verschiedene State-of-the-Art-Alternativen vorgestellt. Diese werden schließlich in Beziehung zu unterschiedlichen Anforderungen wie Entwicklungs- und Betriebskosten, Verfügbarkeit, Konsistenz, Performance, Wartbarkeit und Investitionssicherheit gesetzt.

    Read more
  • Panel: Java - die nächste Dekade

    Talk Stefan Tilkov, Eberhard Wolff, Lothar Wieske JAX 2011

    Gerade in letzter Zeit gab es im Java-Ökosystem durch die Übernahme von Sun durch Oracle und Konflikte zwischen Oracle und Google bzw. der Apache Software Foundation einige Verunsicherung. Gleichzeitig tauchen neue Technologietrends wie Cloud, mobile Endgeräte und Social Media auf, denen Java begegnen muss. Genügend Anlass, die Zukunft von Java einmal zu diskutieren. Dieses Panel bietet die Möglichkeit, mit dem Advisory Board der Artikelserie im Java Magazin gerne auch kontrovers zu diskutieren und es auszufragen. Nutzen Sie diese Chance!

    Read more
  • Programmiersprachen: Zentrale Architekturentscheidung oder unwichtiges Detail?

    Talk Stefan Tilkov JAX 2011

    Lange Zeit war die leichteste Entscheidung in einem Projekt die über die einzusetzende Programmiersprache - denn sie wurde in aller Regel schon längst auf Unternehmensebene getroffen. Für viele Entwickler und Architekten in Großunternehmen war Java dabei für mehr als ein Jahrzehnt die offensichtliche Wahl. In letzter Zeit gewinnen diverse Alternativen (wie Scala, JRuby, Groovy oder Clojure) mehr und mehr an Popularität. Dass eine davon Java den Rang ablaufen wird, ist ebenso unwahrscheinlich wie die Vorstellung, dass alle einfach wieder von der Bildfläche verschwinden. In diesem Vortrag wird die Frage diskutiert, wie Architekten und Entwickler eine Entscheidung für die “richtige” Programmiersprache treffen können, welche Stärken und Schwächen die einzelnen Alternativen haben, wie sie in einem großen System sinnvoll miteinander kombiniert werden können und welche Auswirkungen auf die Architektur und Anforderungen an das Projektteam sich daraus ergeben.

    Read more
  • Clojure — in der Praxis?

    Article Stefan Tilkov

    Wer braucht schon eine neue Programmierprache? Schließlich lässt sich alles in jeder Sprache erledigen, die Turing-complete ist; ob es nun C++, C# oder Java ist – irgendwie ist doch alles das Gleiche. Die wirklich spannenden Themen liegen ganz woanders: in der Gesamtarchitektur, der Entwicklungsmethodik, sozialen Faktoren, der Firmenpolitik usw. oder nicht? Spielen Programmiersprachen wirkliche eine Rolle oder sind sie vergleichsweise egal? Wie kann der Aufwand für das Erlernen und – viel wichtiger – das Einführen einer neuen Sprache gerechtfertigt werden? Am Beispiel Clojure diskutieren wir in diesem Artikel die wichtigsten Argumente.

    Read more
  • REST in Java

    Talk Stefan Tilkov 33rd Degree Conference

    REST, the architectural style of the Web, is continuously gaining popularity, whether it’s external Web APIs or internal integration scenarios. This talk will show the different options a Java developer has for building both RESTful client and server applications, including the servlet API, Restlet, JAX-RS and its various extensions as well as the Spring framework. We’ll also address some of the doubts regarding the ease with which both human-facing Web apps and Web Services can be developed, and show how RESTful HTTP not only leads to a better overall architecture, but also to increased developer productivity.

    Read more
  • Practical Guide to using REST for SOA

    Talk Stefan Tilkov 33rd Degree Conference

    Whether you’ve already managed to convince your higher-ups that REST is the way to go, can decide to do so for yourself, or are still looking for ways to do the convincing, at one point in time you’llhave to actually start doing stuff as opposed to talk about it. In this talk, we’ll take a look at some practical recipes on how to use RESTful approaches for SOA, including options for mixing it with WS-*, picking the right data formats, (re-)introducing infrastructure, dealing with RESTful SOA governance and other aspects deemed “enterprisey” by the cool kids.

    Read more
  • Heise Developer Podcast, Episode 29: Cloud Computing mit Windows Azure

    Link Stefan Tilkov Heise Developer Podcast

    Eine Episode über das Cloud Computing mit Microsofts Cloud-Plattform Windows Azure, die zunehmend besser wird.

  • Renaissance der Vielfalt: Aktuelles zur Entwicklung von Programmiersprachen

    Article Stefan Tilkov iX 3/2011

    Das Rennen um die “richtige” Programmiersprache schien schon entschieden, da tauchen auf einmal zahlreiche neue und wiederentdeckte Sprachen am Horizont des interessierten Entwicklers auf. Sie versprechen neben höherer Produktivität auch Antworten auf die Multi-Core-Revolution, die einfachere Umsetzung fachlicher Anforderungen und die Reduktion der Code-Menge um mindestens eine Größenordnung.

  • Architekturen für hochskalierbare Webanwendungen

    Talk Stefan Tilkov, Till Schulte-Coerne Entwickler Tage 2011

    Der Workshop besteht aus detaillierten Betrachtungen der Protokolle und gängiger Technologien sowie aus der Beleuchtung verschiedener Szenarien und Architekturvarianten diese sinnvoll einzusetzen. Dabei ist er aber größtenteils unabhängig von Frameworks bzw. Programmiersprachen gestaltet und beleuchtet diese höchstens am Rande. Der Workshop soll ein umfassendes Bild verschiedener Varianten zur Erstellung von Web-Applikationen für unterschiedliche Einsatzszenarien vermitteln, wofür Vor- und Nachteile verschiedener Ansätze diskutiert werden. Außerdem werden Architekturen und Methoden vorgestellt, um sichere und performante Webanwendungen zu entwickeln sowie vorhandene Anwendungen zu beschleunigen bzw. zu entlasten.

    Read more
  • Heise Developer Podcast, Episode 28: Bedeutung, Einsatzszenarien und Perspektive von Lisp

    Link Stefan Tilkov Heise Developer Podcast

    Die Episode geht auf die Historie der Programmiersprache Lisp ein und beleuchtet ihre Bedeutung für die heutige Softwareentwicklung.

  • Cloud Computing im praktischen Einsatz

    Talk Stefan Tilkov, Arnd Kleinbeck SIGS DATACOM

    Cloud Computing kann auf theoretischer Ebene als Synergie aus Utility Computing, Grid Computing, Virtualisierung und Service-orientierten Architekturen bezeichnet werden - oder ganz pragmatisch als die Nutzung des Internets, um Dienste zu nutzen, Daten abzulegen oder diese zu verarbeiten. Abseits aller Diskussionen und Definitionen interessiert Anwender heute jedoch vor allem eines: Wie lassen sich die unterschiedlichen Arten von Cloud Computing in der Praxis nutzen? Welche Risiken bestehen und wie lassen sie sich adressieren? Dieses Seminar liefert eine sehr kurze theoretische Definition der grundlegenden Begriffe und setzt den Schwerpunkt darauf, welche Nutzungsszenarien bestehen und wie diese mit den unterschiedlichen Angeboten öffentlicher und unternehmensinterner Cloud-Plattformen umgesetzt werden können. Dabei werden zahlreiche praktische Beispiele "live" vorgestellt.

    Aus dem Inhalt:

    • Definitionen, Grundbegriffe, Abgrenzungen
    • Vor- und Nachteile des Cloud-Ansatzes
    • Public- und Private-Cloud-Anbieter
    • Skalierbarkeit und Elastizität
    • RDBMS-Alternativen
    • Parallelverarbeitung per Map-Reduce
    • Cloud-Applikationsplattformen
    • Praktische Nutzungsansätze
    • Risiken und Risikobehandlung

    Seminarziel:

    Die Teilnehmer lernen die tatsächlichen Innovationen aus dem Umfeld von Cloud Computing vom Hype zu trennen und erfahren, ob und welche Einsatzmöglichkeiten für ihre tägliche Arbeit bestehen.

    Zielgruppe:

    Systemarchitekten, Software-Entwickler, RZ-Mitarbeiter

    Voraussetzungen:

    keine

    Read more
  • Dreiteiliger Clojure-Artikel, Teil 1: Clojure - in der Praxis?

    Article Stefan Tilkov Javamagazin, 2.2011

    Wer braucht schon eine neue Programmierprache? Schließlich lässt sich alles in jeder Sprache erledigen, die Turing-complete ist; ob es nun C++, C# oder Java ist – irgendwie ist doch alles das Gleiche. Die wirklich spannenden Themen liegen ganz woanders, in der Gesamtarchitektur, der Entwicklungsmethodik, den sozialen Faktoren, der Firmenpolitik usw. Oder nicht? Spielen Programmiersprachen wirklich eine Rolle, oder sind sie vergleichsweise egal? Wie kann der Aufwand für das Erlernen und – viel wichtiger – das Einführen einer neuen Sprache gerechtfertigt werden? Am Beispiel Clojure diskutieren wir in diesem Artikel die wichtigsten Argumente.

  • Enterprise Google? Nutzung von Google-Services im Unternehmen

    Talk Stefan Tilkov, Till Schulte-Coerne OOP 2011

    Mit der Google App Engine (GAE) und den GData-Services stellt Google eine Cloud Computing-Plattform zur Verfügung, die auch Normalsterblichen höchstmögliche Skalierbarkeit bieten soll. Aber ist sie auch für einen Unternehmenseinsatz geeignet? In dieser Session betrachten wir nach einer kurzen Einführung die Herausforderungen, die sich beim Einsatz der Google-Plattform im Enterprise-Kontext ergeben, insbesondere bei der Integration in hybride Gesamtlösungen.

    Read more
  • Praktisches Cloud Computing für Unternehmen

    Talk Stefan Tilkov OOP 2011

    „Cloud Computing“ wird aktuell von den Einen als Zukunft der IT, von den Anderen als nächste durch’s Dorf getriebene Sau betrachtet - mit allen Schattierungen dazwischen. In dieser Session werden konkrete Einsatzszenarien erläutert und gezeigt, wie und mit welchen kommerziellen und Open Source-Technologien und -Produkten diese in der Praxis umgesetzt werden können. Der Fokus liegt dabei auf dem Unternehmenseinsatz, sowohl mit externen Anbietern als auch in einer unternehmensinternen „Private Cloud“.

    Read more

    Web-Services versus REST - Das ultimative Duell

    Talk Stefan Tilkov, Nicolai Josuttis OOP 2011

    Im SOA-Umfeld gelten Web-Services als Standard. Allerdings gibt es daran auch jede Menge Kritik. Eine viel diskutierte Alternative ist REST bzw. RESTful HTTP, die von ihren Verfechtern auch als einzig wahre „Web“-Service-Technologie betrachtet wird. Die derzeitige Auseinandersetzung mit diesen beiden Konzepten wird mitunter recht dogmatisch geführt. Zeit also, einmal mit wirklichen Fakten auf den Punkt zu kommen. Stefan Tilkov als Vertreter von REST und Nicolai Josuttis als Vertreter von Web-Services treten in dieser Session deshalb zum „ultimativen Duell“ an. Erlaubte Waffen sind dabei nur Fakten und sinnvolle Beispiele aus der Praxis.

    Read more
  • Heise Developer Podcast, Episode 27: Interne DSLs

    Link Stefan Tilkov Heise Developer Podcast

    Eine Episode über interne DSLs, also domänenspezifische Sprachen, die in eine bestehende Programmiersprache eingebettet werden.

  • No REST for the Wicket

    Article Michael Plöd, Stefan Tilkov Javamagazin 1.2011

    REST ist ein aktuell von großer Hype-Energie beschleunigtes Thema, über das viel zu lesen ist. Häufig wird REST bzw. RESTful HTTP jedoch ausschließlich als leichtgewichtige Alternative zu „klassischen“ Web Services betrachtet und nicht als Architekturstil, dem auch Webanwendungen folgen sollten. Aber REST als Architektur des Web hat genau darin seine Wurzeln – die Trennung zwischen der Anwendungs-zu-Anwendungs-Kommunikation und der Darstellung einer Benutzeroberfläche für einen Endanwender ist aus dieser Sicht künstlich.

  • High Performance Parallel Computing - auf Multi-Core-Plattformen und in verteilten Umgebungen

    Talk Stefan Tilkov jax on Tour

    Nachdem die Leistungssteigerung durch die fortwährende Erhöhung der Taktfrequenz der Vergangenheit angehört, werden aktuelle Rechnersysteme mit immer mehr Prozessoren bzw. Prozessorkernen ausgestattet. Gleichzeitig führt die nahezu unbegrenzte Verfügbarkeit von Systemressourcen durch Cloud Computing-Plattformen und durch günstige Commodity-Hardware zu drastisch sinkenden Kosten für Rechner, die zu einem Verbund zusammengeschaltet werden. In dieser Session werden Mechanismen zur effizienten Programmierung paralleler Systeme vorgestellt, sowohl auf Multi-Core-Systemen als in auch in Rechner-Clustern. Zu den Themen zählen fortgeschrittene APIs aus dem Java-Umfeld, die Möglichkeiten alternativer, insbesondere funktionaler Sprachen und hochskalierbare Frameworks auf Map/Reduce-Basis.

    Read more

    NoSQL: Persistenzoptionen jenseits des RDBMS

    Talk Stefan Tilkov jax on Tour

    Relationale Datenbankensysteme als Ablageort für langlebige Anwendungsdaten sind die Standardoption, die nach einer mehr oder weniger verklungenen OODB-Euphorie in den 90er Jahren über ein Jahrzehnt lang nicht in Frage gestellt wurde. Mittlerweile jedoch führen Anforderungen aus dem Umfeld hochskalierender Web-Anwendungen sowie die generell gestiegene Bereitschaft, Althergebrachtes in Frage zu stellen, zu einer wahren Flutwelle von alternativen Systemen, die unter dem Stichwort “NoSQL” zusammengefasst werden. Der Vortrag stellt die wichtigsten Kategorien dieser Gattung (dokumentorientierte, spaltenorientierte, graphorientierte und Key-Value-Datenbanken) vor und zeigt anhand einiger konkreter Vertreter (Redis, CouchDB und MongoDB), wie diese in der Praxis genutzt werden können. Schließlich werden Vor- und Nachteile der Systeme im Vergleich zueinander sowie mit traditionellen RDBMS diskutiert und eine Entscheidungshilfe für realistische Szenarien gegeben.

    Read more
  • Skalierbare Web-Architekturen

    Talk Stefan Tilkov jax on Tour

    Für die Entwicklung von Webanwendungen gibt es eine ganze Reihe unterschiedlicher Realisierungsalternativen. Die Entscheidung für eine bestimmte Programmiersprache oder ein bestimmtes Webframework ist dabei nur ein kleiner Baustein. Denn eine Webanwendung – insbesondere, wenn Sie hohen nichtfunktionalen Anforderungen unterliegt – ist eine Gesamtlösung, die aus vielen individuell entwickelten, aber auch vielen Standardkomponenten besteht. Der Workshop zeigt, aus welchen Architekturelementen eine Webanwendung/Website besteht, welche grundsätzlichen Alternativen für die Komponenten bestehen und wie sich diese auf Entwicklungs- und Betriebskosten, Verfügbarkeit, Konsistenz, Wartbarkeit und Investitionssicherheit, vor allem aber auf Performanz und SKalierbarkeit auswirken.

    Read more

    Einsatz von REST und HTTP für Systemintegration

    Talk Stefan Tilkov jax on Tour

    Die Ziele von SOA - lose Kopplung, Wiederverwendung, Modularisierung, Standardisierung und Herstellerunabhängigkeit - lassen sich am besten mit Web Services auf Basis von SOAP und WSDL erreichen. Richtig oder falsch? Falsch! Denn tatsächlich haben Web Services mit dem Web wenig zu tun, und es sind die angeblich für den Enterprise-Einsatz ungeeigneten Webtechnologien, die sich sehr viel besser eignen. In diesem Vortrag wird REST und RESTful HTTP vorgestellt und es wird gezeigt, welche Vorteile sich für eine unternehmensweite Architektur ergeben.

    Read more

    Jax on Tour 2010

    Talk Stefan Tilkov, Pavlo Baron, Adam Bien, Markus Völter Jax on Tour 2010

    Im Dezember geht die JAX das erste Mal on Tour nach Düsseldorf. Das neue Tochterevent der JAX – der Konferenz für ganzheitliches technisches Know-how im Java- und Webumfeld - versorgt Sie insgesamt drei Tage lang mit dem wichtigsten Know-how zum Thema Software Architektur. Dabei profitieren Sie vom geballten Wissen und der Praxiserfahrung von vier der bedeutensten deutschsprachigen Architektur-Experten.

    Sie lernen Sie unter anderem wie Sie eine Anwendung optimal aufbauen, welche Strategien besonders erfolgreich sind, welche Stärken und Schwächen verschiedene Technologien haben oder wie Sie bei der Implementierung konkret vorgehen sollten. Am Mittwoch- und Donnerstagabend finden jeweils die Speaker Panel statt - auch das sollten Sie auf keinen Fall verpassen!

    Read more
  • Power Workshop „Architekturen für hochskalierbare Webanwendungen“

    Talk Stefan Tilkov, Till Schulte-Coerne w-jax 10

    Für die Entwicklung von Webanwendungen gibt es eine ganze Reihe unterschiedlicher Realisierungsalternativen. Die Entscheidung für eine bestimmte Programmiersprache oder ein bestimmtes Webframework ist dabei nur ein kleiner Baustein. Denn eine Webanwendung - insbesondere, wenn Sie hohen nichtfunktionalen Anforderungen unterliegt - ist eine Gesamtlösung, die aus vielen individuell entwickelten, aber auch vielen Standardkomponenten besteht. Der Workshop zeigt zunächst systematisch, aus welchen Architekturelementen eine Webanwendung bzw. Website besteht. Für die verschiedenen Schichten werden verschiedene State-of-the-art-Alternativen vorgestellt. Diese werden schließlich in Beziehung zu unterschiedlichen Anforderungen wie Entwicklungs- und Betriebskosten, Verfügbarkeit, Konsistenz, Performance, Wartbarkeit und Investitionssicherheit gesetzt.

    Read more
  • Enterprise IT vs. WWW

    Talk Stefan Tilkov Devoxx

    For years, the enterprise IT community used to believe they were the big guys, and those Web folks were just script kiddies building toy apps with PHP. But by now, the really interesting systems are those built on the Web, with non-functional requirements that make even the biggest banking or insurance app pale in comparison. Integration, as practiced on the Web, is also widely different from the typical enterprise IT approach - yet it seems to yield results that outshine years of effort in most large companies.

    In this session, we’ll take a look at how the typical enterprise IT landscape can benefit from the Web’s architecture, what Java developers need to learn to be part of this, and why the whole idea of “applications” is going to disappear.

    Read more
  • Cloud Computing im Unternehmen: Praktischer Nutzen jenseits des Hypes

    Article Stefan Tilkov Objektspektrum, Ausgabe 11/2010

    Die immer schneller aufeinander folgenden „Hypes“ hinterlassen Spuren: Die meisten Entscheider in der IT-Branche begegnen allem Neuen mittlerweile zunächst einmal mit großer Skepsis. So wird auch das Thema Cloud Computing zunächst mit Vorsicht zur Kenntnis genommen, eine praktische Nutzung ist in vielen Unternehmen nicht oder nur sehr zaghaft geplant. Dabei lassen sich mit dem Ansatz sehr schnell sehr konkrete Vorteile erzielen, und im Gegensatz zu anderen angeblich revolutionären Paradigmenwechseln wird bei näherer Beschäftigung mit dem Thema schnell klar, dass darin allein aus wirtschaftlichen Gründen ganz eindeutig die Zukunft liegt.

    RESTful HTTP: Patterns und Antipatterns

    Talk Stefan Tilkov w-jax 10

    REST als Architekturstil und das Web als konkrete Umsetzung davon werden als Integrationsalternative immer populärer. Aber auch hier gilt, dass nicht überall, wo etwas draufsteht, das Entsprechende auch drin ist: Viele Dienste, die sich als “RESTful” bezeichnen, verstoßen gegen alle Grundprinzipien. In diesem Vortrag werden typische positive und negative Muster zur Nutzung von REST vorgestellt.

    Read more

    Using JavaScript to Build High-Performance Network Programs

    Link Stefan Tilkov, Steve Vinoski Verivue; IEEE Computer Society November 2010

    I had the great pleasure of being invited to co-author one of Steve Vinoski’s Functional Web columns – a big deal for me, as Steve is sort of a childhood hero for me (well, not really, but his technical writings on all things CORBA hugely inspired me when I started my career). The article’s topic is node.js, one of the most fascinating and disruptive approaches to network programming I’ve seen in quit a while.

  • Enterprise IT vs. WWW

    Talk Stefan Tilkov MID Insight 2010 - 8. Innovator Anwenderkonferenz

    Jahrelang haben wir als Architekten von Enterprise-Systemen die Bemühungen der PHP-Script-Kiddies belächelt, “ordentliche” Systeme auf die Beine zu stellen. Wer richtig spannende Systeme bauen wollte, konnte dies vor allem im Kontext großer Unternehmenssysteme tun. Aber die Welt hat sich geändert: Mittlerweile sind die Anwendungen mit den höchsten nichtfunktionalen Anforderungen mitnichten die unternehmensinternen, sondern die globalen Webanwendungen wie Google, Amazon.com, Facebook & Co.

    Dieser Vortrag stellt die Architekturkonzepte erfolgreicher, großer Webanwendungen vor und beleuchtet, welche davon für unternehmensinterne Systeme eingesetzt werden können und wie diese die Softwarearchitektur beeinflussen.

    Read more
  • Practical Guide to using REST for SOA

    Talk Stefan Tilkov QCon

    Whether you’ve already managed to convince your higher-ups that REST is the way to go, can decide to do so for yourself, or are still looking for ways to do the convincing, at one point in time you’llhave to actually start doing stuff as opposed to talk about it. In this talk, we’ll take a look at some practical recipes on how to use RESTful approaches for SOA, including options for mixing it with WS-*, picking the right data formats, (re-)introducing infrastructure, dealing with RESTful SOA governance and other aspects deemed “enterprisey” by the cool kids.

    Read more
  • Heise Developer Podcast, Episode 25: Systematischer Einsatz von Designtaktiken

    Link Stefan Tilkov Heise Developer Podcast

    Wie sich das Umgehen mit nichtfunktionalen Eigenschaften dank Designtaktiken systematisieren lässt, zeigt die aktuelle Episode des SoftwareArchitekTOUR-Podcasts.

  • Java User Group - Parallel Processing auf Multi-Core-Plattformen mit Clojure

    Talk Stefan Tilkov Java User Group

    Nachdem die Entwicklung von typischen Rechnersystemen mittlerweile nicht mehr nur im Serverumfeld, sondern auch bei Desktop- und Mobilsystemen in Richtung Multi-Core anstelle von immer höheren Taktraten geht, stellt sich die Frage nach dem geeigneten Programmiermodell. Clojure ist eine JVM-Sprache mit Lisp-Wurzeln, die von Grund auf für die Parallelverarbeitung ausgelegt ist und dabei mit vielen bekannten Mustern aus der OO-Welt bricht. Im Vortrag werden nach einer Einführung in die Sprache die von Clojure unterstützten Mechanismen, insbesondere Agenten und Software Transactional Memory, vorgestellt und ihr praktischer Nutzen demonstriert. Dabei wird insbesondere auch auf die Integrationsfähigkeit in klassische Java-Anwendungen eingegangen.

    Read more
  • RESTful HTTP: Using the Web for SOA

    Talk Stefan Tilkov SOA & Cloud Symposium

    REST is the architecture of the World Wide Web, and it has recently become noticed as a new contender for the hype of the day. In essence, RESTful HTTP means nothing more than applying the Web’s technologies the way they were meant to be used, which is a strong contrast to the way Web Services based on SOAP, WSDL and the WS-* ecosystem abuse it. The benefits of using HTTP correctly include a vast variety of infrastructure components, proven interoperability, unlimited scalability and a strong architectural model governed my meaningful constraints. But while many SOA practicioners have started to accept RESTful HTTP as a viable strategy for simple use cases, there is still a wide-spread belief that more advanced cases require more complicated approaches. In this talk, we will take a look at the core ideas and principles behind REST and RESTful HTTP, address some common doubts, and show how to exploit the benefits of REST to achieve SOA goals for both basic and advanced usage scenarios. Topics covered include documentation, description and discovery, reliable communication, eventing, transactions and hypermedia. Finally, we will conclude with a list of recommendations on how to introduce a RESTful approach in step-by-step fashion into a large enterprise’s overall architecture.

    Read more
  • SOA auf Basis von RESTful HTTP

    Talk Stefan Tilkov WebAppDays 2010

    Die Ziele von SOA - lose Kopplung, Wiederverwendung, Modularisierung, Standardisierung und Herstellerunabhängigkeit - lassen sich am besten mit Web Services auf Basis von SOAP und WSDL erreichen. Richtig oder falsch? Falsch! Denn tatsächlich haben Web Services mit dem Web wenig zu tun, und es sind die angeblich für den Enterprise-Einsatz ungeeigneten Webtechnologien, die sich sehr viel besser eignen. In diesem Vortrag wird REST und RESTful HTTP vorgestellt und es wird gezeigt, welche Vorteile sich für eine unternehmensweite Architektur ergeben.

    Read more
  • SOA auf Basis von RESTful HTTP

    Talk Stefan Tilkov BASTA!

    Die Ziele von SOA - lose Kopplung, Wiederverwendung, Modularisierung, Standardisierung und Herstellerunabhängigkeit - lassen sich am besten mit Web Services auf Basis von SOAP und WSDL erreichen. Richtig oder falsch? Falsch! Denn tatsächlich haben Web Services mit dem Web wenig zu tun, und es sind die angeblich für den Enterprise-Einsatz ungeeigneten Webtechnologien, die sich sehr viel besser eignen. In diesem Vortrag wird REST und RESTful HTTP vorgestellt und es wird gezeigt, welche Vorteile sich für eine unternehmensweite Architektur ergeben.

    Read more

    Heise Developer Podcast, Episode 24: Testing & Softwarearchitektur

    Link Stefan Tilkov Heise Developer Podcast

    Die Episode zum Thema “Testen” zeigt, dass der Softwarearchitekt sich dem Thema ausgiebig widmen sollte, da er als wichtiger Ansprechpartner zu Testentscheidungen fungiert.

  • Heise Developer Podcast, Episode 23: Domänenspezifische Sprachen

    Link Stefan Tilkov Heise Developer Podcast

    Eine Episode über Domain-Specific Languages (DSLs) im Allgemeinen sowie über Eclipse Xtext und JetBrains’ MPS (Meta Programming System) im Besonderen, die unterschiedliche Ansätze zur Implementierung textueller DSLs verwenden.

  • Clojure: Ein pragmatisches Lisp für die JVM

    Article Stefan Tilkov heise Developer Juli 2010

    Man kann das Gefühl bekommen, Programmiersprachen auf Basis der Java Virtual Machine (JVM) gebe es im Dutzend billiger: JRuby, Groovy, Scala, Jython und das gute alte Java – alle ringen um des Programmierers Gunst. Vielen erschien Scala als der bereits gesetzte “Gewinner”, aber in den letzten Monaten konkurriert zumindest in Sachen öffentlicher Aufmerksamkeit deutlich eine andere Sprache – Clojure.

  • Heise Developer Podcast, Episode 22: NoSQL - Alternative zu relationalen Datenbanken

    Link Stefan Tilkov Heise Developer Podcast

    Bei dieser Episode geht es um sogenannte NoSQL-Datenbanksysteme, ihre grundlegenden Eigenschaften und um die Frage, ob sie relationale Datenbanken ersetzen können.

  • TechTalk #15 zu „RESTful HTTP: Die Architektur des Web“

    Talk Stefan Tilkov TechTalk

    Lose Kopplung, Wiederverwendung, Modularisierung, Standardisierung und Herstellerunabhängigkeit lassen sich am besten mit Web Services auf Basis von SOAP und WSDL erreichen. Richtig oder falsch? Falsch! Denn tatsächlich haben Web Services mit dem Web wenig zu tun, und es sind die angeblich für den Enterprise-Einsatz ungeeigneten Webtechnologien, die sich sowohl unternehmensintern als auch -übergreifend für Integrationsszenarien sehr viel besser eignen. In diesem Vortrag werden REST und RESTful HTTP vorgestellt, mit SOAP/WSDL-Web Services verglichen und gezeigt, welche Vorteile sich für eine unternehmensweite Architektur ergeben.

    Read more
  • The State of RESTful Rails

    Talk Stefan Tilkov RailsWayCon

    The Rails framework has been among the first to recognize the importance of RESTful HTTP as an ingredient for scalable Web systems. In this session, we’ll take inventory of what’s offered by Rails 2 and 3, as well as examine what’s available to support RESTful clients, servers and intermediaries in the wider Ruby ecosystem. Topics include caching, conditional requests, RESTful middleware, and a demystification of the dreaded “HATEOAS” acronym.

    Read more
  • RESTful SOA

    Talk Stefan Tilkov Jazoon 2010

    REST is the architecture of the World Wide Web, and it has recently become noticed as a new contender for the hype of the day. But in essence, RESTful HTTP means applying the Web’s technologies the way they were meant to be used, which is a strong contrast to the way Web Services based on WS-* abuse it.

    In this talk, we will take a look at the core ideas and principles behind REST and RESTful HTTP, address some common doubts, and show how to exploit the benefits of REST to achieve SOA goals.

    Read more
  • Parallel Processing auf Multi-Core-Plattformen mit Clojure

    Talk Stefan Tilkov Java User Group Düsseldorf

    Nachdem die Entwicklung von typischen Rechnersystemen mittlerweile nicht mehr nur im Serverumfeld, sondern auch bei Desktop- und Mobilsystemen in Richtung Multi-Core anstelle von immer höheren Taktraten geht, stellt sich die Frage nach dem geeigneten Programmiermodell. Clojure ist eine JVM-Sprache mit Lisp-Wurzeln, die von Grund auf für die Parallelverarbeitung ausgelegt ist und dabei mit vielen bekannten Mustern aus der OO-Welt bricht. Im Vortrag werden nach einer Einführung in die Sprache die von Clojure unterstützten Mechanismen, insbesondere Agenten und Software Transactional Memory, vorgestellt und ihr praktischer Nutzen demonstriert. Dabei wird insbesondere auch auf die Integrationsfähigkeit in klassische Java-Anwendungen eingegangen.

    Read more
  • Heise Developer Podcast, Episode 21: Funktionale Programmierung

    Link Stefan Tilkov Heise Developer Podcast

    Plattformen wie die Java Virtual Machine oder die Common Language Runtime und der Trend hin zu Multicore-Architekturen legen die Basis für eine neue Popularität von funktionaler Programmierung.

  • Workshop Webarchitektur – Architekturen für hochskalierbare Webanwendungen

    Talk Till Schulte-Coerne, Stefan Tilkov JAX 2010

    Für die Realisierung von Webanwendungen gibt es ganze Reihe unterschiedlicher Realisierungsalternativen. Die Entscheidung für eine bestimmte Programmiersprache oder ein bestimmtes Webframework ist dabei nur ein kleiner Baustein. Denn eine Webanwendung - insbesondere, wenn Sie hohen nicht funktionalen Anforderungen unterliegt - ist eine Gesamtlösung, die aus vielen individuell entwickelten, aber auch vielen Standardkomponenten besteht. Der Workshop zeigt zunächst systematisch, aus welchen Architekturelementen eine Webanwendung bzw. Website besteht. Für die verschiedenen Schichten werden verschiedene State-of-the-art-Alternativen vorgestellt. Diese werden schließlich in Beziehung zu unterschiedlichen Anforderungen wie Entwicklungs- und Betriebskosten, Verfügbarkeit, Konsistenz, Performance, Wartbarkeit und Investitionssicherheit gesetzt.

    Read more
  • Generisch oder spezifisch - das wiederkehrende Architekten-Dilemma

    Talk Stefan Tilkov JAX 2010

    Ob es um DSLs und allgemeingültige Programmiersprachen geht, um UML und MOF, viele einzelne Tabellen oder Metastrukturen in einem RDBMS, ein spezifisches XML-format und XHTML oder das Tunneln von Web-Service-Aufrufen durch POST oder GET, Architekten begegnen immer wieder dem selben abstrakten Problem in unterschiedlicher Verkleidung: Dem Gegensatz von generischen und spezifischen Lösungen. In diesem Vortrag werden unterschiedliche Beispiele für dieses Dilemma gezeigt und einige mögliche Hinweise für den Umgang damit gezeigt.

    Read more
  • Parallel Processing auf Multi-Core-Plattformen mit Clojure

    Talk Stefan Tilkov JAX 2010

    Nachdem die Entwicklung von typischen Rechnersystemen mittlerweile nicht mehr nur im Serverumfeld, sondern auch bei Desktop- und Mobilsystemen in Richtung Multi-Core anstelle von immer höheren Taktraten geht, stellt sich die Frage nach dem geeigneten Programmiermodell. Clojure ist eine JVM-Sprache mit Lisp-Wurzeln, die von Grund auf für die Parallelverarbeitung ausgelegt ist und dabei mit vielen bekannten Mustern aus der OO-Welt bricht. Im Vortrag werden nach einer Einführung in die Sprache die von Clojure unterstützten Mechanismen, insbesondere Agenten und Software Transactional Memory, vorgestellt und ihr praktischer Nutzen demonstriert. Dabei wird insbesondere auch auf die Integrationsfähigkeit in klassische Java-Anwendungen eingegangen.

    Read more

    Keynote: Enterprise IT vs. WWW

    Talk Stefan Tilkov JAX 2010

    Jahrelang haben wir als Architekten von Enterprise-Systemen die Bemühungen der PHP-Script-Kiddies belächelt, “ordentliche” Systeme auf die Beine zu stellen. Wer richtig spannende Systeme bauen wollte, konnte dies vor allem im Kontext großer Unternehmenssysteme tun. Aber die Welt hat sich geändert: Mittlerweile sind die Anwendungen mit den höchsten nichtfunktionalen Anforderungen mitnichten die unternehmensinternen, sondern die globalen Webanwendungen wie Google, Amazon.com, Facebook & Co. Dieser Vortrag stellt die Architekturkonzepte erfolgreicher, großer Webanwendungen vor und beleuchtet, welche davon für unternehmensinterne Systeme eingesetzt werden können und wie diese die Softwarearchitektur beeinflussen. Dabei stehen vor allem einfache Protokolle, die Architektur des WWW, Web-APIs und der Nutzen von Standard-Infrastrukturelementen im Vordergrund.

    Read more

    Praktische Wolken - Nutzungsmodelle für Public Cloud-Angebote

    Talk Stefan Tilkov JAX 2010

    Im Bereich Public Clouds tummeln sich mittlerweile diverse Anbieter, deren Angebote sich zum Teil überschneiden, zum Teil stark unterscheiden. Aber was fängt man konkret damit an? Dieser Vortrag stellt fünf verschiedene Modelle mit ihren Vor- und Nachteilen vor und zeigt, für welche Zwecke diese heute schon praktisch genutzt werden können.

    Read more
  • Heise Developer Podcast, Episode 20: Architektur als Sprache

    Link Stefan Tilkov Heise Developer Podcast

    Die Episode geht auf die Verwendung von (textuellen) DSLs zur formalen Beschreibung von Softwarearchitektur ein.

  • Heise Developer Podcast, Episode 19: REST in der .NET-Welt

    Link Stefan Tilkov Heise Developer Podcast

    Die dritte Episode zum Thema REST geht auf die diversen technischen Möglichkeiten zur Implementierung der REST-Idee auf Basis des .NET-Frameworks ein.

  • Thoughts on the “generic-vs.-specific” trade-off

    Talk Stefan Tilkov JAX London 2010

    Whether it’s DSLs vs. general purpose programming languages, or internal DSLs vs. external DSLs, or UML vs. MOF, or a specific XML format vs. XHTML, or tunnelling web service calls through HTTP POST or GET, the same abstract problem occurs again and again, forcing the architect to decide whether to go with a generic solution or invent a specific one. In this talk, Stefan will illustrate how this problem manifests itself in many different scenarios, outline the pros and cons of both the extreme as well as in-the-middle solutions, and derive a guideline on how to deal with it.

    Read more
  • Heise Developer Podcast, Episode 18: (Anti-)Patterns und Tools für REST

    Link Stefan Tilkov Heise Developer Podcast

    Die zweite Episode zum Thema REST behandelt Anti-Patterns und Patterns beim Entwurf von Systemen, die den Anspruch haben, “RESTful” zu sein, und stellt Werkzeuge für die Entwicklung von REST-Anwendungen in der Java- und .NET-Welt vor.

  • Schein oder Sein? Einführung in Cloud Computing

    Article Stefan Tilkov JavaMagazin 02/2010

    Nachdem „SOA“ mittlerweile häufig negative Reaktionen hervorruft, konnte es nicht lange dauern, bis ein frisches Etikett auftaucht, das Anbieter auf ihre Produkte und Dienstleistungen kleben, Konferenzveranstalter als Thema verwerten und Berater in ihr Portfolio aufnehmen können: Cloud Computing. Und auch diesmal gibt es keine akzeptierte Definition sowie viel Neues und viel lange Bekanntes, das es voneinander zu trennen gilt. Grund genug, sich dem Thema aus verschiedenen Richtungen zu nähern.

  • Heise Developer Podcast, Episode 17: Einstieg in REST

    Link Stefan Tilkov Heise Developer Podcast

    Markus Völter und Stefan Tilkov stellen REST vor, die Architektur des WWW, und beantworten die Frage, wann REST eine gute Wahl ist und wann andere Ansätze besser geeignet sind.

  • Clojure: Funktional, parallel, genial

    Article bn, Stefan Tilkov Dreiteilige Artikelserie in JavaSPEKTRUM 02–04/2010

    Clojure ist eine neue, fortgeschrittene, JVM-basierte Sprache, die das Beste aus Lisp mit einer modernen Umgebung, der Unterstützung für parallele Verarbeitung in Mehrkern-Umgebungen und perfekter Java-Integration kombiniert.

  • REST mit Java

    Talk Stefan Tilkov OOP 2010

    Immer häufiger kommt für die Integration von Anwendungen und für öffentlich zugängliche APIs die Architektur des WWW, RESTful HTTP zum Einsatz. In diesem Vortrag werden die unterschiedlichen Möglichkeiten gegenübergestellt, die im Java-Umfeld für die Realisierung von RESTful-HTTP-Services zur Verfügung stehen (u. a. das Servlet-API, Restlet, JAX-RS und Spring MVC).

    Read more
  • Heise Developer Podcast, Episode 16: Architektur-Reviews

    Link Stefan Tilkov Heise Developer Podcast

    Die Episode gibt einen Überblick darüber, wie sich existierende Softwarearchitekturen evaluieren lassen.

  • REST mit Java

    Talk Stefan Tilkov W-JAX 2009

    Immer häufiger kommt für die Integration von Anwendungen und für öffentlich zugängliche APIs die Architektur des WWW, RESTful HTTP zum Einsatz. In diesem Vortrag werden die unterschiedlichen Möglichkeiten gegenübergestellt, die im Java-Umfeld für die Realisierung von RESTful-HTTP-Services zur Verfügung stehen (u. a. das Servlet-API, Restlet, JAX-RS und Spring MVC).

    Read more

    Cloud Computing: Eine Einführung

    Talk Stefan Tilkov W-JAX 2009

    Cloud Computing - mehr als nur das nächste “Buzzword” nach SOA? Nach einer grundlegenden Einführung werden die Begriffe IaaS, PaaS und SaaS voneinander abgegrenzt, Vertreter der jeweiligen Gattungen vorgestellt, Sicherheit, Investitionsschutz und Standardisierung angesprochen und gezeigt, wie Cloud-Services heute in der Praxis im Bereich Build-Management und -Test eingesetzt werden können.

    Read more
  • Dynamisch, parallel, performant, genial: Clojure

    Talk Stefan Tilkov W-JAX 2009

    Clojure ist eine neue, fortgeschrittene JVM-basierte Sprache, die das Beste aus Lisp mit einer modernen Umgebung, der Unterstützung für parallele Verarbeitung in Multi-Core-Umgebungen und perfekter Java-Integration kombiniert. Der Vortrag stellt die Programmiersprache und deren praktischen Nutzen vor.

    Read more
  • Heise Developer Podcast, Episode 14: Entwicklung für Multicore-Systeme

    Link Stefan Tilkov Heise Developer Podcast

    Die Episode 14 setzt sich mit den Herausforderungen und Lösungsansätzen für die Entwicklung für Multicore-Systeme auseinander. Neben der Grundproblematik sind Parallelität und Architektur, Auswirkungen auf das Design und Idiome zur parallelen Programmierung ein Thema.

  • REST & Caching: Web Services, Accelerated

    Talk Stefan Tilkov JAOO 2009

    One of the most prominent benefits of applying building services using RESTful HTTP is the support for caching. In this session, we’ll explore the two caching models supported by HTTP, take a look at how to incorporate them into a RESTful design, and show some examples of advanced infrastructure topologies that exploit HTTP’s caching as much as possible without being too intrusive. Topics covered includes validation and expiration, different kinds of ETags, external client side and server side caching, Edge Side Includes (ESI) and invalidation.

    Read more
  • Heise Developer Podcast, Episode 13: Serviceorientierte Architekturen (SOA) - allgemeine Grundlagen

    Link Stefan Tilkov Heise Developer Podcast

    Episode 13 ist Auftakt einer Serie von Folgen zum Thema serviceorientierte Architekturen (SOA) und geht auf grundlegende Fragestellungen ein.

  • Heise Developer Podcast, Episode 11: Modellierung im Softwarearchitekturumfeld, Teil 2

    Link Stefan Tilkov Heise Developer Podcast

    Der zweite Teil dieser Doppelepisode zum Thema Modellierung und modellgetriebene Entwicklung geht auf die Themen Modellvalidierung, ausgewählte Tools und Einsatzszenarien ein.

  • Heise Developer Podcast, Episode 10: Modellierung im Softwarearchitekturumfeld, Teil 1

    Link Stefan Tilkov Heise Developer Podcast

    Der erste Teil einer Doppelepisode zum Thema Modellierung und modellgetriebene Entwicklung im Architekturumfeld behandelt Grundlagen, Standards und eine Abgrenzung zur UML.

    HTTP und REST

    Book Stefan Tilkov

    Erstauflage von Stefan Tilkovs Buch “REST und HTTP: Einsatz der Architektur des Web für Integrationsszenarien”.

  • Heise Developer Podcast, Episode 9: Cloud Computing

    Link Stefan Tilkov Heise Developer Podcast

    Die Episode klärt auf, worum es sich bei Cloud Computing handelt und warum es gerade für den Architekten interessant sein könnte.

  • Heise Developer Podcast, Episode 6: Middleware in der Java-Welt

    Link Stefan Tilkov Heise Developer Podcast

    Die sechste Episode des SoftwareArchtitekTOUR-Podcasts zeigt, wie die allgemeinen Ideen aus den vorhergehenden Middleware-Episoden im Java-Kontext umzusetzen sind.

  • Heise Developer Podcast, Episode 5: Definition, Einsatz und Zukunft von Middleware, Teil 2

    Link Stefan Tilkov Heise Developer Podcast

    In der zweiten Episode zum Thema Middleware werden die allgemeine Technikkonzepte konkretisiert, indem über den sinnvollen Einsatz von Middleware-Lösungen diskutiert wird.

  • Heise Developer Podcast, Episode 4: Definition, Einsatz und Zukunft von Middleware

    Link Stefan Tilkov Heise Developer Podcast

    In der ersten Episode zum Thema Middleware stehen allgemeine Technikkonzepte und ihre architektonischen Auswirkungen im Vordergrund.

  • Heise Developer Podcast, Episode 2: Patterns in der Java-Welt

    Link Stefan Tilkov Heise Developer Podcast

    Aufbauend auf der ersten Folge, die in Patterns einführte, konkretisiert die zweite Episode des SoftwareArchitekTOUR-Podcast das Thema, indem sie auf Patterns in der Java-Welt eingeht.

  • SOA auf Basis von RESTful HTTP

    Talk Stefan Tilkov JAX 2009

    Die Ziele von SOA - lose Kopplung, Wiederverwendung, Modularisierung, Standardisierung und Herstellerunabhängigkeit - lassen sich am besten mit Web Services auf Basis von SOAP und WSDL erreichen. Richtig oder falsch? Falsch! Denn tatsächlich haben Web Services mit dem Web wenig zu tun, und es sind die angeblich für den Enterprise-Einsatz ungeeigneten Webtechnologien, die sich sehr viel besser eignen. In diesem Vortrag wird REST und RESTful HTTP vorgestellt und es wird gezeigt, welche Vorteile sich für eine unternehmensweite Architektur ergeben.

    Read more

    Heise Developer Podcast, Episode 0: Start des SoftwareArchitekTOUR-Podcast plus Ausblick

    Link Stefan Tilkov Heise Developer Podcast

    In der ersten Episode erläutern die Betreiber des SoftwareArchitekTOUR-Podcasts, was Softwarearchitektur ist, was die Ziele des Podcasts sind beziehungsweise was die Zuhörer mitnehmen sollen.

  • RESTful WebServices mit Ruby on Rails

    Talk Stefan Tilkov JAX 2009

    RESTful WebServices (als Alternative zu SOAP/WSDL/WS-*) werden immer populärer, und das Ruby-on-Rails-Framework eignet sich besonders gut für die Entwicklung von REST-Anwendungen. In diesem Vortrag wird nach einer kurzen Einführung in REST die dafür vorhandene Basisunterstützung in Rails vorgestellt, bevor auf erweiterte Mechanismen wie die Abbildung von Geschäftslogik, konditionale Requests und die Unterstützung für Caching eingegangen wird. Schließlich wird gezeigt, wie sich eine REST-/Rails-Anwendung in eine gemischte Gesamtlandschaft einfügen kann und die Mechanismen des Webs für die Anwendung-zu-Anwendung-Kommunikation per Web-API optimal genutzt werden können.

    Read more

    „Lightweight SOA“: Serviceorientierung ohne Megainvestment

    Talk Stefan Tilkov JAX 2009

    SOA klingt schwergewichtig, nach komplexen Werkzeugen mit beeindruckenden Preisschildern, steiler Lernkurve und teuren Beratern. Aber es geht auch eine Nummer kleiner: Es lohnt sich, viele der allgemein akzeptierten Weisheiten zu SOA zu hinterfragen und anstatt auf teure Enterprise-Service-Bus- und SOA-Governance-Lösungen auf leichtgewichtige Werkzeuge zu setzen. Der Vortrag zeigt, welche Optionen zur Umsetzung einer funktionierenden, transparenten SOA jenseits des Mainstreams bestehen mit und ohne Web Services auf Basis von SOAP und WSDL.

    Read more
  • Thoughts on the “generic-vs.-specific” trade-off

    Talk Stefan Tilkov QCon London 2009

    Whether it’s DSLs vs. general purpose programming languages, or internal DSLs vs. external DSLs, or UML vs. MOF, or a specific XML format vs. XHTML, or tunnelling web service calls through HTTP POST or GET, the same abstract problem occurs again and again, forcing the architect to decide whether to go with a generic solution or invent a specific one. In this talk, Stefan will illustrate how this problem manifests itself in many different scenarios, outline the pros and cons of both the extreme as well as in-the-middle solutions, and derive a guideline on how to deal with it.

    Read more
  • SOA und Web Services mit Open Source-Tools

    Talk Stefan Tilkov OOP 2009

    ESB (Enterprise Service Bus)-Produkte und SOA Governance-Lösungen werden in der Regel mit schwergewichtigen, kommerziellen Produkten assoziiert. Aber jenseits des Mainstreams gibt es auch in diesem Umfeld mittlerweile eine ganze Reihe von Open Source-Tools. In diesem Vortrag wird anhand einer konkreten Referenzarchitektur gezeigt, dass weniger oft mehr ist und sich auch mit leichtgewichtigen Mitteln eine komplexe “SOA-Backplane” aufbauen lässt. Zum Einsatz kommen dabei neben Spring WS, Axis und Apache Synapse auch Erlang und Ruby on Rails!

    Read more
  • REST - das bessere Web Service-Modell?

    Article Stefan Tilkov JavaMagazin 01/2009

    Vor nicht all zu langer Zeit schien es völlig klar, dass der Weg für eine interoperable Kommunikation zwischen Anwendungen mit unterschiedlichen Entwicklungszyklen über Web Services führen muss. In letzter Zeit jedoch ist immer häufiger die Rede von einer leichtgewichtigen, einfacheren Alternative: Web Services auf Basis von REST (REpresentational State Transfer).

    RESTful Web Services mit Java

    Article Stefan Tilkov JavaMagazin 01/2009

    Prinzipiell lassen sich REST-konforme Anwendungen schon seit langem mit dem Servlet API realisieren – schließlich ist die Grundvoraussetzung nur die Unterstützung von Webstandards wie HTTP und URIs. Sun hat aus diesem Grund (und ganz sicher auch wegen des damals beginnenden REST-Hypes) im Februar 2007 den JSR 311 ins Leben gerufen, der sich mit der Spezifikation für ein explizit RESTorientiertes API beschäftigt.

    RESTful Web Services mit Rails

    Article Stefan Tilkov RailsWay 01/2009

    In den letzten zwei bis drei Jahren setzt sich REST – bzw. RESTful HTTP – als Alternative zu SOAP- und WSDL-basierten Web Services immer mehr durch, zumindest was die Open- Source- und Web–2.0-Gemeinde angeht. Wie es sich gehört, ist Rails hier ganz vorn mit dabei. Die ursprünglich im Framework enthaltene Unterstützung für SOAP ist seit Version 2.0 kein Kernbestandteil mehr und muss bei Bedarf als Plug-in nachinstalliert werden. Wie immer „opinionated“ hat sich das Rails-Team dafür entschieden, REST als Standardweg sowohl für die Architektur der Web-UIs als auch für die Maschine-zu-Maschine- Kommunikation einzusetzen.

  • RESTful Design: Patterns and Anti-Patterns

    Talk Stefan Tilkov Devoxx '08

    Many people claim their Web APIs and enterprise applications offer a “RESTful” interface. But merely getting by without a SOAP envelope, or tunneling all kinds of information through URIs, doesn’t magically sprinkle REST pixie dust on bad designs. This session will start with an extra-fast intro to REST before listing the most common patterns and anti-patterns of applying REST design principles, covering issues such as the (un)importance of URI design, resources vs. representations, and the role of hypermedia.

    Read more
  • SOA Governance: Ordnung im Chaos?

    Talk Stefan Tilkov MID Insight '08

    Die Versprechungen rund um SOA-Governance sind vielfältig. Unter anderem soll durch die einheitliche, formale Beschreibung von Schnittstellen eine höhere Transparenz in die Abbildung von fachlichen Anforderungen auf Informationssystem gebracht und auf dieser Basis eine kontrollierte (Weiter-)Entwicklung der Service-Landschaft ermöglicht werden. In diesem Vortrag wird der Begriff SOA-Governance eingeführt und die damit verbundenen Chancen, aber auch Probleme und Herausforderungen beleuchtet.

    Aus dem Inhalt:

    • Definition SOA und SOA Governance
    • Fachliche und organisatorische Konsequenzen
    • Rolle von Produkten und Technologien
    • Integration in den Service Lifecycle
    • Ausblick, Chancen und Herausforderungen
    Read more
  • „Lightweight SOA“: Service-Orientierung ohne Mega-Investment

    Talk Stefan Tilkov W-JAX 2008

    SOA klingt schwergewichtig, nach komplexen Werkzeugen mit beeindruckenden Preisschildern, steiler Lernkurve und teuren Beratern. Aber es geht auch eine Nummer kleiner: es lohnt sich, viele der allgemein akzeptierten Weisheiten zu SOA zu hinterfragen und anstatt auf teure Enterprise Service Bus- und SOA Governance-Lösungen auf leichtgewichtige Werkzeuge zu setzen. Der Vortrag zeigt, welche Optionen zur Umsetzung einer funktionierenden, transparenten SOA jenseits des Mainstream bestehen - mit und ohne Web Services auf Basis von SOAP und WSDL.

    Read more
  • (K)Ein Kochrezept: von Null auf SOA in 10 Schritten

    Talk Stefan Tilkov W-JAX 2008

    Zwar wird in vielen Unternehmen noch das “ob” diskutiert, viele andere jedoch haben für sich jedoch bereits entschieden, dass eine SOA ein sinnvoller unternehmensweiter Architekturansatz ist. Aber wie fängt man an? Was sind die wichtigsten Herausforderungen, die häufigsten Fehler, die man vermeiden sollte und die besten Tipps für eine erfolgreiche Einführung? Nach der obligatorischen kurzen Definition von SOA wird in diesem Vortrag ein möglicher Weg dazu dargestellt und die wesentlichen Aspekte dargestellt.

    Read more
  • Successfully applying REST - Integration, Web-style

    Talk Stefan Tilkov JAOO

    REST, short for REpresentational State Transfer, is a name for the architectural principles underlying the world’s largest and most successful distributed system - the World Wide Web. In this talk, Stefan will describe the key REST principles and the reason for their existence, and explore some useful patterns to follow and anti-patterns to avoid when building systems following the REST architectural style.

    Read more
  • Rails und REST jenseits von „hello world“

    Talk Stefan Tilkov Rails-Konferenz

    Seit Rails 2.0 sind Web-Services “out” und RESTful Web-Services offiziell der “Rails Way”. Für viele Rails-Anwender ist REST aber noch neu, und anfängliche Begeisterung weicht manchmal der Frage, wie man auch kompliziertere Szenarien auf die simplen Grundprinzipien der Web-Architektur abbilden kann. In diesem Vortrag werden nach einer kurzen Einführung in REST anhand von Beispielen verschiedene Problemfälle und Lösungsansätze gezeigt.

    • REST jenseits von CRUD
    • Unterstützung von REST in Rails
    • Atom Syndication und AtomPub
    • Events, Transaktionen, Sessions
    Read more
  • Metaprogramming with Ruby: Writing Code that Writes Code

    Talk Stefan Tilkov Dynamic Languages World

    In this session, the overall motivation for metaprogramming - i.e, programming to create programs - will be explained, and Ruby’s support for metaprogramming, based on its meta-object support, will be explained in detail. A number of examples from different real-world usage scenarios will be used to show why metaprogramming is the key feature that sets dynamic languages apart.

    Read more

    RESTful Web Services with Ruby on Rails

    Talk Stefan Tilkov Dynamic Languages World

    REST, short for REpresentational State Transfer, is a name for the architectural principles underlying the world’s largest and most successful distributed system - the World Wide Web. Ruby, specifically within the Rails framework, offers excellent support for REST: A dynamic language is especially suited for the Web’s dynamic nature. In this talk, Stefan will describe the key REST principles, the reason for their existence, and the differences between RESTful HTTP applications and SOAP/WSDL-based Web services. Next, the support for REST included in the Ruby on Rails framework will be introduced and a sample application exploring the REST style’s benefits will be built.

    Read more
  • JRuby on Rails

    Talk Stefan Tilkov Java User Group Düsseldorf

    Nach dem Riesen-Hype um die dynamische Programmiersprache Ruby und das Web-Anwendungs-Framework Ruby on Rails fragen sich viele Java-Entwickler, ob diese nur für Projekte geeignet sind, die auf der grünen Wiese starten. Eine mögliche Antwort liegt in JRuby, einer Ablaufumgebung für Ruby für die JVM. In diesem Vortrag werden Ruby, Ruby on Rails und JRuby vorgestellt sowie gezeigt, wie diese in eine Java/Java EE-Umgebung integriert werden können.

    Read more
  • RESTful Web-Services mit Ruby on Rails

    Talk Stefan Tilkov JAX 2008

    REST, REpresentational State Transfer, ist die Architektur des World Wide Web - und immer mehr setzt sich die Erkenntnis durch, dass “Web”-Services auf Basis von WSDL, SOAP & Co. deutliche Nachteile gegenüber eine rein auf HTTP basierenden, REST-konformen Lösung haben. Die Entwickler von Rails sind ebenfalls der Meinung, dass RESTful HTTP die bessere Variante ist - und haben mit der Rails-Version 2.0 die Web- Services (SOAP)-Unterstützung aus Rails entfernt und durch eine hervorragende Unterstützung für REST ersetzt. In diesem Vortrag wird zunächst erklärt, was sich hinter REST verbirgt, worin die Unterschiede zu SOAP-basierten Web-Services liegen und welche Stärken dieser Ansatz hat. Danach wird im Rahmen einer Live- Coding-Session eine Rails-Anwendung mit einem mächtigen REST-API versehen und gezeigt, wie die Mechanismen des Web für die Anwendungs- zu-Anwendungskommunikation per Web-API optimal genutzt werden können.

    Read more
  • JSR 311 - Java API for RESTful Web Services

    Talk Stefan Tilkov JAX 2008

    In letzter Zeit hat der Architekturstil REST – kurz für Representational State Transfer – mehr und mehr an Zustimmung gewonnen, vor allem aufgrund der Komplexität des vorherrschenden SOAP/ WSDL WS-* Web Services Stacks. Dieser Vortrag wird kurz in die hinter Web und REST stehenden Konzepte als ein besseres Modell für Web Services einführen und das neue Java API für RESTful Web Services vorstellen, welches zurzeit als JSR 311 standardisiert wird.

    Read more
  • Ruby - Programmiersprache der Zukunft?

    Talk Stefan Tilkov JAX 2008

    Die objektorientierte, dynamische Sprache Ruby fristete in ihrem Geburtsland Japan eine eher unscheinbares Dasein, bis sie von dem “Pragmatischen Programmierern” auch in der westlichen Welt populär gemacht wurde. Zum absoluten Durchbruch verhalf ihr jedoch das Webframework “Ruby on Rails”, das die Möglichkeiten der Sprache komplett ausreizt. Aber was genau macht Ruby anders als andere Sprachen, vor allem solchen, die man abfällig als “statisch” bezeichnen könnte (wie z.B. Java)? In diesem Vortrag wird eine praktische Einführung in die Grundlagen, aber auch die fortgeschrittenen Konzepte von Ruby gegeben. Neben Grundkonzept, Syntax, Moduln, Klassen und anderen Sprachkonstrukten werden dabei insbesondere auch die Mechanismen zur Metaprogrammierung (Code, der Code schreibt) als Grundlage für interne DSLs (Domain Specific Languages) vorgestellt.

    Read more

    SOA - Geschäft oder Technologie?

    Talk Gernot Starke, Stefan Tilkov JAX 2008

    SOA ist wachsweich definiert, und je nachdem, wen man nach dem Kern fragt, erhält man eine Antwort wie “Bei SOA geht es nur um das Business” oder “SOA bedeutet SOAP, WSDL und WS-*”. In diesem Vortrag wollen wir unsere Sicht auf SOA darstellen, die sowohl technische als auch geschäftliche und organisatorische Aspekte beinhaltet.

    Read more
  • Flexibilität und Agilität im Unternehmen durch SOA

    Talk Stefan Tilkov Business Integration Forum 2008

    • Einführung in das SOA-Konzept
    • SOA, BPM, EAI und Enterprise Architecture
    • Von der Anwendungs- zur Service-Landschaft
    • IT für IT: Metadaten und ihre Verwaltung
    • Die Rolle von Produkten und Technologien
    • Ihr Weg zu SOA: Einführungsalternativen
    Read more
  • „Web-orientierte Architektur“ (WOA) und SOA – Konflikt oder Konvergenz?

    Talk Stefan Tilkov Business Integration Forum 2008

    • Ziele von SOA jenseits der Technik
    • Web Services vs. REST
    • Die Architektur des WWW als Basis für SOA
    • Informationen, Zugangsbarrieren und der passende Schlüssel
    • Das Web, Version 2.0, im Unternehmen
    Read more
  • REST: A Pragmatic Introduction to the Web’s Architecture

    Talk Stefan Tilkov JAOO RubyFools

    REST, short for REpresentational State Transfer, is a name for the architectural principles underlying the world’s largest and most successful distributed system - the World Wide Web. In this talk, Stefan will describe the key REST principles, the reason for their existence, and the differences between RESTful HTTP applications and SOAP/WSDL-based Web services. Stefan will also show how to design RESTful applications and demonstrate some typical patterns and anti- patterns discovered in the wild.

    Read more
  • Addressing Doubts About REST

    Link Stefan Tilkov InfoQ 03/2008

    Invariably, learning about REST means that you’ll end up wondering just how applicable the concept really is for your specific scenario. And given that you’re probably used to entirely different architectural approaches, it’s only natural that you start doubting whether REST, or rather RESTful HTTP, really works in practice, or simply breaks down once you go beyond introductory, “Hello, World”-level stuff. In this article, I will try to address 10 of the most common doubts people have about REST when they start exploring it, especially if they have a strong background in the architectural approach behind SOAP/WSDL-based Web services.

  • Eine kurze Einführung in REST

    Link Stefan Tilkov JavaSPEKTRUM 02/08

    Was ist die “richtige” technologische Strategie für die Kommunikation zwischen Anwendungen in einem heterogenen Umfeld? Während die “Mainstream”-Antwort ganz klar Webservices auf Basis von SOAP, WSDL und den Spezifikationen aus dem WS-*-Universum ins Zentrum stellt, behauptet eine noch relativ kleine, aber stark wachsende Gruppe, es gebe einen besseren Weg: REST, Abkürzung für “REpresentational State Transfer”. Mit diesem Artikel möchte ich eine pragmatische Einführung in REST und die REST-konforme Nutzung von HTTP geben.

  • A Brief Introduction to REST

    Link Stefan Tilkov InfoQ 12/2007

    You may or may not be aware that there is debate going on about the “right” way to implement heterogeneous application-to-application communication: While the current mainstream clearly focuses on web services based on SOAP, WSDL and the WS-* specification universe, a small, but very vocal minority claims there’s a better way: REST, short for REpresentational State Transfer. In this article, I will try to provide a pragmatic introduction to REST and RESTful HTTP application integration without digressing into this debate. I will go into more detail while explaining those aspects that, in my experience, cause the most discussion when someone is exposed to this approach for the first time.

  • SOA-Expertenwissen: Methoden, Konzepte und Praxis serviceorientierter Architekturen

    Book Gernot Starke, Stefan Tilkov

    Das Buch zu Serviceorientierten Architekturen, herausgegeben von Gernot Starke und Stefan Tilkov.

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

    Wie sich SOA-Governance planen lässt

    Link Stefan Tilkov COMPUTERWOCHE 01/2007

    Geht es um Service-orientierte Architekturen (SOA), dreht sich alles um den Service, den Dienst, als das zentrale Konzept. In der idealisierten SOA werden Services wiederverwendet, nicht Komponenten; Services sind die Einheit der Versionierung und des Deployments, nicht Systeme. Der Unternehmensarchitekt verwaltet keine Anwendungs-sondern eine Servicelandschaft. Dem Konzept zugrunde liegt ein Modell, das die Prinzipien der unternehmensübergreifenden, standardisierten Kommunikation - wie sie im Web gang und gäbe sind - und die Prinzipien guten Softwaredesigns auf die Unternehmens-IT überträgt.

  • REST – Die Architektur des Web

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

  • Ereignis-getriebene Architekturen: ein Überblick

    Link Roman Roth, Stefan Tilkov OBJEKTspektrum 02/2006

    Ereignis-getriebene Architekturen (EDAs) werden von vielen Analysten und Architekten als zukunftsweisender Lösungsansatz präsentiert, mit dem sich Unternehmen den bekannten Herausforderungen stellen können. Bei EDA gibt es eine Reihe sinnvoller Konzepte und Ansätze, mit denen sich eine nüchterne Beschäftigung durchaus lohnt. Die Umsetzung einer EDA stellt sich jedoch in erster Linie als fachliches und nicht als technisches Problem dar. Ein Überblick soll die in der Diskussion verwendeten Begriffe definieren und gegeneinander abgrenzen.

  • Lose Kopplung mit Web Services

    Article Marcel Tilly, Hartmut Wilms, Stefan Tilkov JavaSPEKTRUM 5/2005

    Für die Entwicklung und Verwendung von Web-Services existieren unterschiedliche Programmiermodelle. Diese unterscheiden sich nicht nur in Bezug auf benötigte Vorkenntnisse, Technologieunabhängigkeit und Aufwand, sondern haben auch entscheidenden Einfluss darauf, ob das hehre Ziel einer losen Kopplung von Dienstanbietern und -nutzern auch in der Praxis erreicht wird. Dem in den meisten Projekten heute eingesetzten, RPC-orientierten Ansatz wird die dokumentorientierte Variante gegenüber gestellt, dabei werden die Vor- und Nachteile beleuchtet.

  • Trends: Spezifikationen, Standards und Trends im Web-Services-Umfeld

    Article Stefan Tilkov OBJEKTspektrum 3/2005

    Web-Services (WS) als Mechanismus zur interoperablen Kommunikation zwischen Anwendungen gewinnen zunehmend an Akzeptanz und Verbreitung. im Bereich der herstellerunabhängigen Standards und Spezifikationen ist ein konsistentes Bild zwar noch nicht erreicht, eine Konsolidierung aber nicht mehr aufzuhalten.

  • Entspannung pur – Schemasprache Relax NG

    Article Marcel Tilly, Stefan Tilkov iX, 10/2004, S. 124

    Als das W3C mit XML Schema eine Beschreibungssprache für die Extensible Markup Language entwickelte, fanden einige Entwickler, dass das einfacher gehen müsse. Das Ergebnis war Relax, das sich als Relax NG allmählich als gut einsetzbar zu erweisen scheint.

  • Garantierte Zustellung – WS-ReliableMessaging: Zuverlässige Zustellung von Web Services-Nachrichten

    Article Stefan Tilkov XML & Web Services Magazin, 3/2004

    WS-ReliableMessaging definiert ein transportunabhängiges Protokoll zur gesicherten Zustellung von Nachrichten im Web Services-Umfeld und stellt damit einen wichtigen Baustein zum Erreichen des hoch gesteckten Zieles einer „losen Kopplung“ dar.

  • UDDI Revisited – Mit der Version 3 wird UDDI erwachsen

    Article Stefan Tilkov XML & Web Services Magazin, 2/2004

    Obwohl UDDI meistens in einem Atemzug mit SOAP und WSDL genannt wird, fristet der Standard zur Verwaltung von Informationen über Web-Services außerhalb von PowerPoint-Präsentationen meist noch ein Schat- tendasein. Mit der vor der Verabschiedung stehenden Version 3 wird UDDI um diverse Merkmale ergänzt, die es für den Einsatz abseits der ursprünglichen Science Fiction-Vision qualifizieren. Grund genug, den Standard noch einmal detailliert zu betrachten.

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

  • Eins, zwei, drei – CVS-Nachfolger Subversion

    Link Stefan Tilkov iX, 2/2003, Seite 116

    CVS ist das Standardwerkzeug für die Versionsverwaltung im Open-Source-Umfeld. Mit Subversion schicken sich Entwickler an, einen freien Nachfolger für das angegraute CVS zu etablieren.

  • Ganz oder gar nicht – JTS: der Java Transaction Service

    Link Stefan Tilkov iX, 8/1999, Seite 116

    Mit dem Java Transaction Service spezifiziert Sun die Funktion eines Transaktionsmanagers, der sich nahtlos in die Enterprise-Java-Welt einfügen soll. Basis ist der von der OMG standardisierte CORBA Transaction Service, dessen Details eine vereinfachte Java-Schnittstelle vor dem Programmierer verbirgt.