Blog & Artikel von Markus Harrer

Blog-Post

Modern Legacy (dank KI)

Die Diskussion über Softwaremodernisierung wird derzeit stark von Lösungen rund um künstliche Intelligenz (KI) in der Softwareentwicklung geprägt. KI gestützte Code-Vervollständigung, Agentic Software Engineering und weitere Werkzeuge versprechen, Entwicklungsprozesse massiv zu beschleunigen. Der Gedanke liegt nahe, diese Werkzeuge direkt am bestehenden Code einzusetzen: Refactorings, Redokumentation oder sogar generierter Code für neue Funktionen in vorhandenen Legacy Systemen. Technisch ist hier bereits viel möglich und auch die Buzzword-Industrie ist hier wieder massiv unterwegs. Doch diese Code-nahen, KI-getriebenen Ansätze können für Unternehmen, die sich mit einem Dschungel aus Legacy Systemen auseinandersetzen, zu kurzsichtig sein. Eine Modernisierung, die von Anfang an nur auf Code zielt, führt schnell zu Modern Legacy: Systeme, die dank KI-Unterstützung technisch hochmodern und vorbildlich dokumentiert wirken, deren eigentlicher Zweck aber längst fragwürdig ist.

Blog-Post

Software Analytics going crAIzy!

I’ve long been an advocate of treating software like data and analyzing it accordingly with tools like Python, pandas, Jupyter Notebook, Neo4j, and jQAssistant. In the era of AI and code transformation tools, seeing software as data gets more and more important when you want to improve your software system at a large scale. This blog post is a short interim report from me about my efforts taking software analysis to the next level.

Blog-Post

LLM-assisted Abbreviation Mining for Legacy Systems

Deciphering the Hidden Language within Old Software Programs

Artikel

Der Evolutionist

Die heutige Aus- und Weiterbildung von Softwareentwicklern und Softwareentwicklerinnen konzentriert sich stark auf die Neuentwicklung von Software. Auf Konferenzen und in Fachmagazinen gibt es eine große Bandbreite an neuen Programmiersprachen, neuen Tools, neuen Hypes, an denen man sich anscheinend nie sattsehen kann. Schnelle Ergebnisse, direktes Feedback und noch nie dagewesene Produktivität werden suggeriert. Der Drang, das Neue auch in die eigene Software einzubringen, ist geweckt – bis man wieder von der Realität eingeholt wird: dem eigenen Legacy-System.

Blog-Post

Was treibt dich an?

In der heutigen schnelllebigen Welt der Softwareentwicklung ist die Modernisierung von Software eine unerlässliche Aufgabe, um mit ständig ändernden Anforderungen und Technologien Schritt zu halten. Es gibt immens viele Ansätze zur Modernisierung von Software. Aber es ist eine Herausforderung, die richtigen Werkzeugkästen in den richtigen Situationen zu finden. Wie schön wäre es, die eine «Ultimative Softwaremodernisierungsmethode™️» in den Händen zu halten, die all die Probleme mit den in die Jahre gekommenen Softwaresysteme lösen kann?

Blog-Post

Evolving software like an orchardist

Comparing apple trees with software modernization

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.

Blog-Post

Softwarequalität im Kontext von Wertschöpfung und Evolution

Qualitätsziele helfen, Architekturentscheidungen fundierter zu treffen. Eine Auswahl angemessener Qualitäten zu finden ist aber ein herausforderndes Thema. Qualitätsansprüche sind stark abhängig vom Betrachtungspunkt aus. Notwendige Qualitäten ändern sich zudem über die Zeit hinweg. In diesem Blog-Post möchte ich gerne eine Idee vorstellen, die helfen kann, Qualitäten im Hinblick auf ihre Relevanz besser einzuordnen. Als Basis verwende ich hierzu das ISO 25010 Qualitätsmodell sowie Wardley Mapping, mit Hilfe dessen sich Wertschöpfungsaktivitäten und die Evolutionsstufen von Softwaresystemen kommunizieren lassen.

Blog-Post

Kollaboratives Lernen mit Mobshops

Erste Eindrücke von einem Online-First-Lehrverfahren, dessen Kern aus Remote Mob Programming besteht

Blog-Post

Defect Analysis using pandas

Defect Analysis is a classic analysis technique to get insights into how buggy your system might be. In this blog post, we explore how Defect Analysis works and how we can implement it with a standard data analysis tool from Python: pandas.

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.

Artikel

cards42

Die Mitmach-Karten für Softwarearchitekt*innen