IT-Architektur mit den Tugenden des Extreme Programming
Artikel erschienen in Swiss IT Magazine 2006/03
Architektur oder Extreme Programming (XP) –muss man sich entscheiden? Beim XP wird die Software-Architektur von Programmierern während der Implementierung entwickelt. Dies kann funktionieren, wenn ein Kunde Mitglied im Team ist und viel Zeit aufgewendet wird, um regelmässig die bis dato entwickelte Architektur maximal zu vereinfachen. Allerdings ist die XP-Kultur vielen Firmen und Programmierern fremd und im Geschäftsbereich besteht oft wenig Bereitschaft, Mitarbeiter für IT-Projekte abzustellen. Das (Weiter-)Entwickeln von Applikationen und IT-Infrastruktur ohne Architektur führt deshalb meist zu komplizierten, unsauberen De-Facto-Architekturen, die die Benutzerbedürfnisse nicht erfüllen. Stellen sie sich vor, Sie bauen einen neuen Spitaltrakt, ohne Architekten und ohne Pläne, nur mit einem Team von Handwerkern, die selber bestimmen, was zu bauen ist und wie. Wer würde das riskieren?
Was aber gehört zu einer Unternehmens-IT-Architektur? Diese besteht aus unterschiedlichen, teilweise temporären, konsistenten Sichten. Sie sollen ein Systemverständnis ermöglichen, Innovationen provozieren, eine stabile Grundlage für Management-Entscheidungen liefern und die Planung und Kontrolle der Umsetzung dieser Entscheidungen unterstützen. Wichtig sind aussagekräftige, einfach verständliche Metaphern auf einer mittleren Abstraktionsstufe (Kern-Architektur), ein klares Design- und Dokumentationskonzept inklusive Anti-Patterns, V&V-Standards und kompatiblen Entwicklungsprozessen für Konsolidierung und Erweiterung (Meta-Architektur) und ein durch den CIO/CTO kontrolliertes Change-Management für Kern- und Meta-Architektur. Konkret sollten alle Stakeholder-, Fach- und Problemsichten dokumentiert und validiert werden und so ein Zooming-In von der Ausgangsmetapher bis in die Details ermöglichen. Wichtiger als formale Ästhetik ist, dass die Übereinstimmung von geplanter und implementierter Architektur konsequent kontrolliert wird.
Eine gute IT-Architektur erhöht die Sicherheit und reduziert das operationelle Risiko, weil Incident- und Verfügbarkeitsmanagement umso erfolgreicher sein können, je mehr Informationen die Architektur über die Bedeutung von Ereignissen bereitstellt. Sie verringert die Re-Engineering-Kosten, weil das Beheben von Fehlern und das Ändern oder Hinzufügen von Funktionalität weniger alten Code anfassen muss. Sie ermöglicht durch transparentes Design ein flexibles Outsourcing zur Reduktion der Betriebskosten und ein seriöses Erheben der Risiken für Basel II und SOX. Sie vereinfacht die Extraktion von Ablaufinformationen für Controlling und strategische Entscheidungen. Und sie erleichtert das Einarbeiten neuer Mitarbeiter und schafft die Basis für eine engere Kooperation zwischen Business und IT. Vom kreativen Wechselspiel zwischen Business und IT profitieren vor allem jene Firmen, die mit innovativen Geschäftsprozessen experimentieren oder sich an virtuellen Unternehmen beteiligen.
Entscheidend beim Architekturmanagement ist vor allem, dass wir –einige –der Lehren des XP beherzigen! Die heissen Einfachheit, inhaltliches Verständnis, Zusammenarbeit und Mut! Nur so, nicht allein mit Methoden, wird Komplexität beherrschbar und die IT-Architektur zum intellektuellen Unternehmenskapital.