Schwerpunktthema

Softwarearchitektur

Fachartikel, Podcasts, Vorträge und mehr zum Thema Softwarearchitektur.
Blog-Post

Hör auf, Bearer Tokens wie Haustürschlüssel zu benutzen

Du hast eine API gebaut. Du hast sie mit OAuth 2.0 geschützt. Du nutzt JWTs. Du fühlst dich sicher. Bist du nicht.

Podcast

Datenarchitekturen

Von Data Warehouse bis Data Fabric

Blog-Post

Indecent Exposure

Deine SPA-API zeigt zu viel

Blog-Post

Was ECST-Events, Domain Events und ECST wirklich sind

„ECST-Event", „Domain Event", „ECST" – diese Begriffe fallen in fast jeder Diskussion über Event-Driven Architecture und Domain Driven Design. Erstaunlich oft haben in der Praxis verschiedene Leute ein unterschiedliches Verständnis davon.

Podcast

Risikomanagement für Software-Architekt:innen

Von Vendor Lock-in bis KI-Systemen

Blog-Post

OpenProject: Eine Alternative zu Jira?

Podcast

Nebu: Self-made Souveränität

Ein Rezept zum DI.DAY

Blog-Post

RAG und Fine-Tuning

Große Sprachmodelle (LLMs) liefern keine verlässlichen Ergebnisse. In der Praxis zeigt sich: Durch das Zusammenspiel von Retrieval Augmented Generation (RAG) und Fine-Tuning können sie stabiler werden. Dieser Beitrag zeigt, warum sich beide Ansätze ergänzen – und warum ein Feedback-Loop aus der Produktion entscheidend ist.

Blog-Post

Die 1%-Methode für Code und Architektur: Modernisierung als Gewohnheit

Blog-Post

Nebu: Self-made Souveränität

Open-Source-Alternativen zu Slack gibt es viele. Echte Souveränität liefert keine davon. Community Editions sind bewusst so reduziert, dass kein Unternehmen sie produktiv einsetzen kann, und Enterprise-Features stecken hinter kommerziellen Lizenzen. Dieser Artikel zeigt, warum «selber bauen» heute keine Utopie mehr ist, sondern eine realistische Option für jeden, der eine Produktvision und etwas Do-it-yourself-Mut mitbringt.

Podcast

Architekturentscheidungen im Team ermöglichen

Die Architektenrolle als Facilitator

Podcast

Produktdenken für Plattformteams

Wie interne Plattformen echten Business-Mehrwert liefern

Blog-Post

Data Products richtig schneiden

Wenn Data Products falsch geschnitten werden, führt das fast zwangsläufig zu Integrationsproblemen, unklarer Verantwortung und doppelter Logik. Dieser Leitfaden bietet praxisnahe Heuristiken, um Data Products in der richtigen Größe zu schneiden.

Blog-Post

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

Blog-Post

Spec-Driven Architecture: Wenn Agenten bauen, muss Architektur sprechen

Spec-Driven Development gibt Agenten eine klare Implementierungsgrundlage. Was es nicht löst: wie ein Portfolio von Systemen kohärent bleibt. Spec-Driven Architecture überträgt dasselbe Prinzip auf die Architekturebene, mit Contracts als versionierten Grenzen und Garantien, durchsetzbar im agentischen Workflow und in der CI/CD-Pipeline.

Blog-Post

Jeder kann Architekt sein!

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

Blog-Post

Ein Überblick der AI-assistierten Softwareentwicklung in 2026

Orientierung für Verwirrte

Blog-Post

Deine Datenbanktabelle ist eine schlechte API

Eine gemeinsam genutzte Datenbanktabelle wirkt wie die ultimative Abkürzung: kein API-Design, keine Verträge – nur ein Schema. Der Haken: Diese Bequemlichkeit wird über kurz oder lang zum Bumerang. Sie verwischt Grenzen, bremst Veränderungen aus und macht die unabhängige Weiterentwicklung unnötig schwer. Dieser Artikel zeigt, warum Tabellen (und datenmodellnahe „generierte APIs“) so verlockend sind – und warum sie selten als Integrationsgrenze taugen.

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

Ein unerwarteter Architekturgewinn

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

Blog-Post

Digitale Souveränität durch Standardsoftware erreichen

Digitale Souveränität wird im Kontext von IT-Systemlandschaften häufig mit Autarkie gleichgesetzt – also der völligen Unabhängigkeit von Dritten. Nach diesem Gedankenmodell wäre ein Unternehmen, das alle Anwendungen selbst entwickelt und betreibt, der Inbegriff eines digitalen Souveräns. Doch greift diese Vorstellung wirklich?

Podcast

20 Jahre arc42

Dokumentation im Wandel

Blog-Post

Der Weg zur heterogenen Cloud Plattform

Blog-Post

Governance-Methodik für digitale Souveränität

In einer zunehmend vernetzten Welt, in der digitale Infrastrukturen das Rückgrat unserer Wirtschaft und Gesellschaft bilden, rückt das Thema der digitalen Souveränität immer stärker in den Fokus. Für Entscheider:innen im deutschsprachigen Raum geht es dabei um weit mehr als die reine Auswahl von Cloud-Anbietern. Es geht um strategische Handlungsfähigkeit, Resilienz und die Fähigkeit, die eigene digitale Zukunft aktiv zu gestalten. Dieser Artikel beleuchtet, wie eine robuste Governance-Methodik Unternehmen dabei unterstützen kann, digitale Souveränität nicht nur zu verstehen, sondern auch praktisch umzusetzen – ohne dabei Komfort oder Innovationskraft einzubüßen.

Blog-Post

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

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

Mobile Portale mit HATEOAS und Self-Contained Systems

Bei INNOQ setzen wir seit Jahren erfolgreich auf Self-Contained Systems und vertikalisierte Ansätze. Teams können unabhängig entwickeln, Services lassen sich separat deployen und skalieren - eigentlich ein perfektes Setup. Doch ein Problem blieb hartnäckig bestehen: Wie baut man Portale, die Daten aus verschiedenen SCS elegant zusammenführen?

Blog-Post

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

Blog-Post

Von Datenfriedhöfen zu Wissenslandschaften

Europa sitzt auf riesigen öffentlichen Datenschätzen – doch ihr Mehrwert bleibt oft ungenutzt. Ursache sind fragmentierte Portale, inkompatible Schnittstellen und die wachsende Abhängigkeit von außereuropäischen Plattformen, die Innovationen ausbremsen. Während sich neue industrielle Datenräume etablieren und den sicheren wie souveränen Austausch sensibler Informationen ermöglichen, bleiben öffentliche und industrielle Datenwelten weitgehend voneinander getrennt. In diesem Artikel erfahren Sie, wie Künstliche Intelligenz (KI) und das Model Context Protocol (MCP) dabei helfen können, diese Silos zu verbinden und Europas Weg von Open Data zu Open Knowledge zu ebnen – für digitale Souveränität und mehr gesellschaftlichen Nutzen.

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.

Blog-Post

Pragmatische Architekturdokumentation für Entwicklungsteams

Podcast

Kopplung

Zwischen Abhängigkeit und Autonomie

Blog-Post

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.

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?

Blog-Post

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?

Blog-Post

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.

Blog-Post

Enabling von Stakeholdern als Erfolgsfaktor

Blog-Post

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.

Blog-Post

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.

Blog-Post

Vergesst die Menschen nicht

Wenn Architekturänderungen zum Change Projekt werden

Podcast

Jetzt doch wieder ein Monolith/Modulith?

Die Architekturfrage neu gestellt

Blog-Post

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?

Blog-Post

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.

Blog-Post

Plattformen, Teams und APIs: Wie passt das zusammen?

Blog-Post

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.

Blog-Post

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.

Blog-Post

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

Podcast

Die Reise der Zalando Reliability Organisation

Zu Gast: Heinrich Hartmann, 
Principal SRE
, Zalando

Blog-Post

LLM-assisted Abbreviation Mining for Legacy Systems

This blog post shows the process of mining abbreviations and discovering first concepts a COBOL legacy mainframe codebase is made of with the help of Large Language Models. It uses Python, pandas and Claude 3.5 Sonnet to generate insights that can be gathered from such a simple thing like a list of files.

Podcast

INNOQ Technology Day

Programm und Behind the Scenes

Podcast

Qualitätstaktiken

Für angemessene Qualität sorgen

Blog-Post

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

Blog-Post

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

Blog-Post

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

Blog-Post

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.

Blog-Post

Grundlagen der Softwarearchitektur: Teil 5

Wie geht es weiter?

Blog-Post

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.

Blog-Post

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.

Blog-Post

Grundlagen der Softwarearchitektur: Teil 2

Begriffe

Blog-Post

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.

Blog-Post

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.

Blog-Post

What is Sustainable Software?

Blog-Post

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

Blog-Post

Sparsame Dokumentation

Aktuell, nützlich und schmerzfrei

Blog-Post

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

Blog-Post

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.

Blog-Post

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

Blog-Post

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.

Blog-Post

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

Blog-Post

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?

Blog-Post

Innovation on steroids - Teil 1

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

Blog-Post

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?

Blog-Post

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.

Blog-Post

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.

Blog-Post

Die VENOM Story

Strategische Anwendungsmodernisierung mit Split+Extract Strategien

Blog-Post

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

Wenn Customizing zur Legacy wird

In diesem Blog-Post visualisiere ich ein regelrechtes Schlamassel mit Hilfe von Wardley Maps und Elementen aus dem strategischem Domain-driven Design.

Blog-Post

Architektur, die mitwächst

Blog-Post

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.

Blog-Post

Kubeless - FaaS auf Kubernetes

Kubernetes und Serverless sind zwei der bedeutendsten Trends beim Betrieb von Software. Kubeless verspricht sogar, beides zu vereinen, und lohnt daher eine nähere Betrachtung.

Blog-Post

Agile Architekturarbeit

Das Gegenteil von geplant und vorausschauend?

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

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

Blog-Post

Identifikation von Qualitätsanforderungen mit Quality Storming

Collaborative Modeling für die skillübergreifende Erfassung und Priorisierung von Qualitätsanforderungen

Blog-Post

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.

Blog-Post

Warum Domain-driven Design?

Domain-driven Design (DDD) ist eine alte Technik, aber gerade voll im Hype. Worum geht es bei DDD und ist der Hype berechtigt?

Blog-Post

Warum Quarkus.io _nicht_ geiler ist als Spring

Blog-Post

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?

Blog-Post

Architektur­entscheidung im agilen Team

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

Blog-Post

Software-Architektur: Worauf es ankommt

Grundlagen für Software-Architektur

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.

Blog-Post

Alle 11 Minuten verliebt sich ein Microservice in Linkerd

Beim Thema Service Mesh hieß es lange immer nur «Istio». Doch die Komplexität des Projekts und die steile Lernkurve ebnen leichtgewichtigen Alternativen den Weg. Wir haben uns mit Linkerd 2 beschäftigt und wurden nicht enttäuscht.

Blog-Post

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

Alles nur ein Hype?

Blog-Post

JavaScript? Gern, aber bitte in Maßen

Die Vorteile eines klassischen Architekturansatzes für Web-Anwendungen

Blog-Post

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.

Blog-Post

Das Service Mesh

Die Lösung aller Microservice-Probleme?

Blog-Post

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.

Blog-Post

Pragmatisch zum Praxiseinsatz von Machine Learning in der Cloud

Die Anzahl von Publikationen zu Computer Vision, Natural Language Processing (NLP) oder Reinforcement Learning ist heutzutage gewaltig. Dabei widmen sich die meisten ausschließlich dem Training. Doch oft müssen Data Scientists auch beim Betrieb ihrer Modelle mitwirken. Dafür braucht es einen pragmatischen und unaufwändigen Weg.

Blog-Post

cards42

Die Mitmach-Karten für Softwarearchitekt*innen

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

The onion architecture is an established approach to structuring applications.

Blog-Post

Domain Events vs. Event Sourcing

Weshalb Domain Events und Event Sourcing nicht vermischt werden sollten

Blog-Post

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?

Blog-Post

Microservices – oder doch nicht?

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

Blog-Post

Benimmregeln für Architekturen - automatisch geprüft

Architekturregeln spezifizieren und testen mit ArchUnit

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

Blog-Post

Do We Worship Complexity?

Why Sometimes We Don’t Avoid Complexity.

Blog-Post

Prinzipien zur Entwicklung von unabhängigen Systemen

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

Blog-Post

No-Principles Software Architecture

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

Blog-Post

Code Redundancy or Reuse?

Why We Must Not Focus Just on Reuse

Blog-Post

Was ist ein Domain-driven Design Architektur-Kata?

Architektur-Katas sind ein sehr interaktives Trainingsformat. Sie eignen sich hervorragend, um Domain-driven Design (DDD) zu 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

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

Blog-Post

Microservices? Or Rather Monoliths?

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

Blog-Post

A Playground for Testing OpenID Connect

Solving problems we wish we didn’t have

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?

In jedem Softwaresystem kommt es zu Ausnahmesituationen. In der Regel handelt es sich um technische Ausnahmen, die in Java als Exceptions auftreten und behandelt werden. Gibt es aber auch fachliche Ausnahmen, also quasi «Domain Exceptions»? Und ist es sinnvoll, diese in Java als Exceptions zu modellieren? Einige Beispiele aus einem Kundenprojekt zeigen, dass dies häufig nicht der Fall ist.

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

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

DDD mit Onion Architecture

Blog-Post

The language of maths is not the language of your business

Abstractions from category theory can be powerful. But there are reasons why you may want to keep your domain model free of them.

Blog-Post

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

Blog-Post

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.

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.

Blog-Post

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

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.

Podcast

Domain-Driven Design

Überblick über Strategic und Technical Design mit DDD

Blog-Post

Microservices – der aktuelle Stand

Was hinter dem Hype steckt und wie es weitergeht.

Blog-Post

Warum wollen Sie Microservices einführen?

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

Blog-Post

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.

Blog-Post

Innovation Tokens – Gegen Informatikerromantik und Technologieüberflutung

Wie viel Innovation sollen wir zulassen?

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

Mehr als ein Hype?

Blog-Post

Implementierung einer einfachen Zustandsmaschine (state machine) in Java

Eine simple Zustandsmaschine (state machine) in Java

Blog-Post

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

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

Podcast

Self-contained Systems und Frontend-Integration – Teil 1

Eigenschaften und Vor- und Nachteile

Blog-Post

Microservices lieben Domain Driven Design, warum und wie?

Domain Driven Design im Kontext von Microservices

Blog-Post

Microservices à la Netflix

Netflix hat in den letzten Jahren sehr interessante Open Source Frameworks wie beispielsweise Eureka, Hystrix oder Zuul via GitHub publiziert. Parallel dazu hat das Spring Team mit Spring Boot und Spring Cloud zwei hoch interessante Module für Cloud basierte Microservice Architekturen veröffentlicht. Wie passen diese beiden Dinge nun zusammen?

Blog-Post

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.

Blog-Post

Self-contained Systems: A Different Approach to Microservices

Blog-Post

Microservice-Infrastruktur

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

Blog-Post

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

Blog-Post

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.

Blog-Post

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.

Blog-Post

Requirements Engineering

Anforderungen als Basis effizienter Softwareentwicklung

Blog-Post

Deployment und Monitoring von Microservices

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

Blog-Post

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.

Blog-Post

Software systematisch verbessern

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

Blog-Post

Zwei Jahre nach dem Tod der Java Application Server

Vor zwei Jahren wurde der Tod der Java Application Server ausgerufen. Zeit also ein Fazit zu ziehen und die Thesen aus dem Artikel einem kritischen Review zu unterziehen.

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.

Blog-Post

Nachhaltige Webarchitekturen

Warum REST und SPAs nicht immer die Lösung sind

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.

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?

Blog-Post

AWS Lambda

Serverlose Microservices

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.

Blog-Post

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

Blog-Post

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

Blog-Post

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.

Blog-Post

Docker - Perfekte Verpackung von Microservices

Blog-Post

Microservices: Agilität mit Architektur skalieren

Software Architektur beschreibt die Aufteilung von Software-Projekten in Module – aber die Architektur hat nicht nur Auswirkungen auf die Struktur der Software, sondern auch auf die Organisation der Projekte. Microservices machen sich das zu nutze – und sind so eine neue Hoffnung für produktive und nachhaltige Software-Entwicklung gerade auch bei großen Teams.

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?

Blog-Post

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.

Blog-Post

Bessere Web-Apps mit HTML5-APIs

Pimp my Browser

Blog-Post

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.

Blog-Post

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.

Blog-Post

Kanonische Architektur-Evolution

Stereotypen, Konzepte und Konstruktionsregeln

Blog-Post

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.

Blog-Post

Service-oriented Architecture (technisch)

Mit dem Advanced Level standardisiert der iSAQB Module aus unterschiedlichen Bereichen, die Teilnehmer nach ihren Bedürfnissen kombinieren können. Dieser Artikel erläutert das Modul „SOA-T“, das für Softwarearchitekten mit einem Fokus auf den technischen Aspekten serviceorientierter Architekturen entwickelt wurde.

Blog-Post

Warum Soft Skills für Softwarearchitekten wichtig sind

Gemeinsam Ziele erreichen

Blog-Post

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.

Blog-Post

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.

Blog-Post

Hystrix – Wider den Totalausfall

Quelloffene Leistungsschutzschalter für alle

Podcast

Wenn Systeme aus dem Ruder laufen

Mit Hystrix für stabile, verteilte Anwendungen sorgen

Blog-Post

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.

Blog-Post

Domain-Driven Design in Clojure

Gut bewertet

Podcast

Grid-Computing

Große Netze für große Probleme

Podcast

Graphdatenbanken

Vor- und Nachteile graphbasierter Datenbanken

Blog-Post

Versionsmanagement auf dem Tanker

Typische SCM-Szenarien großer Projekte mit festem Releasetakt

Blog-Post

Use-Case-Puzzeln für Fortgeschrittene

Das aktuelle Umfeld in vielen Unternehmen ist sehr dynamisch und herausfordernd. Dieser Trend wird sich aufgrund des wirtschaftlichen Rahmens eher verstärken denn abnehmen. Dies merken auch die Softwareprojekte, die oftmals bestehende Geschäftsprozesse durch Softwarelösungen unterstützen müssen, wobei die notwendigen Umgestaltungen im Geschäftsprozess oftmals noch nicht bekannt sind. Dabei reicht die Bandbreite von punktueller Unterstützung durch „einfache“ Anwendungssysteme bis hin zu einer End-to- End-Automatisierung mittels BPMN2 oder BPEL. Unabhängig vom Scope und der Implementierungstechnik müssen Requirements Engineers in solchen Projekten jedoch auch Geschäftsprozesse verstehen und modellieren, um Anforderungen für die Software formulieren zu können.

Blog-Post

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

Blog-Post

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.

Blog-Post

Geschäftsprozesse vom Fließband

Continuous Integration für automatisierte Geschäftsprozesse mit Maven und Jenkins

Blog-Post

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.

Blog-Post

BPMN und Camel

BPMN2 erfreut sich wachsender Beliebtheit und wird BPEL als Standard zur Modellierung ausführbarer Geschäftsprozesse langfristig ablösen, nachdem es bereits mit BPMN 1.x zum Standard für die fachliche Modellierung aufgestiegen war. Ausführbare Geschäftsprozesse sind dabei so detailliert und formal beschrieben, dass sie von einem Computer mittels eines Business Process Management Systems (BPMS) interpretiert, ausgeführt und analysiert werden können.

Blog-Post

Testobjekt: Geschäftsprozess – Testen für kontinuierliche Verbesserung

Geschäftsagilität durch Tests sichern

Blog-Post

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.

Blog-Post

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

Schöne Dokumentation – nur mit Text

.NET Developer Conference 2026 / 14:00 - 18:00

Vortrag
Vortrag

Masterclass AI Systems Architecture

Digitale Leute Summit 2026

Vortrag
Vortrag

Anforderungen und Architekturwissen für Coding Agents: zwischen Spec-Inflation und Vibe Coding

Software Architecture Summit Oktober 2026 / 10:00 - 13:00

Vortrag
Vortrag

Ihr entscheidet alle immer falsch!

BED Con / 09:00 - 10:00

Vortrag
Vortrag

AI Systems Architecture: Was AI-Features produktionstauglich macht

BED Con / 09:00 - 10:00

Vortrag
Vortrag

Secure Build Pipelines hands-on

heise devSec 2026 / 10:00 - 17:00

News

Neu im Canvas 101 Primer: Der AI Opportunity Canvas

News

INNOQ Technology Day am 12. November 2026

News

Digitale Souveränität beginnt mit resilienter Softwarearchitektur

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

INNOQ Fragezeit startet am 31. Juli

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

Training

Softwarearchitekturen für KI- und ML-Systeme entwerfen

iSAQB®-Schulung