Stefan Toth

Stefan Toth
Stefan Toth arbeitet als Entwickler, Softwarearchitekt und Berater bei der embarc GmbH. Seine Schwerpunkte liegen in der Konzeption und der Bewertung mittlerer bis großer Softwarelösungen sowie der Verbindung dieser Themen zu agilen Vorgehen. Er ist Autor zahlreicher Artikel und des Buchs "Vorgehensmuster für Softwarearchitektur". Kontakt: st@embarc.de
Beiträge dieses Autors

Conway 2.0: Wie Architekturstile agile Zusammenarbeit fördern oder behindern

Die Architektur Ihres Systems ist nicht allein eine technische Frage. Die Strukturierung des Systems, das Kommunikationsdesign und andere architektonische Fragestellungen setzen Grenzen für die Möglichkeiten des agilen Arbeitens, beeinflussen, wie Teams aufgestellt werden können und bestimmen mit, wie sich Architekturarbeit organisieren lässt. Dieser Artikel zeigt, was agile Softwareentwicklung uns über Teams und Zusammenarbeit lehrt und wie die technische Architektur hier helfen kann.

Softwarearchitektur in nicht perfekten Umfeldern: Agil, Lean oder einfach nur komplex?

Projekte und Produktentwicklungen sind unterschiedlich. Fest steht jedoch: Nirgendwo findet man ein perfektes Umfeld mit ausreichend Geld, Zeit und fähigen Leuten, ohne störende Legacy-Lasten, fehlerhafte Libraries oder böse Überraschungen. Selbst wenn viele dieser Parameter passen, ist Ihr Kunde oder Fachbereich vielleicht wankelmütig, oder das Management wechselt während des Vorhabens die eigene Linie (falls es eine gibt). Moderne Softwareentwicklung ist komplex und wenig schablonenhaft. Zeitgemäße Arbeit an der Softwarearchitektur muss deshalb Reaktionsfähigkeit stärken, fokussieren und sich davon verabschieden, dass alles vorab plan- und analysierbar ist.

Keine Angst vor Chaos

Netflix gilt als Vorreiter, wenn es darum geht, Fehler nicht nur zu vermeiden, sondern sie als normalen Teil des (System)lebens zu akzeptieren und effektiv zu überstehen. Mit einem Konzert von Tools und Bibliotheken rund um Hystrix, Asgard, Eureka und die Cloud-Infrastruktur von Amazon isoliert Netflix seine Nutzer von Fehlern und bleibt als System stabil. Dabei sind sich die Herren und Damen so sicher, dass sie selbst Hand anlegen und eine Vielzahl unterschiedlicher Fehler im Produktivsystem verursachen – täglich –, um es zu beweisen und im Ernstfall zu können. Dazu gehört Courage und Selbstbewusstsein. Haben sie die?

Softwarearchitektur bewerten – aber wie?

Bei einer Architekturbewertung geht es darum herauszufinden, ob Ihre Architektur für Ihren Kontext gut genug ist. Rahmenbedingungen und Anforderungen sind der Schlüssel für jede Bewertungstätigkeit. Von ihnen ausgehend eröffnet sich eine Menge an Möglichkeiten zur Bewertung von zentralen Entwurfsentscheidungen, gewählten Datenstrukturen oder Technologien, eingehaltenen Prinzipien oder extern zur Verfügung gestellten Schnittstellen.

Zeitgemäße Softwarearchitektur: Förderung von und Umgang mit Überraschungen

Im ersten Teil der Serie ging es um Praktiken, die beim Umgang mit begrenztem Geld- oder Zeitbudget auf Architekturseite wichtig sind. In diesem Teil schwenkt die Aufmerksamkeit auf den zweiten wichtigen Punkt zeitgemäßer Softwarearchitektur: Überraschungen. Erfolgreiche Projekte setzen auf häufige Überraschung aus der Umsetzung und scheitern immer wieder in kleinem Umfang. Der Weg führt über priorisierte Architekturanforderungen, mit der Entwicklung verzahnte Architekturarbeit und das Konzept der technischen Schulden.

Zeitgemäße Softwarearchitektur: Der Umgang mit beschränkten Mitteln

Haben Sie schon einmal erklärt bekommen, wie das mit der Softwarearchitektur richtig funktioniert? Haben Sie schon mal ein Buch gelesen und gedacht: So müssten wir mal arbeiten? Bei mir war beides öfter der Fall, und am Ende hat der Projektalltag alles zunichtegemacht: kein Geld, keine Zeit, die falschen Leute oder zu viel „Legacy“. Arbeit an der Softwarearchitektur findet (leider) selten ideale Voraussetzungen. Eine moderne Disziplin muss deshalb mit der Unvollkommenheit unserer Projekte zurechtkommen. Ein Schlüssel dazu: der Umgang mit beschränkten Mitteln.

Die schlanke Übersetzung von Unternehmenszielen in IT-Projekte

Viele Projekte, die sich mit Unternehmensarchitektur beschäftigen, sind starr, aufwendig und ergebnisarm. Es wird viel Zeit auf hoher Flughöhe verbracht und sehr breit gearbeitet. Die beteiligten Personen entfernen sich dabei zunehmend von den eigentlichen Problemen der Umsetzungsprojekte und die Akzeptanz im Unternehmen sinkt. Das muss nicht so sein. In diesem Artikel zeigen wir, wie Sie priorisiert und iterativ an der Unternehmensarchitektur arbeiten können. Scheibchen für Scheibchen werden Aufwände fokussiert und der Weg zur Umsetzung verkürzt.

Scheibchen für Scheibchen

Viele Projekte, die sich mit Unternehmensarchitektur beschäftigen, sind starr, aufwendig und ergebnisarm. Es wird viel Zeit auf hoher Flughöhe verbracht und sehr breit gearbeitet.
Die beteiligten Personen entfernen sich dabei zunehmend von den eigentlichen Problemen der Umsetzungsprojekte und die Akzeptanz im Unternehmen sinkt. Das muss nicht so sein. In diesem Artikel zeigen wir, wie Sie priorisiert und iterativ an der Unternehmensarchitektur arbeiten können. Scheibchen für Scheibchen werden Aufwände fokussiert und der Weg zur Umsetzung verkürzt.