Blog & Artikel

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.

Artikel

Vorgehensweise für maschinelles Lernen als Orientierung

Eine Vielzahl von hochentwickelten Technologien für maschinelles Lernen ist als Open Source frei verfügbar. Dennoch zeigt sich, dass es nur vergleichsweise wenige Anwender gibt, die diese Technologie in Produkten erfolgreich einzusetzen. Maschinelles Lernen ist ein sehr vielschichtiger und komplexer Bereich der Informatik und darüber hinaus ein Gebiet aktiver Forschung. Einsteiger können insbesondere im Bereich Deep Learning dadurch schnell den Eindruck gewinnen dass eine Einarbeitung nur auf hohem wissenschaftlichen Niveau möglich ist. Es gibt jedoch durchaus auch praxisorientierte Quellen. Viele Informationen sind nur in englischer Sprache verfügbar, daher verweist der Artikel auf englische Quellen.

Blog-Post

What’s in a Name: Projekt (und Produkt)

„Projekt“ ist oft der falsche Begriff

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.

Artikel

Designer sind vom Mars, Entwickler von der Venus

Digitale Produkte werden von Designern und Entwicklern sowie Architekten und Projektleitern Hand in Hand erarbeitet. Alle tragen gleichermaßen die Verantwortung für das Endergebnis. Und doch, oder deshalb, stellt die Zusammenarbeit oft eine Herausforderung dar. Über Farben lässt sich streiten, über Frameworks auch, im besten Fall agil und aufs Pixel genau. Ein empathischer Umgang miteinander erleichtert sicherlich den Arbeitsalltag, aber grundlegende Kenntnisse, die über den Tellerrand der eigenen Disziplin hinausgehen, können die Qualität eines Produkts direkt beeinflussen.

Artikel

Java-Bibliotheken für den Einsatz in Tests

Testunterstützung

Blog-Post

Testing is storytelling

Tests do not only exist to verify the absence of known bugs. They’re also documenting the expected behaviour of a system. Moreover, they’re showing developers how to use code.

Blog-Post

Continuous Integration Contradicts Features Branches!

Features branches are a popular approach to separating the development of different features - but unfortunately this contradicts continuous integration’s goal of continuously integrating all changes. So what to do?

Blog-Post

Do We Worship Complexity?

Why Sometimes We Don’t Avoid Complexity.

Blog-Post

Building a Load Test with Tsung for a Login and Post Session with dynamic url-encoded variables

If you want to test your website, app or API endpoint by simulating how it will perform when hundreds or more users visit it, you are probably writing a load test. This blogpost covers a step-by-step instruction on how to build a load test for a Ruby on Rails app with a login and post session and dynamic variables with Tsung, a distributed load testing tool.

Artikel

Continuous Integration mit Docker und GitLab

GitLab, 2011 als webbasierter Git-Repository-Manager gestartet, hat sich mittlerweile zu einer umfangreichen Softwareentwicklungssuite mit einer Vielzahl an Tools weiterentwickelt. Neben einem Issue-Tracker und einer Docker-Registry enthält es mittlerweile auch einen Continuous-Integration-Server mit einer optionalen Kubernetes-Integration. Der Artikel zeigt, wie eine Build- und Deployment-Pipeline aufgebaut werden kann und welche Einzelschritte ein neues Feature vom Issue-Tracker bis zur Produktionsumgebung durchläuft. Als Beispiel dient dabei eine Spring Boot 2-Anwendung, die als Docker-Image paketiert und anschließend auf einem Docker-Host deployt wird.

Artikel

Vertikalisierung im E-Commerce

Modellierung entlang der Customer Journey

Blog-Post

The Problem With Agility

Over twenty years ago, iterative-incremental development processes were already used. They are a forerunner of agile processes that have been around for more than fifteen years. Although agility has existed for quite some time, agile transformation is still an issue today. Often the transformation just doesn’t work. Why?

Blog-Post

Design Sprints: Technik

Über die letzten Design Sprints hinweg haben wir immer wieder am technischen Setup für die Nutzer:innen-Interviews gedreht und optimiert. Dieser Post soll einen kurzen Überblick über unsere aktuell eingesetzten Tools geben.

Artikel

Generierung von Regressionstests für Legacy-Code

Testfälle auf Knopfdruck?

Artikel

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

Server-sent Events in .NET mit Akka

Server-sent Events sind eine oftmals unterschätzte Technologie, wenn das Senden von Events benötigt wird. Für viele Sprachen stehen dabei fertige Bibliotheken zur Verfügung. In .NET war so gut wie keine Bibliothek zu finden, die ASP.NET Core unterstützt.

Blog-Post

Server-sent events in .NET with Akka

Server-sent events are an often undervalued technology when sending events is needed. For many languages, there are ready-to-use libraries available. There was practically no library in .NET that supports ASP.NET Core.

Blog-Post

Was ist ein Domain-driven Design Architektur-Kata?

DDD praktisch und konkret vermitteln

Artikel

E-Commerce im Wandel

Die Digitale Transformation und die kontinuierliche Marktentwicklung stellen Händler vor immer neue Herausforderungen. Um den Anschluss im digitalen Handel nicht zu verpassen, benötigt es ein solides Grundgerüst aus Strategie und Technik.

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.

Blog-Post

Architecture Governance mit Stereotypen

Blog-Post

Blockchain Mining: Embarrassingly Parallel?

In this blog post, we are going to look at three different approaches at mining new blocks in a blockchain using Rust, all of them using multiple threads, and we’re going to compare their runtime performances with each other and with that of the two single-threaded solutions from the previous post.