Focus

architecture

Online training

Online training

Domain-driven Design in Practice

iSAQB Module DDD

Online training

Online training

Reduzierte Wartungskosten durch evolutionäre Verbesserung

iSAQB-Modul IMPROVE

Online training

Online training

Flexible Architekturen

Microservices, Self-contained Systems und Continuous Delivery: iSAQB Modul FLEX

Training

Training

Skalierbare Web-Architekturen

iSAQB Modul WEB

Berlin

Talk
Talk

Hands-On Service Mesh Workshop mit Istio

Microservices Summit 2020 / 09:00 - 12:30

Blog Post

Happy without a Service Mesh

The basis for meaningful architecture decisions is the examination of the problem and a good overview of the options.

Blog Post

Agile Architekturarbeit

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

Blog Post

Architektur-Reviews remote durchfĂĽhren

Software Reviews lassen sich dank moderner Arbeitsmittel remote durchführen und schaffen dabei auch neue Möglichkeiten.

Blog Post

GlĂĽcklich ohne Service Mesh

Die Basis fĂĽr sinnvolle Architekturentscheidungen ist die Auseinandersetzung mit dem Problem und ein guter Ăśberblick ĂĽber die Optionen.

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

In various communities, several methods for the collaborative modeling of business requirements have been established in recent years. Well-known examples are EventStorming or Domain Storytelling. These approaches are based on achieving a better shared understanding of the business requirements in an interdisciplinary way. But what about the requirements for the quality of the software being developed? Especially here, a collaborative approach is immensely important in order to avoid chasing after imperfect ideals that cause the costs and complexity of products to explode. This is where the workshop format Quality Storming comes in, which I would like to introduce in the course of this article.

Article

Architektur­entscheidung im agilen Team

Zusammen Architektur machen

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

Microservices sind der große Architektur-Trend in den letzten Jahren. Mittlerweile stellt sich aber Ernüchterung ein: Auch Microservices-Projekte sind vorm Scheitern nicht sicher. Sich die typischen Gründe für das Scheitern anzuschauen, ermöglicht es, diese Probleme zu umgehen und so erfolgreiche Projekte umzusetzen.

Article

Optionen der Frontend-Integration

Link

Artikel: Ameisenprinzip. Von Stefan Tilkov und Eberhard Wolff

Blog Post

Cooking with Onions: Inward-Pointing Arrows

Some violations of our architectural principles are easy to spot. Others hide in plain sight, and neither static analysis nor a shallow code review will help you spot them.

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

Microservices führen zu neuen Herausforderungen und machen neue technologische Ansätze notwendig. Microservices-Frameworks sind zwar ein Teil der Lösung, aber sicher nicht der wichtigste. Welche Technologien spielen eine entscheidende Rolle?

Article

Microservices – oder doch nicht?

Alternativen und Nachfolger zum Hype

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

Prinzipiell unabhängig

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?

Reuse used to be the holy grail of software development. If developers reuse code, they don’t have to write it again. This should increase productivity significantly. In the meantime, however, some things have changed - and even redundant code has advantages. So avoiding redundancy is also just another trade-off.

Blog Post

Technical Debt Just Happens

…But You Will Have to Deal With It!

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

Warum eine dezidierte Infrastruktur wie Istio notwendig ist

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

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

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

The term evaluation is often used in the context of system and architecture reviews. In my opinion, this term is often misleading and such activities should be named differently.

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

Microservices sind in aller Munde. Gerade bei Software-Entwicklung machen solche Hypes misstrauisch. SchlieĂźlich steckt hinter einem Hype oft wenig Substanz. Es ist also Zeit ein erstes Fazit zu ziehen.

Article

Warum wollen Sie Microservices einfĂĽhren?

Erst Ziele klären, dann Microservices machen

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

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

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?

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

Eine simple Zustandsmaschine (state machine) in Java

Article

Lokale Datenanalyse mit Data Frames

Am Anfang war die Frage

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

Podcast

Self-contained Systems und Frontend-Integration – Teil 1

Eigenschaften und Vor- und Nachteile

Article

Microservices lieben Domain Driven Design, warum und wie?

Betrachtet man diverse Publikationen rund um Domain Driven Design und Microservices, so stellt man fest, dass das Konzept des Bounded Contexts von zentraler Natur ist. Es gibt kaum eine Veröffentlichung zur Modellierung von Microservices, die dieses Konzept nicht erwähnt. Allerdings greift diese Konstellation zu kurz: es gibt weitaus mehr über Domain Driven Design und Microservices zu berichten als den Bounded Context. Betrachtet man auf der anderen Seite das Thema Domain Driven Design so ist festzustellen, dass das Thema weit über die hinlänglich bekannten Entitäten, Value Objects und Aggregate hinausgeht.

Article

Microservices Ă  la Netflix

Die Bestandteile von Spring Cloud Netflix

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

Microservices are the current hype in the Software Architecture community. However, microservices can be used in many different scenarios to reach different goals. Self-contained Systems (SCS) are one approach to achieve some of those goals while avoiding many common pitfalls.

Article

Microservice-Infrastruktur

Ein unvollständiger Überblick

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

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?

Bereits in [1] haben Stefan Tilkov und ich beschrieben, dass es sinnvoll ist, große Systeme in Teilsysteme zu zerlegen, und erstmals erläutert, was wir im Allgemeinen unter Mikro- und Makro-Architektur verstehen. Aus verschiedenen Vorträgen, Experimenten und Projekten kristallisierte sich irgendwann der Name für solche Teilsysteme in einem komplexen Gesamtsystem heraus: Self-Contained Systems.

Article

Deployment und Monitoring von Microservices

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

Es ist ein bekanntes Phänomen: Obwohl zu Beginn beim Entwickeln des Projekts alles sauber und ordentlich zuging, degeneriert das System mit der Zeit – das Phänomen der „verfaulenden Software“ schlägt zu. Änderungen werden dann immer riskanter, schwieriger und langwieriger. In der Entwicklung und im Betrieb mehren sich die Probleme, die zu beheben immer mehr Zeit in Anspruch nimmt. Gleichzeitig steigen aber auch Änderungs- und Betriebskosten, während die Zufriedenheit von Entwicklern, (fachlichen) Auftraggebern, Testern, Administratoren und anderen Beteiligen ständig abnimmt. Vermutlich kennt jeder Leser diese Situation: Willkommen in der Legacy-Hölle.

Article

Zwei Jahre nach dem Tod der Java Application Server

Leben Todgesagte länger?

Link

heise Developer Continuous Architecture Blog: Softwareentwicklung ist nicht schnelllebig

Blog Post

What’s in a Name: Architecture

The term architecture is used with slightly different meanings throughout the IT industry. This post clarifies what (software) architecture is all about - and which misunderstandings might linger on your way to common understanding.

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

Warum REST und SPAs nicht immer die Lösung sind

Link

Interview mit Eberhard Wolff zu Self-contained Systems

Blog Post

Der Architektenaufzug: Ă–fters mal nach oben fahren

In einem Gastbeitrag geht Gregor Hohpe der Frage nach, welche Rolle Softwarearchitekten in Zeiten der Digitalen Transformation spielen, und welche Relevanz diese Aufgabe fĂĽr die Zukunft von Unternehmen hat.

Link

Entwicklertag 2016: Microservices: Redundanz = Wartbarkeit!

Link

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

Blog Post

ROCA vs. SPA

Currently, a lot of companies are migrating from Desktop applications (mostly written in Java) to Web applications for their products as well as for their internal tooling. When they start with this process they often ask themselves: Which technologies should we use to build our Web application? Should we use Angular.js or React? Or should we go with recommendations like ROCA instead of a Single Page Application?

Link

JAX TV: arc42 Reality Check

Link

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

Article

AWS Lambda

Seit Kurzem gibt es von verschiedenen Cloud-Anbietern Services fĂĽr die Entwicklung serverloser Event-getriebener Anwendungen in der Cloud: Google (Cloud Functions), IBM (OpenWhisk), Microsoft (Azure Functions) und allen voran AWS Lambda von Amazon. Dieser Artikel beschreibt am Beispiel von AWS Lambda das Programmiermodell und hilft bei der Beantwortung der Frage, ob sich der Einsatz fĂĽr Ihre Anwendung lohnt.

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?

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

Blog Post

What’s in a Name: Transparency

Link

Video-Interview mit Phillip Ghadir zu Cloud-native Architectures

Link

Eberhard Wolff on Microservices

Article

Microservices - Agilität durch Modularisierung

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

Case Study

Dental goes digital

Together with Heraeus Kulzer, INNOQ developed a cloud-based platform to handle ordering processes in the area of dentistry. In this case study, we present the general conditions and requirements of the project and show how the technical solution using Amazon Web Services looks.
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

The term consistency has several different meanings. This post identifies and clarifies those - especially consistency as synonym for conceptual integrity, one of the most important features for long-lasting software systems.

Blog Post

Microservices und Continuous Delivery: Nur zusammen möglich?

Link

Vier Fragen, die Sie sich bei jedem Webprojekt stellen sollten

Link

Microservices: Smaller Is Better?

News

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

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

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

Link

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

Link

Microservices - Are Your Frameworks Ready?

News

Microservices, Internet of Things und RxJava beim Java Forum Stuttgart

Article

Apache Cassandra

FĂĽr Daten ohne Grenzen

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

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

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.

Link

Self-Contained Systems

Link

Interview zum Thema Microservices mit Clojure

Article

Logging konsolidieren und Performance gewinnen

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

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

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

Article

Hystrix – damit Ihnen rechtzeitig die Sicherung durchbrennt

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.

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

Grid-Computing

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

Podcast

Graphdatenbanken

Vor- und Nachteile graphbasierter Datenbanken

Article

Versionsmanagement auf dem Tanker

Die klassischen Enterprise-Projekte, die wie Öltanker auf hoher See unbeeindruckt von agilen Strömungen oder anbrandenden DevOp-Wellen ihren gewohnten Kurs halten. Im vorausgeplanten Takt produziert ein solches Projekt eine Handvoll Releases pro Jahr. Jedes einzelne Release wird in einem definierten Prozess von Stufe zu Stufe weitergereicht: Entwicklung, Test, Produktion.

Article

Large Scale Business Process Integration

Zwischen Grundbüchern, Banken und Notaren – Erfahrungen und Herausforderungen

Podcast

CSS-Architektur

Architekturaspekte von Cascading Style Sheets

Podcast

Architekturdokumentation

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

Article

Early-Design Reviews

Whitepaper zu Architektur-Reviews

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.