Focus

architecture

Talk
Talk

The Art of Software Reviews

GOTO Amsterdam 2021 / 10:30 - 11:10

Online training

Online training

Reduzierte Wartungskosten durch evolutionäre Verbesserung

iSAQB-Modul IMPROVE

Online training

Online training

Flexible Architectures

Microservices, Self-contained Systems and Continuous Delivery: iSAQB module FLEX

Online training

Online training

Domain-driven Design in Practice

iSAQB Module DDD

Blog Post

What’s in a name: Legacy

The term “legacy” has a negative connotation in IT, and stands for an old, somehow bad piece of software. In real-life, legacy has a completely different and often positive meaning.

Link

Software technologies that stand the test of time

Blog Post

What’s in a Name: Quality

Das Wort Qualität verwenden wir umgangssprachlich für etwas “Gutes” - aber wir lassen meist offen, was wir darunter genau verstehen. Der Artikel zeigt, dass wir uns in dieser Hinsicht etwas exakter ausdrücken sollten.

Blog Post

Is Domain-driven Design overrated?

Domain-driven design (DDD) is a useful approach that provides excellent guidelines for modeling and building systems, but it is a means to an end, not an end in itself. While the concepts are valid, you lose a lot if you limit yourself to using them only: There actually is a life beyond DDD.

Link

Christin Gorman on Why large projects fail and what to do about it

Blog Post

Happy without a Service Mesh

It does not always have to be a service mesh. Even microservices are not a good idea per se. For good decisions we have to get a deep understanding of the problem first.

Blog Post

Agile Architekturarbeit

Moderne Softwarearchitekturarbeit folgt selbstverständlich der agilen Arbeitsweise in Entwicklung und Projektmanagement.

Blog Post

Architektur-Reviews remote durchfĂĽhren

Blog Post

GlĂĽcklich ohne Service Mesh

Es muss nicht immer ein Service Mesh sein. Auch Microservices sind nicht per se eine gute Idee. FĂĽr gute Entscheidungen mĂĽssen wir uns das Problem genau anschauen.

Article

Requirements Engineering

The priority to invest into requirements engineering often suffers in everyday life, although its importance has been proofed to be the basis to develop values for customers. The objective of this article is to recall the core definitions and statements of requirements engineering and to provide aid with links for further readings on how to apply it in practice.

Article

Identification of quality requirements with Quality Storming

Collaborative modeling for a cross-skill collection and prioritization of quality requirements

Article

Architektur­entscheidung im agilen Team

Eine schlechte Architekturentscheidung kann Projekte zum Scheitern bringen. Das passiert oft, wenn ein Architekt alle wichtigen Entscheidungen alleine trifft und nie oder sehr spät Feedback bekommt, ob sie gut oder schlecht waren. Oder aber auch, wenn ein „agiles“ Team mit den Architekt(innen) die Architekturarbeit aus dem Fenster geworfen hat. Schade, denn wenn man wichtige Entscheidungen nicht einfach dem Lauf der Dinge oder einem Elfenbeinturmbewohner überlässt, findet man viel besser Lösungen.

Article

JavaScript? Yes, but in moderation

A modern web application is obviously implemented in JavaScript and will generate its HTML on the client within the browser. It only communicates with the server by retrieving data in a JSON format from an HTTP/REST API endpoint - this, it seems, is the common wisdom of today. But are server-side HTML and progressive enhancement really out of date? Quite the contrary is true - we can use these technologies to create applications which are often much better than those which we could create with the Framework of the Week for creating single page apps.

Article

Warum Microservices scheitern

Article

Optionen der Frontend-Integration

Systemgrenzen sind aus Nutzersicht tendenziell ein Ärgernis. So ist die Modularisierung von Systemen ein rein technisch motiviertes Thema, das reibungslosen Arbeitsabläufen ohne größere Kontextverluste nicht im Wege stehen sollte.

Link

Artikel: Ameisenprinzip. Von Stefan Tilkov und Eberhard Wolff

Blog Post

Cooking with Onions: Inward-Pointing Arrows

Blog Post

Domain Events vs. Event Sourcing

Why domain events and event sourcing should not be mixed up.

Blog Post

Domain Events vs. Event Sourcing

Weshalb Domain Events und Event Sourcing nicht vermischt werden sollten

Article

Technologien fĂĽr Microservices

Warum Microservices-Frameworks nicht genug sind

Article

Microservices – oder doch nicht?

Microservices sind zwar in aller Munde, aber wie jede andere Architektur auch sind sie ein Trade-Off. Also stellt sich die Frage, wo Microservices sinnvoll sind, wie es mit Microservices weitergeht und was nach Microservices kommt.

Blog Post

Serverless - The Vendor Is Not Your Enemy

Argumente für und gegen Serverless gibt es viele. Dieser Post behandelt konkret das Thema Vendor-Lock-in, welches bei der Entscheidung für oder gegen Serverless häufig diskutiert wird.

Podcast

Microfrontends

Unabhängige Teams im Frontend

Article

Prinzipien zur Entwicklung von unabhängigen Systemen

Viele Systeme werden aktuell mit einer Microservice-Architektur geplant und umgesetzt. Da jede Architektur Vor- und Nachteile aufweist, muss die gewählte jedoch auch zum Problem passen. Dieser Artikel zeigt, welchen primären Vorteil eine Microservice-Architektur hat und welche Prinzipien bei der Entwicklung beachtet werden sollten, um diesen Vorteil nicht zu neutralisieren.

Blog Post

No-Principles Software Architecture

The traditional principles of software architecture often lead to problems. Understanding these challenges is the first step towards eliminating them or even avoiding them right from the start.

Blog Post

Code Redundancy or Reuse?

Why We Must Not Focus Just on Reuse

Blog Post

Technical Debt Just Happens

“Technical debt” is a great metaphor to reason about the quality of a software project. But a closer look also reveals some problems and shows approaches how to deal with software quality even better.

Blog Post

Microservices? Or Rather Monoliths?

Microservices are a hype. Now, critics suggest to return to monoliths. But does that really help?

Podcast

Independent Systems Architecture

Best Practices fĂĽr Microservices

Blog Post

Service Mesh und Kubernetes

Zum Betreiben einer Website stellt Kubernetes einige wichtige Ressourcen, wie Service (round robin load balancer), Ingress (Proxy als API Gateway) und Pod (logischer Host) zur VerfĂĽgung. Dennoch sind sie nur eine Grundlage. FĂĽr komplexere, ĂĽber Jahre laufende Webportale, ist mehr erforderlich als das. Service Meshes liefern, was den Kubernetes Bordmitteln fehlt.

Blog Post

FaaS und Kubernetes

Inzwischen gibt es bei den meisten Cloudanbietern die Möglichkeit kleine Codeteile als sogenannte Functions zu hinterlegen. Da kein expliziter Server existiert, dort spart das Kosten. Aber auch sonst bieten Functions eine interessante Abstraktion, deren Vorteile man ebenso gerne innerhalb eines Kubernetes Clusters nutzen möchte.

Podcast

Microservices Praxisbuch

Grundlagen, Konzepte und Rezepte

Blog Post

Proof of Existence via HTTPS

Übliche „Proof of existence“ - Konzepte nutzen die Blockchain von Kryptowährungen. Das geht auch einfacher und billiger.

Article

Evolution statt Verschlimmbesserung

Erweitern, ändern und korrigieren bestehender Software - meistens unter Zeitdruck – führt in vielen Fällen zu schleichendem Verfall. Dadurch werden Änderungen einerseits immer schwieriger, andererseits auch immer teurer und riskanter. Das Open-Source Projekt aim42 (architecture improvement method) setzt genau dort an – mit Praktiken und Patterns für systematische Verbesserung – technologieneutral und leichtgewichtig.

Link

heise Developer Continuous Architecture Blog, „Microservices? Oder lieber Monolithen?“

Blog Post

Vertrauensvolle und angstfreie Kommunikation als Grundlage gelungener Softwarearchitektur

Steht und fällt der Erfolg einer Softwarearchitektur und damit eines Projektes mit einer technischen Entscheidung zugunsten von Microservices oder Monolithen oder müssen viel früher Weichen gestellt werden, um sicherzustellen, dass technische Entscheidungen die gewünschten Ziele erreichen: Einige Gedanken zu Kommunikation in Projekten.

Article

Probleme bei der EinfĂĽhrung von Microservices: Seien Sie vorbereitet!

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

Blog Post

What’s in a Name: Evaluate

Link

Domain-driven Design – Tipps aus der Praxis. Interview mit Michael Plöd

Link

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

Link

Conway’s Law & die ewige Suche nach der „richtigen“ Architektur

Link

Die ewige Suche nach der „richtigen“ Architektur

Podcast

Domain-Driven Design

Ăśberblick ĂĽber Strategic und Technical Design mit DDD

Article

Microservices – der aktuelle Stand

Was hinter dem Hype steckt und wie es weitergeht.

Article

Warum wollen Sie Microservices einfĂĽhren?

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

Article

Datenarchitekturen – nicht nur fĂĽr Microservices

Microservices werfen wichtige Fragen fĂĽr Software-Architektur auf. Besonders wichtig ist es, wie die Microservices mit Daten umgehen. Diese Konzepte lassen sich fĂĽr viel mehr nutzen als nur fĂĽr Microservices und werfen grundlegende Fragen ĂĽber Modularisierung auf.

Article

Innovation Tokens – Gegen Informatikerromantik und TechnologieĂĽberflutung

Wie viel Innovation sollen wir zulassen?

Podcast

Self-Contained Systems – Teil 2

Einsatzszenarien und Architekturevolution

Link

Continuous Delivery im Expertencheck, Teil 2

Link

Continuous Delivery im Expertencheck

Podcast

Self-Contained Systems – Teil 1

Eigenschaften und Umsetzung

Podcast

Event Sourcing und CQRS – Teil 2

Implementierung und Architektur

Podcast

Event Sourcing und CQRS – Teil 1

Vor- und Nachteile sowie Einsatz in verteilten Anwendungen

Blog Post

Design Patterns: Noch nie so wertvoll wie heute?

In einem Gastbeitrag diskutiert Frank Buschmann, Co-Autor der Buchreihe “The "Pattern-Oriented Software Architecture”, warum Patterns zur Zeit eine Renaissance erleben.

Blog Post

Serverless

Um den Begriff serverless gibt es immer noch hitzige Diskussionen. Einige halten ihn für einen Hoax und setzen ihn mit „useless“ gleich, andere schwören darauf, dass serverless bald alle anderen Architekturstile ablösen wird.

Blog Post

Implementierung einer einfachen Zustandsmaschine (state machine) in Java

JSE

Article

Lokale Datenanalyse mit Data Frames

Der Wunsch, aus Geschäftsdaten Erkenntnisse gewinnen zu wollen, ist in der Breite der Unternehmen angekommen. Häufig werden dabei technologische Aspekte wie Machine-Learning-Algorithmen und Cluster-Lösungen als Schlüssel betrachtet, um viele Fragen quasi automatisch zu beantworten. Doch muss es für einen Einstieg in dieses Thema immer direkt ein Big-Data-Framework oder ein Cluster für Machine Learning sein? Dieser Artikel zeigt Ihnen, wie Sie ganz einfach lokal auf Ihrem Rechner die ersten Schritte im Data-Science-Umfeld gehen können und dabei einen Überblick über die Vorgehensweise erhalten.

Podcast

Self-contained Systems und Frontend-Integration – Teil 2

Alternativen zu SPAs und Umsetzung von SCS

Link

heise Developer Continuous Architecture Blog, „Meine Datenbank gehört mir!“

Blog Post

arc42 - die Siebte

Das bewährte arc42 Template ist gerade in Version 7 erschienen - mit deutlichen Erweiterungen im Ökosystem. Grundsätzlich bleibt arc42 V7 kompatibel mit den Vorgängerversionen, ist insgesamt noch kompakter und pragmatischer geworden.

Podcast

Self-contained Systems und Frontend-Integration – Teil 1

Eigenschaften und Vor- und Nachteile

Article

Microservices lieben Domain Driven Design, warum und wie?

Domain Driven Design im Kontext von Microservices

Article

Microservices Ă  la Netflix

Das Projekt Spring Cloud Netflix integriert nur Spring Boot mit den Netflix Open Source Bibliotheken und bindet diese in die bekannte Auto-Konfiguration und das Binding von Spring Boot mit ein. Mit Hilfe von Spring Cloud Netflix ist es möglich durch wenige, einfache Annotationen die entsprechenden Komponenten von Netflix zu integrieren, konfigurieren und zu nutzen. Im Rahmen des Artikels geben wir ihnen einen Überblick über die Anbindung von Eureka (Service Discovery), Zuul (Intelligentes Routing), Ribbon (Client-seitiges Load-Balancing) und Hystrix (Circuit Breaker).

Article

Services: SOA, Microservices und Self-contained Systems

Die Aufteilung komplexer Software-Systeme in Services ist nicht neu: Service-orientierte Architekturen (SOA) nutzen diese Idee schon lange. In letzter Zeit sind Microservices als neuer Ansatz hinzugekommen. Microservice-Architekturen sind sehr flexibel und breit einsetzbar. Self-contained Systems verwenden Microservices, um große und komplexe Systeme in unabhängige Module aufzuteilen. Das unterstützt die Zusammenarbeit der Teams. Dieser Artikel gibt einen Überblick über SOA, Microservices und Self-contained Systems.

Article

Self-contained Systems: A Different Approach to Microservices

Article

Microservice-Infrastruktur

Die Cloud und darauf aufbauend Microservices haben in den letzten Jahren die Softwareentwicklung stark beeinflusst. Vor allem im Bereich der Infrastruktur tut sich hier auch heute noch einiges. Dabei wird man den Eindruck nicht los, dass jede Woche ein neues Produkt veröffentlicht wird. In diesem Artikel versuche ich, Ihnen durch diesen Dschungel zu helfen.

Article

Software-Architektur fĂĽr Innovation

Software ist mittlerweile in praktisch allen Wirtschaftsbereichen zentraler Teil der Wertschöpfung. Also sollte Software auch Innovationen ermöglichen. Die Frage ist, wie Software dazu beschaffen sein muss.

Link

“Microservices: Redundancy = Maintainability!” A Talk by Eberhard Wolff

Blog Post

The perils of shared code

In this blog article, I want to examine why using a sharing code between microservices may sound attractive in the first place and why it can cause bigger problems than the ones you try to solve.

Article

Spring Boot fĂĽr Microservices

Die Implementierung von Microservices stellt im Vergleich zu monolithischen Anwendungen Entwickler vor einige Herausforderungen. Spezialisierte Technologien wie Spring Boot unterstĂĽtzen die Umsetzung von Microservices und machen so den Projekten das Leben leichter.

Article

Wie kommt man zu Self-Contained Systems?

Architektur auf mehreren Ebenen

Article

Deployment und Monitoring von Microservices

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

Article

Microservices - eine Bestandsaufnahme

Microservices [1] dienen eigentlich „nur“ zur Modularisierung von Software. Für Modularisierung gibt es aber unzählige Ansätze: Klassen, Packages oder JARs dienen in der Java-Welt beispielsweise diesem Ziel. Nur so können auch große Projekte in kleine Einheiten aufgeteilt werden und bleiben dadurch erweiterbar und wartbar.

Article

Software systematisch verbessern

Mit etablierten, iterativ angewandten Praktiken zeigt aim42 Wege aus der Legacy-Hölle

Article

Zwei Jahre nach dem Tod der Java Application Server

Der ursprüngliche Artikel [1] hat mehrere Gründe aufgeführt, warum Application Server keine zeitgemäße Plattform mehr darstellen. Kurz zusammengefasst:

Link

heise Developer Continuous Architecture Blog: Softwareentwicklung ist nicht schnelllebig

Blog Post

What’s in a Name: Architecture

Link

Interview mit Stefan Tilkov: „Ich bin keinesfalls der Meinung, dass man immer Microservices einsetzen sollte“

Link

Buchbesprechung: arc42 in Aktion

Link

JAX TV: Wie sieht ein Microservices-Technologie-Stack aus?

Link

Domain-driven Design im Experten-Check: Wie kann DDD in die Praxis umgesetzt werden?

Link

Domain-driven Design im Experten-Check: Was sind die typischen Probleme bei der Umsetzung von DDD?

Link

Domain-driven Design im Experten-Check: Warum ist DDD heute relevanter denn je?

Article

Nachhaltige Webarchitekturen

Heutzutage gewinnt man leicht den Eindruck, dass es für moderne Webanwendungen nur einen einzig wahren Architekturansatz gibt: REST und Single-Page-Anwendungen (SPAs). Doch ist alles, was REST genannt wird, wirklich REST? Sind REST und SPAs immer die beste Lösung? Um diese Fragen beantworten zu können, sollte man sich anschauen, was REST eigentlich ist, wofür es gedacht ist und ob es möglicherweise auch Alternativen zu SPAs gibt; insbesondere mit dem Blick auf Nachhaltigkeit, also Wartbarkeit und Erweiterbarkeit.

Link

Interview mit Eberhard Wolff zu Self-contained Systems

Blog Post

Der Architektenaufzug: Ă–fters mal nach oben fahren

Link

Entwicklertag 2016: Microservices: Redundanz = Wartbarkeit!

Link

JAX TV: Legacy-Systeme mit Microservices, Hystrix und RxJava modernisieren

Blog Post

ROCA vs. SPA

Comparing two architectural styles with a concrete example

Link

JAX TV: arc42 Reality Check

Link

Heise Developer Continuous Architecture Blog, „DevOps ist keine Organisation“

Article

AWS Lambda

Serverlose Microservices

Link

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

Blog Post

Solving the wrong problems

Instead of rushing to an engineering solution to a problem, we would often be better off by lying back and determining the root cause of our engineering problem, which is often an architectural one.

Link

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

Link

Heise Developer Continuous Architecture Blog, „Hat Betrieb eine Zukunft?“

Link

Video-Interview mit Stefan Tilkov

Article

Java-Web-Frameworks von innen?

Im Maschinenraum

Blog Post

What’s in a Name: Transparency

The term transparent denotes something translucent, where light can shine through. It is, for example, used in context of economics (transparent markets), meaning markets where much is known by many, and nothing is hidden. Sometimes geeks tend to inverse this meaning, saying transparency where they mean opaqueness. This post illustrates that your favorite XY-framework by no means makes XY transparent for developers.

Link

Video-Interview mit Phillip Ghadir zu Cloud-native Architectures

Link

Eberhard Wolff on Microservices

Article

Microservices - Agilität durch Modularisierung

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

Link

Building Microservices with Event Sourcing and CQRS

Link

REST 2015 – Video des WJAX-Vortrags von Silvia Schreier

Link

Microservices im Experten-Check, Teil 3: Wie groĂź sollte ein Microservice sein?

Link

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

Link

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

Link

Episode 52: Microservices und Self-contained Systems

Link

Eberhard Wolff on Microservices

Link

Wider den Blindflug: Logging und Metriken in verteilten Anwendungen

Blog Post

Why RESTful communication between microservices can be perfectly fine

Recent debates about REST versus message passing in microservice communication have led to some confusion. What is meant with asynchronous communication in this context and why is REST a perfectly valid choice?

Case Study

Dental goes digital

From dental impression to order
Link

Warum Programmierer an ihren Software-Systemen riechen mĂĽssen

Link

Microservices in the Real World

News

Voxxed Days Berlin 2016

Podcast

Redis in der Praxis

Ăśberblick und praktischer Einsatz des schnellen Datenstruktur-Servers

Link

Heise Developer Continuous Architecture Blog, „Architekten mĂĽssen keinen Code schreiben!“

Article

Docker - Perfekte Verpackung von Microservices

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

Link

JAX TV: Integration von Microservices – REST vs. Messaging, eine W-JAX 2015 Sesion mit Oliver Gierke (Pivotal Software) und Eberhard Wolff (innoQ)

Link

Heise Developer Continuous Architecture Blog, „Neun Jahre Microservices“

News

W-JAX 2015 mit Web-Anwendungen, Microservices und REST 2015

Link

Why programmers need to smell their software systems

News

Berlin Expert Days 2015

Link

Heise Developer Podcast, Episode 49: Architekturanalyse und -bewertung

Blog Post

What’s in a Name: Consistency

Blog Post

Microservices und Continuous Delivery: Nur zusammen möglich?

Microservices unterteilen große Systeme in kleine Deployment-Einheiten. Dies macht Continuous Delivery wesentlich einfacher. Sind aber Microservices ohne Continuous Delivery möglich? Und ist Continuous Delivery ohne Microservices umsetzbar? Ist die Kombination eher eine Synergie oder macht sie nur alles noch komplizierter?

Link

Vier Fragen, die Sie sich bei jedem Webprojekt stellen sollten

News

Neue Trainingstermine im Herbst: Microservices-Praxis-Workshop und Skalierbare Webarchitekturen

Link

Microservices: Smaller Is Better?

Blog Post

Reliable Web Clients

Microservices can make teams and systems more independent but also more vulnerable to the fallacies of distributed systems. Initially I thought this blog post is going to be about how to build reliable web clients with Akka and Akka Persistence. While this is an interesting topic by itself, I now think it is more crucial to first understand the underlying problems and trade-offs before we learn how to get around them.

Article

Bessere Web-Apps mit HTML5-APIs

Pimp my Browser

Link

Microservices - Are Your Frameworks Ready?

Link

Heise Developer Continuous Architecture Blog, „Continuous Integration widerspricht Feature Branches!“

News

Microservices, Internet of Things und RxJava beim Java Forum Stuttgart

Article

Apache Cassandra

Bei Cassandra handelt es sich um eine spaltenorientierte Datenbank, die auf die Verteilung von Daten in großen Umgebungen zugeschnitten ist. Die Konzepte von Cassandra ähneln zwar relationalen Konzepten, unterscheiden sich aber dennoch. Tabelle 1 stellt die Cassandra-Konzepte ihren relationalen Pendants gegenüber:

Link

Heise Developer Continuous Architecture Blog, „Microservices: Architektur oder Organisation?“

Link

Don’t start with a monolith

Blog Post

What’s in a Name: Reactive

The term reactivity is overloaded with several different meanings. This post tries to identify and clarify a few of them…

Podcast

Twelve-Factor App: Web-Applikationen auf die neue Art

Ein Ansatz fĂĽr skalierbare, portable und leicht deploybare Web-Applikationen in der Cloud

Blog Post

Why You Should Avoid a Canonical Data Model

Link

Self-Contained Systems

Link

Interview zum Thema Microservices mit Clojure

Article

Logging konsolidieren und Performance gewinnen

Performance, Durchsatz und Integrität

News

microxchg 2015 - Die Microservices Konferenz in Berlin mit innoQ-Beteiligung

Article

Scalable Software Systems

Scalability has long been one of the hallmarks of quality IT systems. When we hear this term we usually associate it with an upward scalability of the system. Generally, it seems to be about how much more throughput and load our system can sustain through additonal RAM, CPU or extra machines. Often, however, downwards scalability is just as interesting, that is, the behaviour of the system when only very few resources are available. Such flexibility is very useful, for instance, if a complex system has to go through a variety of differently sized development, test and acceptance environments before it is provisioned in the live system.

Article

Kanonische Architektur-Evolution

Stereotypen, Konzepte und Konstruktionsregeln

Article

Hystrix – damit Ihnen rechtzeitig die Sicherung durchbrennt

Sicherungen wurden ursprünglich eingeführt, um die Eskalation einer Situation zu verhindern. Wenn Ihnen ab und zu die Sicherung durchbrennt, ist das deshalb durchaus zu begrüßen, jedenfalls wenn es sich dabei um einen Circuit-Breaker im Sinne von Hystrix handelt. In diesem Artikel möchten wir Ihnen Hystrix vorstellen, eine Bibliothek, die ihnen dabei hilft, die Stabilität ihrer verteilten Anwendung zu verbessern und kaskadierende Fehlerszenarien zu verhindern.

Article

Skalierbare Softwaresysteme

Skalierbarkeit ist eines der klassischen Qualitätsmerkmale von IT-Systemen. Wenn wir diesen Begriff hören, denken wir üblicherweise sofort an die Skalierung des Systems “nach oben”. Es scheint also meistens darum zu gehen, inwieweit unser System durch das Hinzufügen von mehr RAM, CPU oder zusätzlichen Maschinen auch entsprechend mehr Durchsatz erreicht oder mehr Last vertragen kann. Oft ist aber auch die Skalierbarkeit “nach unten” interessant, also die Lauffähigkeit des Systems bei sehr wenig verfügbaren Ressourcen. Eine solche Flexibilität ist zum Beispiel sehr hilfreich, wenn ein komplexes System automatisiert durch viele unterschiedlich dimensionierte Entwicklungs-, Test- und Abnahmeumgebungen wandern muss, bevor es in der Produktivumgebung ankommt.

Podcast

Grid-Computing

GroĂźe Netze fĂĽr groĂźe Probleme

Article

Domain-Driven Design in Clojure

Obwohl DDD meist im Zusammenhang mit Objektorientierung genannt wird, sind die Prinzipien auch gut mit einer funktionalen Sprache umsetzbar. Eine EinfĂĽhrung in Clojure, dem Lisp fĂĽr die JVM, bietet beispielsweise [1] [2] [3].

Podcast

Graphdatenbanken

Vor- und Nachteile graphbasierter Datenbanken

Article

Versionsmanagement auf dem Tanker

Typische SCM-Szenarien groĂźer Projekte mit festem Releasetakt

Article

Large Scale Business Process Integration

Geschäftsprozesse werden heutzutage vielmals unternehmensintern im Rahmen von BPM-Initiativen oder Projekten mit Geschäftsprozessmanagementsystemen, unter anderem auf der Basis von BPEL oder BPMN, automatisiert und eingeführt. Im Rahmen des Projekts Terravis entsteht eine schweizweite Plattform für elektronische Geschäfte zwischen Grundbuchämtern, Banken, Notaren und Handelsregistern, die im Endausbau bis zu 1 000 Umsysteme miteinander verbinden und die Prozesse mit den Beteiligten koordinieren wird. Da wir glauben, dass solche Projekte in Zukunft in der einen oder anderen Facette häufiger vorkommen werden, stellen wir in diesem Artikel die Architektur für solche Projekte vor und berichten über unsere Erfahrungen.

Podcast

CSS-Architektur

Architekturaspekte von Cascading Style Sheets

Podcast

Architekturdokumentation

Ăśber den richtigen Grad von Dokumentation fĂĽr Softwarearchitekturen

Article

Early-Design Reviews

Dieses Dokument richtet sich an Unternehmensarchitekten, Technische Projektleiter, Projektleiter, Produktmanager, Projektauftraggeber und Projektarchitekten, die sich über die Möglichkeiten der Qualitätsbewertung im Rahmen frühzeitiger Reviews informieren möchten.

Article

Quality Driven Software Architecture

Qualität bildet die Existenzberechtigung für Softwarearchitekten: Zuverlässig, performant, skalierbar und benutzerfreundlich sollen unsere Systeme sein, das alles kosteneffektiv und zukunftssicher. Jeder IT’ler weiss, dass diese Kombination von Eigenschaften harte Arbeit bedeutet. Lesen Sie hier, wie Softwarearchitekten systematisch Qualität konstruieren können.

Link

Softwarearchitektur im GroĂźen

Link

No REST for the Wicket

Link

Eine gute Wahl treffen – Ein Überblick über die Web-Services-Technologien und ihre wichtigsten Standards und Spezifikationen

Link

Ereignis-getriebene Architekturen: ein Ăśberblick

Link

Effektive Software-Architekturen: Ein praktischer Leitfaden.