Schwerpunktthema

Softwarearchitektur

Fachartikel, Podcasts, VortrÀge und mehr zum Thema Softwarearchitektur.
Artikel

The right size of a Data Product

Setting the boundaries of data products incorrectly can lead to integration issues, unclear ownership and duplicated logic. This guide offers practical heuristics for creating data products of the right size.

Artikel

Neuland reloaded

When Angela Merkel said in 2013 that the internet is ‘Neuland’ (uncharted territory) for all of us, the amusement online was considerable. Viewed from some temporal and substantive distance, one can now recognize a perspective from which she was indeed correct.

Podcast

Worst of Breed

Mit der Blockchain Cookie-Handling implementieren

Artikel

Jeder kann Architekt sein!

Und jede natĂŒrlich auch. In diesem Artikel zeige ich, dass die Architektenrolle andere Kompetenzen verlangt, als viele annehmen.

Artikel

Ein Überblick der AI-assistierten Softwareentwicklung in 2026

Birgitta Boeckeler (ThoughtWorks), Heinrich Hartmann (Zalando) und Sven Johann haben sich ĂŒber den aktuellen Status der AI-assisted Software Entwicklung unterhalten: was ist wirklich Wichtiges in 2025 passiert? Welche stabilen Muster können wir ableiten? Was gibt Orientierung und Einordnung? Und natĂŒrlich ein paar Einblicke in den Future of Software Engineering Retreat in Utah an dem Birgitta teilgenommen hat. Die Unterhaltung gibt es natĂŒrlich auch als Podcast. Dieser Artikel ist aber eine menschlich kuratierte Zusammenfassung.

Blog-Post

Deine Datenbanktabelle ist eine schlechte API

Ist Datenbankintegration immer noch ein Thema?

Podcast

EU-Data Act fĂŒr Digitale Dienste

Was Anbieter und Konsumenten jetzt vorbereiten mĂŒssen

Blog-Post

Leave It Better Than You Found It

„Lass den Code besser zurĂŒck, als du ihn vorgefunden hast.“ Dieser Rat, auch bekannt als Scout Rule, klingt simpel – aber wie sieht das eigentlich in der Praxis aus? Dies ist die Geschichte davon, wie ich diesem Prinzip gefolgt bin, dabei einen ĂŒberladenen Controller aufgerĂ€umt habe und wie uns dies völlig unerwartet geholfen hat, neue Anforderungen schnell und mit minimalem Aufwand umzusetzen. Eine kleine Lektion in guter Gewohnheit und kontinuierlicher Architekturarbeit.

Podcast

Kontinuierliche Architekturarbeit

Wissen explizit machen

Blog-Post

Why not scatter @Transactional everywhere?

@Transactional — great when you know when not to use it. Use it consciously instead of sprinkling it everywhere!

Podcast

Resilienz

Prozesse, Kultur und Technik

Artikel

Digitale SouverÀnitÀt durch Standardsoftware erreichen

Podcast

20 Jahre arc42

Dokumentation im Wandel

Artikel

Der Weg zur heterogenen Cloud Plattform

Die digitale Transformation bringt fĂŒr Unternehmen sowohl Herausforderungen als auch Chancen mit sich. Um zukunftssichere und flexible IT-Infrastrukturen zu schaffen, setzen immer mehr Unternehmen auf Multi-Cloud- oder hybride Cloud-Strategien. Hierbei geht es nicht nur um Kostenreduktion, sondern auch darum, innovative Dienste verschiedener Anbieter mit regulatorischen Anforderungen – insbesondere im Bereich Datenschutz – in Einklang zu bringen. Dieser Artikel zeigt Ihnen, wie Sie mit gezielten Integrationsstrategien die Vorteile von Multi-Cloud nutzen können, um Ihre bestehende Infrastruktur zu optimieren, technische AbhĂ€ngigkeiten zu reduzieren und dabei den geschĂ€ftlichen Erfolg langfristig zu sichern.

Artikel

Governance-Methodik fĂŒr digitale SouverĂ€nitĂ€t

Artikel

Digitale SouverÀnitÀt: Warum die Architektur zÀhlt und wie Sie Ihr Unternehmen resilient machen

In einer Zeit, in der digitale Systeme das RĂŒckgrat unserer Wirtschaft und Gesellschaft bilden, rĂŒckt die Kontrolle ĂŒber die eigene digitale Zukunft zunehmend in den Fokus strategischer Entscheidungen. FĂŒr viele Technologieentscheider:innen im deutschsprachigen Raum ist dies nicht nur eine politische oder regulatorische Herausforderung, sondern eine grundlegende Aufgabe, die weitreichende Implikationen fĂŒr die Software-Architekturarbeit hat.

Podcast

Cloud Migrationsstrategien

6Rs in der Praxis

Blog-Post

Mobile Portale mit HATEOAS und Self-Contained Systems

Artikel

Technische und andere Schulden in IT-Systemen

Dieser Artikel beleuchtet verschiedene Formen technischer Schulden, die IT-Teams bremsen – oft unbemerkt und weit ĂŒber schlechten Code hinaus.

Blog-Post

Updating OWASP’s Microservice Security Cheat Sheet: Practical Considerations & Recommendations

Turning principles and patterns into practice — just as promised.

Artikel

Von Datenfriedhöfen zu Wissenslandschaften

Europas digitaler SouverÀnitÀtsanspruch in der Praxis

Blog-Post

Updating OWASP’s Microservice Security Cheat Sheet: Decision Dimensions for Authorization Patterns

Choosing the right patterns is critical, as it directly impacts the system’s security posture, performance, scalability, and maintainability.

Podcast

Kopplung

Zwischen AbhÀngigkeit und Autonomie

Artikel

Pragmatische Architekturdokumentation fĂŒr Entwicklungsteams

Artikel

Digitale SouverĂ€nitĂ€t – Ein Definitionsversuch

Der Begriff Digitale SouverĂ€nitĂ€t trĂ€gt die Wolkenwende. Beim Versuch einer Definition ist es unvermeidlich, verschiedene Perspektiven einzunehmen. Weniger, was das Digitale angeht – hier stehen ganz klar Informationstechnologie und Software im Fokus. SouverĂ€nitĂ€t allerdings ist als Begriff eine andere GrĂ¶ĂŸenordnung.

Artikel

Digitale SouverÀnitÀt: Warum die Architektur zÀhlt und wie Sie Ihr Unternehmen resilient machen

In einer Zeit, in der digitale Systeme das RĂŒckgrat unserer Wirtschaft und Gesellschaft bilden, rĂŒckt die Kontrolle ĂŒber die eigene digitale Zukunft zunehmend in den Fokus strategischer Entscheidungen. FĂŒr viele Technologieentscheider:innen im deutschsprachigen Raum ist dies nicht nur eine politische oder regulatorische Herausforderung, sondern eine grundlegende Aufgabe, die weitreichende Implikationen fĂŒr die Software-Architekturarbeit hat.

Blog-Post

Updating OWASP’s Microservice Security Cheat Sheet: Identity Propagation Patterns

Blog-Post

Updating OWASP’s Microservice Security Cheat Sheet: Authentication Patterns

Without knowing who the subject is, without verifying its identity, there is only a limited way to perform meaningful access decisions.

Blog-Post

What’s Wrong with the Current OWASP Microservice Security Cheat Sheet?

Modern microservice architectures require evolving security practices. Yet popular resources like the OWASP Microservice Security Cheat Sheet are starting to show their age and need a fresh look.

Blog-Post

Updating OWASP’s Microservice Security Cheat Sheet: Core Concepts

Podcast

KohÀsion

Wie viel Zusammenhang braucht ein Modul?

Artikel

CIO-Fragestellungen zur digitalen SouverÀnitÀt

Was passiert, wenn europĂ€ische Unternehmen morgen keine US-Cloud-Dienste mehr nutzen dĂŒrfen – oder sie sich diese schlicht nicht mehr leisten können? IT-Verantwortliche brauchen Antworten – nicht auf Basis von BauchgefĂŒhl, sondern faktenbasiert. In diesem Beitrag geht es darum, mögliche Risiken in der Nutzung US-amerikanischer Cloud-Services zu beleuchten und zu identifizieren, wie Methoden der Enterprise Architektur dabei helfen können, diese zu meistern.

Blog-Post

Updating OWASP’s Microservice Security Cheat Sheet: Authorization Patterns

Podcast

Testpyramide oder Testdiamant?

Welche Automatisierungsstrategie passt zu meinem Kontext?

Artikel

Soziotechnische Architekturen: InformalitÀt vom Bergbau bis heute

Informelle Strukturen wirken oft unsichtbar – und sind doch entscheidend fĂŒr den Erfolg technischer Lösungen. Warum das so ist und was Bergbau mit App-Entwicklung zu tun hat, zeigt ein Blick auf soziotechnische Systeme.

Artikel

Enabling von Stakeholdern als Erfolgsfaktor

Artikel

Wieviel Denken ertrÀgt ein Team?

Der Begriff Cognitive Load wird seit einigen Jahren regelmĂ€ĂŸig verwendet, wenn es um Strukturen von Teams, Rollen und Aufgabenverteilung in IT-Organisationen geht. In der Diskussion wird hĂ€ufig wenig zwischen den unterschiedlichen Zwecken der IT-Organisationen unterschieden, ebenso basiert die Diskussion oft auf einem stark reduzierten Konzept von Cognitive Load.

Artikel

Interne Entwicklungsplattformen – Shift Down statt Shift Left

Interne Entwicklungsplattformen (IDPs – Internal Developer Platforms) helfen uns, die Softwareentwicklung zu beschleunigen. Sie sind die natĂŒrliche Weiterentwicklung der Entwicklungen der letzten Jahrzehnte. Warum das so ist, möchten wir mit einem historischen Abriss zeigen und danach auf die aktuellen Herausforderungen blicken.

Artikel

Vergesst die Menschen nicht

Wenn ArchitekturÀnderungen zum Change Projekt werden

Podcast

Jetzt doch wieder ein Monolith/Modulith?

Die Architekturfrage neu gestellt

Artikel

Soziotechnische Architektur als Wettbewerbsvorteil

In der heutigen GeschĂ€ftswelt dient technologischer Fortschritt nicht nur der Effizienzsteigerung, sondern eröffnet auch neue GeschĂ€ftsfelder, die ohne diese Technologien undenkbar wĂ€ren. Die optimale Nutzung neuer Technologien wird damit zu einem zentralen Wettbewerbsvorteil. IT-Entscheider:innen stehen jedoch zunehmend vor der Herausforderung, dass Technologie allein nicht ausreicht. Stattdessen mĂŒssen Unternehmen sich als soziotechnisches System verstehen, in dem technische Systeme und menschliche Interaktionen eng miteinander verzahnt sind. Dieser Artikel zeigt, warum soziotechnische Architekturen fĂŒr IT-Entscheider:innen relevant sind und wie sie Unternehmen einen Wettbewerbsvorteil verschaffen können.

Blog-Post

Bringt eure Schafe ins Trockene: Tipps fĂŒr politische Risikovorsorge

Mit Vorsorge raus aus der AbhÀngigkeit

Blog-Post

Digitale SouverÀnitÀt

Digitale SouverĂ€nitĂ€t bedeutet letztlich, dass Europa die Kontrolle ĂŒber seine digitale Zukunft behĂ€lt – technologisch, wirtschaftlich und regulatorisch. FĂŒr Unternehmen ist dies nicht nur ein politisches Schlagwort, sondern ein handfester Faktor fĂŒr Risiko- und Erfolgsbewertung. Doch warum genau sollten Unternehmen bei Entscheidungen zur digitalen Transformation den Aspekt der europĂ€ischen SouverĂ€nitĂ€t berĂŒcksichtigen?

Artikel

Von Legacy-Monolithen zu Self-contained Systems

Moderne Architektursysteme teilen die Arbeit in voneinander unabhĂ€ngige Teams auf. Eine bestehende, monolithische Anwendung muss dafĂŒr zerlegt werden.

Artikel

Plattformen, Teams und APIs: Wie passt das zusammen?

Artikel

GĂ€ngige Methoden im Umfeld soziotechnischer Architekturen

In der Ära der Digitalisierung und Modernisierung stehen Unternehmen vor der Herausforderung, sich nicht nur technologisch, sondern auch organisatorisch optimal auszurichten. Soziotechnische Architekturen spielen dabei eine SchlĂŒsselrolle, da sie den Fluss von Arbeit, die Zusammenarbeit zwischen Teams und die Integration technischer und sozialer Systeme in den Fokus rĂŒcken. Dieser Artikel beleuchtet zwei zentrale AnsĂ€tze – Team Topologies und Domain-Driven Design (DDD) – und zeigt, wie sie Unternehmen helfen können, mit bewusster soziotechnischer Architekturarbeit zu starten.

Podcast

Vielschichtigkeit von Plattformen

Von Infrastruktur bis Business – eine Einordnung

Blog-Post

Canvas 101

One-Pager fĂŒr bessere Kommunikation

Blog-Post

Bessere APIs, aber wie?

API Linting verbessert die QualitĂ€t einzelner APIs und hilft, Design-Standards in Organisationen zu etablieren und zu unterstĂŒtzen. Spectral als das populĂ€rste Linting Tool hat eingebaut Regeln und unterstĂŒtzt selbstgeschriebene Regeln. Vor allem in grösseren Organisationen hilft API Linting, Hilfestellung und Automatisierung beim API-Design zu unterstĂŒtzen.

Artikel

APIs als strategische digitale Bausteine

Organisationen mĂŒssen heute balancieren, ihre aktuellen Aufgaben effizient zu erfĂŒllen, aber sie mĂŒssen ebenso in der Lage sein, auf neue Anforderungen schnell und flexibel reagieren zu können. „Unbundling the Enterprise” ist ein neues Buch, das untersucht und beschreibt, wie sich Unternehmen durch systematisches Entflechten mehr Optionen verschaffen können, und somit besser in der Lage sind, auf neue Anforderungen zu reagieren.

Artikel

Back to Basics: Gute Architektur muss nicht „trendy“ sein

Podcast

Die Reise der Zalando Reliability Organisation

Zu Gast: Heinrich Hartmann, ‹Principal SRE‹, Zalando

Podcast

INNOQ Technology Day

Programm und Behind the Scenes

Blog-Post

LLM-assisted Abbreviation Mining for Legacy Systems

Deciphering the Hidden Language within Old Software Programs

Podcast

QualitÀtstaktiken

FĂŒr angemessene QualitĂ€t sorgen

Artikel

Entwickler skalieren anders als Applikationen

Interne Plattformen können die unternehmenseigene Softwareentwicklung beschleunigen, indem sie die mentale Belastung der Entwicklungsteams reduzieren. Als Abstraktionsschichten konzentrieren sie sich auf die wesentliche Fach- und LaufzeitdomĂ€ne. Wenn sie sorgfĂ€ltig gebaut sind, durchbrechen sie alte Konflikte und erlauben zum Beispiel den Entwicklungsteams viel Innovationsfreiheit trotz (oder dank) hoher Standardisierung. Allerdings erfordert dies ein Umdenken ĂŒber den Wert von Wiederverwendung und auch eine Kehrtwende von Projekten hin zu internen Produkten. Organisationen, die der Versuchung erliegen, bestehende Betriebsschichten oder Frameworks in „Plattformen” umzubenennen, dĂŒrfen daher keine Wunder erwarten.

Podcast

Was ist Programmieren?

Peter Naur’s “Programming as Theory Building” heute

Artikel

Nicht mehr Open-Source

Was kann man tun, um sich vorab dagegen zu wappnen, plötzlich fĂŒr eine wichtige Technologie einem Anbieter ausgeliefert zu sein? Kann es auch eine valide Entscheidung sein, das Risiko bewusst in Kauf zu nehmen? Und sind die Risiken, die sich bei Verwendung von Open-Source-Technologien ergeben, per se geringer als bei kommerziellen Alternativen? Wie geht man damit um, wenn eine Technologie, die man verwendet, plötzlich nicht mehr Open-Source ist? Ist es sinnvoll, zu einem Fork zu wechseln, und welche Risiken bestehen dabei?

Podcast

Bootcamp Softwarearchitektur

Die iSAQB-Advanced-PrĂŒfung

Artikel

API gut, alles gut

Schnittstellen fĂŒr unabhĂ€ngige Systeme

Podcast

Backstage

Erhöhte Development Experience

Podcast

Kultur der Architekturarbeit

Vernetzung und Dialog zwischen Teams

Blog-Post

Rate Limiting with Spring Boot, Bucket4j, and Redis

Blog-Post

Rate Limiting with Spring Boot

Let’s implement rate-limiting protection for your Spring Boot server without the need for any additional dependencies beyond those included in the Spring Boot Starter package.

Podcast

Architecture Antipatterns

Von guten Ideen und Kipppunkten

Podcast

Architektur-Reviews

Systematisch Risiken und Probleme aufdecken

Artikel

Technologien zur Integration von Services

Im Zuge einer internen Studie haben wir mehrere INNOQ Berater*innen nach ihren Erfahrungen in aktuellen oder vergangenen Entwicklungsprojekten befragt. Ein interessantes Thema war dabei die Integration von Microservices und Self-Contained Systems (SCS). Um bessere Skalierbarkeit, stÀrkere Resilienz und losere Kopplung zu ermöglichen, wird in verteilten Systemen hÀufig auf asynchrone Kommunikation gesetzt. In diesem Beitrag erfahrt ihr, welche Erkenntnisse wir in den GesprÀchen erlangt haben.

Podcast

Architecture Communication Canvas

Dokumentation auf einer Seite

Blog-Post

Schema Evolution

mit Apache Avro

Blog-Post

Micro Frontends With Ionic And Capacitor

We planned and set up a micro frontend architecture using Capacitor and Ionic. In this article, I talk about some of the challenges we faced and the ways we solved them.

Blog-Post

Mit Reviews in Legacy-Situationen orientieren

In diesem Post möchte ich ein paar meiner Erfahrungen mit Legacy-Software teilen. Wir von INNOQ kommen meistens dazu, wenn die Entwicklung irgendwie stecken geblieben ist oder es unklar ist, wie es weiter gehen soll. Reviews, die in Zusammenarbeit von Beratern und Kunde durchgefĂŒhrt werden, können in einer solchen Situation effektiv und schnell fĂŒr Klarheit sorgen.

Artikel

Grundlagen der Softwarearchitektur: Teil 5

Wie geht es weiter?

Artikel

Grundlagen der Softwarearchitektur: Teil 4

In dieser (vierten) Folge der Mini-Serie zu Softwarearchitektur klĂ€ren wir, wer denn die Architekturaufgaben erledigen könnte, die ich in der vorigen Folge vorgestellt habe. Dazu stelle ich einige mögliche RollenausprĂ€gungen fĂŒr Softwarearchitektur mit ihren jeweiligen Vor- und Nachteilen vor.

Artikel

Grundlagen der Softwarearchitektur: Teil 3

In dieser Folge der Mini-Serie klĂ€ren wir, was Sie alles fĂŒr Softwarearchitektur tun mĂŒssen. Zuerst schauen wir auf die notwendigen Aufgaben und TĂ€tigkeiten. Anschließend diskutieren wir einige der notwendigen Kompetenzen und FĂ€higkeiten fĂŒr die Architekturaufgabe.

Artikel

Grundlagen der Softwarearchitektur: Teil 2

Begriffe

Artikel

Grundlagen der Softwarearchitektur: Teil 1

Willkommen zum ersten Teil der Mini-Serie zu Softwarearchitektur. Wir fangen mal bei unserem Namensvorbild an - denn viele Menschen denken beim Stichwort Architektur vermutlich zuerst an GebÀude.

Blog-Post

Sparsame Dokumentation – Neu gedacht

Sie glauben, Architekturdokumentation ist umstÀndlich und dauert lange? Wir beweisen Ihnen heute das Gegenteil.

Artikel

Keine zukunftssicheren Architekturen!

Warum Zukunftssicherheit kein Architektur-Ziel sein sollte.

Blog-Post

Evolving software like an orchardist

Software systems are usually larger, overgrown structures that developers need to bring back into shape after some time. However, creating an overview of the sprawling conglomerate of software components is challenging, let alone developing a clear plan for moving on. This blog post uses analogies from pruning apple trees to show developers how to evolve their software systems using a value-based approach.

Blog-Post

Draw The Diff

Software developers have an idiosyncratic penchant for boxes and arrows. Back when we used to go to the office we penned them on whiteboards. Later, as the force majeure accelerated the digital transformation of our economies, we drew them online.

Artikel

What is Sustainable Software?

Artikel

Shortcomings of ISO 25010

Published in 2011, the ISO 25010 standard on software product quality lacks pragmatism and practical applicability. Terms like scalability, deployability, energy efficiency, safety, or code quality are missing. This article explains these shortcomings and shows that even the (draft) update from 2022 still needs polishing


Blog-Post

Behaviour over structure

We, developers, often forget why we even exist. We quite often don’t remember that our purpose is not to write software, but to solve problems. Those come in different forms, but can be generalized as „we need to start doing this”, „we need to stop doing this” or „we need to do this differently”. Those „do” and „doing” are the key, whatever „this” is. It’s the behaviour our software exhibits that is most important, almost everything else is secondary.

Podcast

Advent of Code

25 weihnachtliche Programmier-RĂ€tsel

Podcast

Nachhaltige Web-Architektur

StĂ€ndige VerfĂŒgbarkeit – Muss das sein?

Podcast

Wardley Maps

Softwarelandschaften kartographieren

Artikel

Sparsame Dokumentation

Aktuell, nĂŒtzlich und schmerzfrei

Artikel

1×1 guter Architekturdiagramme

Sie wollen oder mĂŒssen Architektur dokumentieren und möchten dafĂŒr grafische Darstellungen verwenden? Sie wĂŒnschen sich verstĂ€ndliche Diagramme, die auch zukĂŒnftig noch leicht Ă€nderbar sind? Sie möchten, dass Ihre Diagramme fĂŒr unterschiedliche Zielgruppen nĂŒtzlich sind? Und wenn Sie ganz ehrlich sind, wollen Sie dieses Doku-Zeugs in möglichst kurzer Zeit erledigen, damit Sie sich wieder anderen Dingen zuwenden können.

Blog-Post

Der Kickstart fĂŒr Softwarearchitektur

Zweifellos: Softwarearchitektur ist ein kompliziertes Thema. Dennoch können schon einige wenige Techniken helfen, die Architektur in vielen Projekten zu verbessern. Dazu muss man sie aber wirklich beherrschen und anwenden können. Wie kann man das dazu notwendige Wissen möglichst einfach und effektiv erlernen?

Blog-Post

Documenting software architecture with arc42

A brief introduction

Artikel

cards42 English edition

Finally, cards42 is available in English! The cards42 project supports software developers in your daily work with software architectures. 30 cards provide brief food for thought for stuck situations and help shed new light on difficult challenges. This article provides detailed explanations as well as the background and further information about the cards.

Artikel

Principles of technical documentation

This article collects fundamental requirements for technical documentation, especially software architecture documentation, together with ideas how to satisfy those.

Blog-Post

Data Mesh to Go: How to Get the Data Product

Using DDD artifacts to get a data product for data mesh

Artikel

HTTP-Feeds

FĂŒr asynchrone Schnittstellen braucht es nicht immer Apache Kafka oder RabbitMQ. Sie lassen sich auch ohne Middleware einfach ĂŒber HTTP-APIs gestalten.

Artikel

Quality Driven Software Architecture - Revised

Quality is the raison d’ĂȘtre for software architects: Our systems should be reliable, performant, scalable and user-friendly. Systems should be build and maintained cost-effective and future-proof. Every IT professional knows that this combination of characteristics means hard work. The article shows how you can methodically construct quality.

Blog-Post

What’s in a name: Legacy

Artikel

Innovation on steroids - Teil 2

Ging es in Teil 1 von „Innovation on Steroids” allgemein um die Innovationskraft von Machine Learning und die Identifizierung von ML Use Cases, beschĂ€ftigen wir uns im zweiten Teil mit der Frage, wie wir herausfinden, wo sich der Einsatz von ML/AI lohnt und wie wir danach strukturiert vorgehen.

Podcast

Ist Domain-driven Design ĂŒberbewertet?

Goldenes Kalb oder „nur“ Werkzeug?

Artikel

Innovation on steroids - Teil 1

Mit Domain-driven Design, Event Storming und ML Design Canvas zu mehr ProduktverstÀndnis

Artikel

Große Systeme mit Domain-driven Design entwerfen

Wer die Konzepte von DDD richtig einzuordnen weiß, kommt mit einem strukturierten Ansatz recht einfach zu guten Ergebnissen.

Blog-Post

What’s in a Name: QualitĂ€t

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?

Artikel

Domain-driven Design und Bounded Context

Die Konzepte von DDD und Bounded Context sind in der Praxis komplizierter, als es auf den ersten Blick erscheint.

Artikel

The art of software reviews

Auch in erfolgreichen Softwaresystemen lauern praktisch immer Probleme. Durch systematische Reviews können Sie diese Probleme zielgerichtet identifizieren – und damit eine robuste Grundlage fĂŒr zukĂŒnftige Verbesserungen schaffen. Der Artikel stellt die Breitensuche als den zentralen Ansatz methodischer Software-Reviews vor und beleuchtet einige der wesentlichen UntersuchungsansĂ€tze.

Artikel

Die VENOM Story

Strategische Anwendungsmodernisierung mit Split+Extract Strategien

Artikel

Gut gesiebt

FĂŒr die komplexe Infrastruktur großer Microservice-Umgebungen versprechen Service Meshes eine einfache Lösung. Aber nur mit dem Blick fĂŒr die richtigen Eigenschaften lĂ€sst sich der beste Ansatz fĂŒr die eigene Architektur finden.

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

Wenn Customizing zur Legacy wird

Analyse eines ERP-Systems mit Wardley Maps und strategischem Domain-driven Design

Blog-Post

Architektur, die mitwÀchst

Architektur sollte wachsen und gepflegt werden. Die Geschichte eines Shops.

Artikel

Domain-driven Design to the code

Beim strategischen Domain-driven Design fokussieren wir uns in der Modellierung sehr stark darauf, die Fachlichkeit möglichst passend zu identifizieren und im Design abzubilden. Leider verlieren wir Entwickler bei der technischen Umsetzung diesen fachlichen Fokus dann aber allzu oft wieder aus den Augen und lassen uns (zu) stark vom neusten hippen Framework begeistern, leiten und beeinflussen und verschmutzen so das fachliche Modell mit unzÀhligen Technologien. Die Ideen der Onion Architecture und der Einsatz von Stereotypen in der Code-Basis erlauben es, eine Trennung des fachlichen Code vom technisch bedingten Code zu erreichen. Dieser Artikel beleuchtet diese Konzepte und zeigt auf, wie dank Stereotypen in Verbindung mit den taktischen Mustern von DDD diese Trennung konkret erreicht werden kann.

Artikel

Kubeless - FaaS auf Kubernetes

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.

Artikel

Identifikation von QualitÀtsanforderungen mit Quality Storming

Quality Storming ist ein Workshop zur Identifizierung von QualitÀtsanforderungen auf der Grundlage eines QualitÀtsmodells wie beispielsweise der ISO 25010 Norm. Die Methode setzt dabei auf Methoden und Ideen des Collaborative Modeling, das in der Domain-driven Design Community populÀr ist. Ein wichtiger Aspekt in diesem Zusammenhang ist die Zusammenarbeit verschiedener Stakeholder und Abteilungen.

Artikel

Command & Control, SAFe, Domain-driven Design, and Release Trains

Large complex projects are difficult to manage. Software release trains are one solution to coordinate such projects. But the approach is not a great fit for self-organization and modern management ideas.

Artikel

Warum Domain-driven Design?

Fachlich sinnvoll schneiden

Blog-Post

Warum Quarkus.io _nicht_ geiler ist als Spring

Quarkus.io ist ein neues Framework, das optimiert ist, um Java Anwendungen Cloud Native laufen zu lassen. Sollte ich meine Java-Anwendungen daher jetzt nicht mehr in Spring Boot sondern in Quarkus.io entwickeln?

Artikel

Brauchen asynchrone Microservices und SCS ein Service Mesh?

Service Meshes heben viele Randfunktionen von Microservices wie Monitoring, Routing und Sicherheit in die Infrastruktur und sind entsprechend beliebt in Microservice-Architekturen - doch schaffen sie diesen beachtlichen Mehrwert auch bei asynchroner Kommunikation oder in Self-contained Systems?

Artikel

Architektur­entscheidung im agilen Team

Zusammen Architektur machen

Artikel

Software-Architektur: Worauf es ankommt

Die Architektur definiert die Struktur eines Software-Systems und ist zentral fĂŒr den Erfolg eines Projekts. Deswegen ist Software-Architektur so wichtig. Aber in Wirklichkeit ist Software-Architektur noch viel mehr und eine erfolgreiche Software-Architektur erfordert viele, teilweise ĂŒberraschende Maßnahmen.

Blog-Post

code-your-model

Some time ago I was looking for some simple, lightweight tool to document a complex, modularized model. I was not able to find anything that fits my requirements or expectations, so I came up with my own idea. Today, a good 15 months later, I want to introduce it to you.

Artikel

Alle 11 Minuten verliebt sich ein Microservice in Linkerd

Das Istio Service Mesh hat einen sympathischen Konkurrenten

Artikel

Cloud-native, Microservices, Domain-driven Design, Kubernetes

Software-Entwicklung unterliegt schon immer Hypes. Im Moment reden alle ĂŒber Microservices und Cloud-native. Aber helfen diese AnsĂ€tze wirklich weiter?

Artikel

JavaScript? Gern, aber bitte in Maßen

Die Vorteile eines klassischen Architekturansatzes fĂŒr Web-Anwendungen

Artikel

Warum Microservices scheitern

Artikel

Das Service Mesh

Die StĂ€rke einer Microservice-Architektur ist die lose Kopplung der Module. Und gleichzeitig ist es auch ein großer Nachteil, denn in jedem Microservice mĂŒssen Funktionen wie Monitoring, Tracing und Circuit Breaking erneut gelöst werden. Ein Service Mesh verspricht, viele der Funktionen in die Infrastruktur zu ziehen. So wird es endlich kinderleicht, Microservices zu entwickeln und auch zu bĂ€ndigen - oder vielleicht doch nicht?

Artikel

Optionen der Frontend-Integration

Die Integration von Daten und FunktionalitÀt im Frontend ist ein mÀchtiges aber trotzdem relativ selten beleuchtetes Thema. Dieser Artikel soll versuchen gÀngige Muster aufzuzeigen und kurz mögliche Vor- und Nachteile zu benennen.

Artikel

Pragmatisch zum Praxiseinsatz von Machine Learning in der Cloud

Herausforderung Betrieb

Artikel

cards42

Die Mitmach-Karten von cards42 unterstĂŒtzten bei der tĂ€glichen Arbeit mit Softwarearchitekturen. Die Karten geben kurze DenkanstĂ¶ĂŸe fĂŒr festgefahrene Situationen und helfen, neues Licht auf schwierige Herausforderungen zu werfen. Dieser Artikel bietet ausfĂŒhrliche ErklĂ€rungen sowie die HintergrĂŒnde und weitere Informationen zu den Karten.

Blog-Post

Event Storming und Domain Story Telling - Ein Vergleich

„Knowledge Crunching” nennt Eric Evans die wichtigen GesprĂ€che mit DomĂ€nenexperten, die in seinem Buch „Domain-driven Design” zu tieferem VerstĂ€ndnis der FachdomĂ€ne fĂŒhren sollen. In den letzten Jahren haben sich fĂŒr diese GesprĂ€che zwei moderne Workshopformate etabliert: „Event Storming” und „Domain Storytelling”.

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

Artikel

Technologien fĂŒr Microservices

Warum Microservices-Frameworks nicht genug sind

Artikel

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.

Artikel

Benimmregeln fĂŒr Architekturen - automatisch geprĂŒft

Softwareentwicklung und automatisierte Tests funktionaler Anforderungen sind in modernen Systemen untrennbar miteinander verbunden. Da ist es nur folgerichtig, wenn die Softwarearchitektur als eminent wichtiger Bestandteil von Applikationen auch einer ordentlichen QualitĂ€tssicherung unterliegt. Wir stellen ArchUnit vor, mit dem Sie auf einfache Weise automatisierte Tests fĂŒr die Architektur einer Applikation realisieren können.

Blog-Post

Serverless - The Vendor Is Not Your Enemy

Serverless Entwicklung mit bekannten Pattern

Podcast

Microfrontends

UnabhÀngige Teams im Frontend

Blog-Post

Do We Worship Complexity?

Complexity is the most important challenge in software development. So it is important to always strive to eliminate complexity. But sometimes we worship complexity - and that can make complexity problems unsolvable.

Artikel

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

Was ist ein Domain-driven Design Architektur-Kata?

DDD praktisch und konkret vermitteln

Blog-Post

OpenID Connect Auth-Proxy

Mit OpenID Connect kann Single Sign-On in einem verteilten System erreicht werden. Ein Auth-Proxy kapselt den Aspekt Authentifizierung in einem eigenstÀndigen Modul. Wir schauen uns an, wie das im Detail umgesetzt werden kann.

Podcast

50 Tipps

RatschlÀge zu Software, Zusammenarbeit und Druckkaramellisierung

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?

Blog-Post

A Playground for Testing OpenID Connect

This post describes how you can set up a development environment in order to play around with your OpenID client implementation. When running your application in a cluster, it can be difficult to test how it will behave behind a load balancer. One factor that can be particularly difficult to test is when you are communicating with an OAuth 2.0 or OpenID Connect server which expects that a request will be redirected back to the same application instance that it came from.

Podcast

Transklusion

Frontendintegration im Web

Blog-Post

Schubladendenken - aber konstruktiv

Verwendung von Stereotypen im Code als Basis fĂŒr ein gemeinsames ArchitekturverstĂ€ndnis - und mehr

Podcast

Independent Systems Architecture

Best Practices fĂŒr Microservices

Blog-Post

Domain Exceptions?

Gibt es fachliche Ausnahmen und ist es sinnvoll, diese als Exceptions zu modellieren?

Blog-Post

dprox – Declarative Reverse Proxy

Reverse proxies don’t have to be a pain when it comes to local development.

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

Podcast

Microservices Praxisbuch

Grundlagen, Konzepte und Rezepte

Blog-Post

DDD mit Onion Architecture

3 GrĂŒnde, weshalb Onion Architecture fĂŒr die Umsetzung von Bounded Contexts nach Domain-driven Design besonders geeignet ist.

Blog-Post

The language of maths is not the language of your business

Artikel

Domain- und Test-driven Development mit Spring Boot 2 Softwarearchitektur

Am Anfang eines Projektes wird heutzutage in der Regel Wert auf Tests gelegt. Projekte werden sogar testgetrieben aufgesetzt (Test-driven-development, TDD). TDD-Projekte der reinen Lehre schreiben vor, dass vor jeder Zeile Anwendungscode der entsprechende Testcode geschrieben werden muss. Schleicht sich Stress ein oder lĂ€sst die Begeisterung nach, kann es passieren, dass das Thema Tests – obwohl wichtig – vernachlĂ€ssigt werden. Das gilt umso mehr, je schwieriger Komponenten eines Systems zu testen sind, unabhĂ€ngig, ob sie einzeln oder integriert betrachtet werden. Lesen Sie hier, wie Ihnen ein Domain-orientierter Ansatz zusammen mit Spring Boot 2 dabei hilft, QualitĂ€t sicherzustellen.

Blog-Post

Proof of Existence via HTTPS

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

Artikel

Evolution statt Verschlimmbesserung

Mit aim42 Architekturen systematisch verbessern

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.

Artikel

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 dem Hype 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

Podcast

Domain-Driven Design

Überblick ĂŒber Strategic und Technical Design mit DDD

Artikel

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.

Artikel

Warum wollen Sie Microservices einfĂŒhren?

Erst Ziele klÀren, dann Microservices machen

Artikel

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.

Artikel

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

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

Artikel

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

Blog-Post

arc42 - die Siebte

Podcast

Self-contained Systems und Frontend-Integration – Teil 1

Eigenschaften und Vor- und Nachteile

Artikel

Microservices lieben Domain Driven Design, warum und wie?

Das Buch Domain Driven Design, welches Eric Evans vor gut 13 Jahren publizierte, galt schon seit jeher als herausragende Referenz fĂŒr die fachlich getriebene Modellierung von IT-Systemen. Mit dem Einzug von Microservices erfĂ€hrt Domain Driven Design eine Renaissance, denn die beiden Ideen lassen sich wunderbar miteinander kombinieren. Im Laufe des Artikels werden Sie kennenlernen, wie Sie mit Hilfe der Ideen von Domain Driven Design technisch wie fachlich tragfĂ€higen Microservice Landschaften entwickeln können.

Artikel

Microservices Ă  la Netflix

Die Bestandteile von Spring Cloud Netflix

Artikel

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.

Artikel

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 (SCSs) are one approach to achieve some of those goals while avoiding many common pitfalls.

Artikel

Microservice-Infrastruktur

Ein unvollstĂ€ndiger Überblick

Artikel

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.

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.

Artikel

Spring Boot fĂŒr Microservices

Eine frĂŒhlingshafte Lösung fĂŒr Microservices

Artikel

Wie kommt man zu Self-Contained Systems?

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

Artikel

Requirements Engineering

Im Alltag vieler Softwareprojekte wird Requirements Engineering oftmals nur eingeschrĂ€nkt berĂŒcksichtigt, obwohl es aufgrund seiner nachgewiesenen Wichtigkeit eine Grundvoraussetzung fĂŒr effiziente Softwareentwicklung ist. Ziel dieses Artikels ist es, die Kernaussagen des Requirements Engineering in Erinnerung zu rufen und ein Modell vorzustellen, das einen vereinfachten Einstieg in das Requirements Engineering im Projektalltag erlaubt.

Artikel

Deployment und Monitoring von Microservices

Artikel

Microservices - eine Bestandsaufnahme

Kaum ein Thema ist im Moment so ein Hype wie Microservices. Welche GrĂŒnde gibt es dafĂŒr? Und wie kann man Microservices gewinnbringend einsetzen? Welche Herausforderungen gibt es? Dieser Artikel gibt einen Überblick ĂŒber den Architektur-Trend und beantwortet die wichtigsten Fragen.

Artikel

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.

Artikel

Zwei Jahre nach dem Tod der Java Application Server

Leben Todgesagte lÀnger?

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.

Artikel

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.

Blog-Post

Der Architektenaufzug: Öfters mal nach oben fahren

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?

Artikel

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.

Blog-Post

Solving the wrong problems

Artikel

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

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.

Blog-Post

Transclusion in self-contained systems

Artikel

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.

Blog-Post

Transklusion in Self-Contained Systems

Frontend-Integration im Web ist ein riesiges Themengebiet. Dieser Post befasst sich mit dem Teilaspekt der Transklusion „fremder” Inhalte in den DOM einer anderen Seite.

Blog-Post

Why RESTful communication between microservices can be perfectly fine

Podcast

Redis in der Praxis

Überblick und praktischer Einsatz des schnellen Datenstruktur-Servers

Artikel

Terravis

Terravis ist ein Schweizerisches Projekt, welches automatisierte, medienbruchfreie Prozesse zwischen GrundbuchĂ€mter, Banken, Notare und Pensionskassen realisiert. Diese Prozessdrehscheibe ist nun seit ĂŒber 4 Jahren in der Entwicklung und die Plattform ist ebenfalls fast genauso lange produktiv. Ende 2014 erhielt Terravis den Innovation Award 2014 der Swiss IT Intelligence Communities (sitic): Ein guter Zeitpunkt fĂŒr einen RĂŒckblick und eine Analyse der Erfolgsfaktoren fĂŒr GeschĂ€ftsprozessprojekte.

Artikel

Microservices: AgilitÀt mit Architektur skalieren

Schnell und nachhaltig Software entwickeln

Artikel

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 sie 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 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 kontrollieren.

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?

Artikel

Gegen die dunkle Macht

Ein ganz normaler Tag: Morgens frage ich mich, welche Katastrophe mich heute erwartet. Ich bin einiges gewohnt, aber die letzten Monate wurde es immer schlimmer: FrĂŒher gab es nur Fehler im Test oder Schwierigkeiten bei der Entwicklung. Jetzt kommen auch noch Laufzeitfehler dazu, die den Betrieb im Rechenzentrum stören und unsere Endkunden massiv irritieren. Als hĂ€tte sich die dunkle Macht gegen uns verschworen â€“ dabei haben wir doch nur ganz normale Anforderungen. Aber sicherlich das schlechteste Softwaresystem der Welt 


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.

Artikel

Bessere Web-Apps mit HTML5-APIs

Pimp my Browser

Artikel

Apache Cassandra

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

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

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.

Artikel

Logging konsolidieren und Performance gewinnen

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

Artikel

Scalable Software Systems

From developer laptops to server farms

Artikel

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. Wir brauchen also mehr als bloße Wunschvorstellungen ĂŒber das System; wir benötigen Mechanismen fĂŒr die konsequente Umsetzung der funktionalen und qualitativen Eigenschaften des Systems.

Artikel

Knigge fĂŒr Softwarearchitekten

Diese Folge unserer Kolumne skizziert mögliche Reaktionen, die Sie bei Reviews (auch genannt Bewertung, Analyse oder Audits) von Softwaresystemen erleben können. Wir beschÀftigen uns mit Gegnern und verschiedenen Stufen der Ablehnung.

Artikel

Service-oriented Architecture (technisch)

Ein Lehrplan fĂŒr Architektenwissen rund um serviceorientierte Architekturen

Artikel

Warum Soft Skills fĂŒr Softwarearchitekten wichtig sind

Der Projekterfolg hĂ€ngt viel stĂ€rker von den am Projekt beteiligten Menschen und den Rahmenbedingungen ab als von den eingesetzten Technologien. Erfolgreiche Projektleiter und Softwarearchitekten haben ein GespĂŒr fĂŒr die Menschen, mit denen sie Projekte machen, und erreichen mit ihnen gesteckte Ziele. Was erfolgreiche AnfĂŒhrer gemein haben, worauf es in der Zusammenarbeit ankommt und wie man selbst so etwas erlernen kann, stellt dieser Artikel vor.

Artikel

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.

Artikel

Hystrix – to make your fuse blow just in time

Artikel

Zertifizierung fĂŒr Fortgeschrittene

Wer sich als Softwareentwickler oder Softwarearchitekt stets auf dem Laufenden hĂ€lt, bleibt auch langfristig attraktiv fĂŒr den Arbeitsmarkt. Das erfordert genauso fundierte Kenntnisse gĂ€ngiger Technologien und Frameworks wie methodische FĂ€higkeiten. In diesem Beitrag stellen wir das modulare Curriculum fĂŒr fortgeschrittene Softwarearchitekten des iSAQB e.V. vor, das verschiedene notwendige Kompetenzbereiche fĂŒr Softwarearchitekten abdeckt.

Artikel

Hystrix – Wider den Totalausfall

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

Podcast

Wenn Systeme aus dem Ruder laufen

Mit Hystrix fĂŒr stabile, verteilte Anwendungen sorgen

Artikel

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

Artikel

Domain-Driven Design in Clojure

Gut bewertet

Podcast

Graphdatenbanken

Vor- und Nachteile graphbasierter Datenbanken

Artikel

Versionsmanagement auf dem Tanker

In verschiedenen großen Projekten mit festen Releasezyklen hat der Autor bestimmte Situationen ganz Ă€hnlich mehrfach erlebt. Dieser Artikel berichtet von typischen Herausforderungen aus Versionsmanagement-Sicht, die sich in solchen Situationen ergeben und von praxiserprobten Möglichkeiten, sie zu meistern.

Artikel

Use-Case-Puzzeln fĂŒr Fortgeschrittene

Zwischen Requirements Engineering und GeschÀftsprozessmodellierung

Artikel

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

Artikel

Early-Design Reviews

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

Artikel

GeschĂ€ftsprozesse vom Fließband

WĂ€hrend in Java-Projekten ein automatisierter Build heutzutage Standard ist, wird dies in Projekten, die auf BPEL oder BPMN aufsetzen, oftmals versĂ€umt. Die Modellierungsumgebungen, wie in unserem Fall ActiveVOS, bieten nur rudimentĂ€re UnterstĂŒtzung fĂŒr Build-Werkzeuge. Zudem gilt es viele AbhĂ€ngigkeiten zu WSDL- und Schemadateien zu verwalten, die nicht in Maven, sondern in anderen Repositories versioniert sind. Wir stellen die Projektstruktur vor, die sich im Laufe unseres Projekts entwickelt hat und die es uns erlaubt, automatisiert alle Projektartefakte inklusive unserer ausfĂŒhrbaren GeschĂ€ftsprozesse zu paketieren und zu verteilen.

Artikel

BPMN und Camel

Gemeinsam sind wir stark

Artikel

Auf Nummer sicher

Neue Projekte im GeschĂ€ftsprozess-Umfeld stehen hĂ€ufig vor der Herausforderung, Prozesse zu automatisieren. Dabei mĂŒssen Prozesse so formal beschrieben werden, dass ein Computer sie, wie andere Software auch, interpretieren und ausfĂŒhren kann. Dieses High-Level-Programming verlangt aber auch die QualitĂ€tssicherung, insbesondere von kritischen Prozessteilen. In diesem Artikel werden Möglichkeiten fĂŒr das Testen der verschiedenen Komponenten von ausfĂŒhrbaren GeschĂ€ftsprozessen (Prozess, Datentransformationen) und fĂŒr das Review (Prozess, Servicedefinitionen) sowie Erfahrungen aus einem Projekt vorgestellt.

Artikel

Testobjekt: GeschĂ€ftsprozess – Testen fĂŒr kontinuierliche Verbesserung

Die Automatisierung von GeschĂ€ftsprozessen mittels WS-BPEL oder BPMN 2.0 steht in der heutigen Zeit oftmals im Focus der IT-Strategien von Unternehmen. GeschĂ€ftsprozesse werden dabei nicht mehr nur fachlich modelliert, sondern so formal beschrieben, dass sie mittels Prozess-Engines ausgefĂŒhrt werden können. Diese formalen Modelle sind zwar abstrakter und nĂ€her an den fachlichen GeschĂ€ftsprozessen als normale Programme, sind aber trotzdem Softwareartefakte, die wĂ€hrend der einzelnen Entwicklungszyklen und auch bei spĂ€teren Anpassungsarbeiten getestet werden mĂŒssen.

Artikel

Quality Driven Software Architecture

Mit Fokus auf QualitÀt bessere Software schaffen

Artikel

Vom Sinn und Unsinn einer Zertifizierung fĂŒr Softwarearchitekten – CPSA-F

Da Softwarearchitekt keine geschĂŒtzte Berufsbezeichnung ist, können in einem Projektkontext erworbene FĂ€higkeiten oder Erfahrungen vom nĂ€chsten Arbeit- oder Auftraggeber schlimmstenfalls als ungenĂŒgend betrachtet werden. Solche Überraschungen wĂŒnscht sich weder der Softwarearchitekt noch der Arbeitgeber. Ein gemeinsames VerstĂ€ndnis wĂŒrde helfen, dieses Risiko zu vermeiden. Um ĂŒberprĂŒfen zu können, ob jemand den Anforderungen an das Berufsbild Softwarearchitekt gerecht wird, gibt es verschiedene

Vortrag
Vortrag

„Wir haben doch keine Zeit!“ – Oder?

DWX 2026 / 17:00 - 18:00

Vortrag
Vortrag

Cognitive Biases im Software Engineering: Warum gute Architekt:innen schlechte Entscheidungen treffen

DWX 2026 / 17:00 - 18:00

Vortrag
Vortrag

Das kleine 1×1 der Sicherheitsarchitektur fĂŒr Webanwendungen

iSAQBÂź Software Architecture Forum 2026 / 13:30 - 14:30

Vortrag
Vortrag

SouverÀnitÀt, Integration und Föderation und (De-)ZentralitÀt des Webs

iSAQBÂź Software Architecture Forum 2026 / 13:30 - 14:30

Vortrag
Vortrag

„Garbage-In“ ist kein Schicksal: Bessere Anforderungen fĂŒr Entwicklungsteams

iSAQBÂź Software Architecture Forum 2026 / 11:15 - 12:15

Vortrag
Vortrag

Code wird billig, Architektur entscheidend.

iSAQBÂź Software Architecture Forum 2026 / 09:15 - 10:00

Vortrag
Vortrag

Datenarchitektur: Das neue RĂŒckgrat moderner Software?

JAX 2026 / 11:30 - 12:30

Vortrag
Vortrag

„Garbage-In“ ist kein Schicksal: Bessere Anforderungen fĂŒr Entwicklungsteams

Dev Day 2026 / 18:00 - 19:00

Vortrag
Vortrag

INNOQ Fragezeit

INNOQ Fragezeit / 17:00 - 18:00

Case Study

Aufbau einer Lernplattform, die didaktische Weiterentwicklung ermöglicht

News

New Primer: Advanced IAM Patterns and Strategies

News

Agile meets Architecture 2026: Program Announced

News

Neuer Primer: Modernes Domain-driven Design

News

Neu: Agentic Engineering Accelerator Programm

News

Jetzt anmelden: INNOQ Technology Day 2025

News

Digitale SouverĂ€nitĂ€t im Fokus: Das Technology Briefing fĂŒr IT-Entscheider:innen

News

arc42 wird 20: JubilĂ€umsedition kostenlos verfĂŒgbar

News

INNOQ Technology Day am 20. November 2025

News

Agile meets Architecture 2025

News

Neues iSAQBÂź-Modul: Softwarearchitektur fĂŒr KI-Systeme

News

Jetzt anmelden: INNOQ Technology Day 2024

News

INNOQ Technology Day am 5. Dezember 2024

Case Study

Fleurop: Eine moderne Architektur fĂŒr zuverlĂ€ssige BlumengrĂŒĂŸe

News

INNOQ Technology Bites

News

Neue Leistungsseite: Software-Reviews

News

Neuer Workshop: Intensivvorbereitung fĂŒr die iSAQB CPSA-A-PrĂŒfung

News

Das neue Lernkartenspiel „ARCARD“

News

Software Architecture Summit 2024

News

OOP 2024: Wir sind dabei!

News

Launch of New Microsite: Architecture Antipatterns

News

INNOQ Technology Day 2023 am 13. November

Case Study

Ein digitales Sprachrohr zwischen Groß- und Einzelhandel auf der Basis von Self-contained Systems

Case Study

Hellmann Road: Mit klaren Schnittstellen zu effizienten Produktteams

News

Technology Day 2023: am 13. November ist es wieder soweit!

Case Study

Mit Self-Contained Systems zu einer „Best in industry“ E-Commerce-Plattform

Case Study

Belegclearing und Fraud Detection: Krombacher setzt im Rahmen seines Loyaltyprogramms auf Automatisierung

News

Agile meets Architecture 2023

News

Agile meets Architecture – The conference bringing together agilists and software architects

News

Neues Training: Domain-driven Design fĂŒr Machine-Learning-Produkte

Case Study

SACAC optimiert den Angebotsprozess mit maßgeschneiderter Software-Lösung

Case Study

Digitalisierung der Grundbuch­verwaltung in Kooperation mit Terravis

Case Study

Breuninger verbessert Time-to-Market mittels Vertikalisierung und Self-contained Systems

Case Study

Eine Cloud-Plattform fĂŒr effiziente Beauftragungsprozesse in der Zahnmedizin

News

Voxxed Days Berlin 2016

News

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

News

Berlin Expert Days 2015

News

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

News

Microservices, Internet of Things und RxJava beim Java Forum Stuttgart

News

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

News

Über die Advanced-Zertifizierung fĂŒr Softwarearchitekten