Blog & Artikel

Blog-Post

Serverless

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

Blog-Post

Implementierung einer einfachen Zustandsmaschine (state machine) in Java

Eine simple Zustandsmaschine (state machine) in Java

Artikel

Lokale Datenanalyse mit Data Frames

Am Anfang war die Frage

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.

Blog-Post

Simplicity - Fighting Complexity At All Costs

My colleague recently wrote an excellent post discussing the functional and object-oriented paradigms. As someone who comes from a functional programming background, I definitely agreed with one thing: We need to stop building arbitrary walls that prevent us from learning from and helping each other.

Blog-Post

FP vs. OO

Artikel

Vault

Eigentlich ist man sich einig, dass durch immer größere und komplexere Netze und Systemlandschaften das Thema “Sicherheit” nicht einfach durch die eine grosse Perimeter-Firewall erledigt ist. Trotzdem fehlt es häufig an Infrastruktur, die dabei unterstützt zum Beispiel mit Zugangsdaten automatisiert und sicher umzugehen. Vault unterstützt hier als “a tool for managing secrets” dieses Problem anzugehen.

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

Wo bist du?

Consul: Service Discovery für den Microservices-Stack

Blog-Post

Progressive Web Components

This is a write-up of the «Progressive Web Components» presentation at GOTO Berlin.

Artikel

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?

Artikel

Services: 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

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.

Artikel

Software-Architektur für Innovation

Wie Software neue Umsatzquellen erschließen kann

Blog-Post

Command Line Tools in Swift: Words

Let’s write a simple command line utility in Swift.

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

Horden von Zombies

Wenn es um die Wurst geht

Artikel

Features in Java 9

Passend zum Schwerpunktthema «Java – die Neunte» dreht sich auch diese Kolumne um Neuigkeiten, die uns mit Java 9 zur Verfügung gestellt werden. Da sich den großen neuen Themen wie Jigsaw, JShell und HTTP/2 in diesem Heft eigene Artikel widmen, stelle ich Ihnen ein paar der vielen weiteren, jedoch deutlich kleineren Neuerungen vor. Freuen Sie sich also auf ein buntes Sammelsurium.

Artikel

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.

Artikel

Microservices - eine Bestandsaufnahme

Erfahrungen, Vor- und Nachteile des Ansatzes

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.