Das Problem mit der Architekturqualität

Die Lösung des Problems

Aber wie kann man es besser machen? Die Lösung ist bereits grundsätzlich genannt worden: Man darf nicht nur in Projekten denken und handeln, man muss auch die Systeme und deren Nachhaltigkeit im Fokus behalten. Gerade die Qualitätsattribute Verständlichkeit und Änderbarkeit sind bei den langen Lebenszyklen der Systeme extrem wichtig, wenn man will, dass auch zukünftige Projekte Änderungsanforderungen schnell und flexibel umsetzen können.

Natürlich ist es dabei auch wichtig, nicht in das andere Extrem zu verfallen: Es ist niemandem geholfen, wenn die IT sich jetzt nur noch mit der Verständlichkeit und Änderbarkeit ihrer Systeme befasst und dabei wichtige, kurzfristige Geschäftsanforderungen komplett ignoriert. Es muss eine sinnvolle Balance gefunden werden, um den maximalen Nutzen zu erzielen (Abb. 4).

Abb. 4: Unternehmensnutzen abhängig vom Fokus (vereinfacht)

Aber wie kann man das hinbekommen? Es gilt, das natürliche Spannungsfeld zwischen Projektleiter und Architekten auszubalancieren. Beide werden benötigt, also sollte man als Unternehmen das Spannungsfeld für sich nutzen. Heute sieht es meistens so aus, dass der Projektleiter die komplette Entscheidungsgewalt hat und der Architekt gar keine. Im Zweifelsfall bestimmt der Projektleiter und der Architekt hat das Nachsehen. Besser wäre es, wenn Projektleiter und Architekt sich auf Augenhöhe mit vergleichbaren Kompetenzen begegnen, um so eine konstruktive Diskussion zum Finden guter Kompromisse zwischen den beiden Zielen zu fördern. Genau dies ist die Grundvoraussetzung für nachhaltige Flexibilität und Reaktionsfähigkeit als Unternehmen: Das Schaffen einer Umgebung, in der das natürliche Spannungsfeld zwischen Projektleiter und Architekt zum Tragen kommt und so die für das Unternehmen wichtigen Größen Projektgeschwindigkeit (und Kosten) sowie Systemqualität in eine sinnvolle Balance kommen können.

Fein-Tuning

In einem solchen Umfeld hat der Projektleiter ein Problem: Seine Aufgabe ist es doch, mit einem Minimum an Zeit und Budget ein Maximum an Scope und Qualität zu erzielen, wobei in der Praxis meistens schon viele der Größen vor Projektstart festgelegt werden. Wie soll er diese Aufgabe zielgerichtet umsetzen, wenn er jetzt nicht mehr die Möglichkeit hat, diese unumschränkt durchzusetzen? Er muss sich jetzt ja mit einem Architekten arrangieren, der die gleichen Rechte wie er hat, aber ganz andere Ziele. Was tun? Jetzt könnte man sich auf den Standpunkt stellen, dass es ihm damit immer noch besser ginge als bislang einem Architekten, der auch eine Aufgabe hatte, aber letztlich keine Mittel sie durchzusetzen. Aber es gibt natürlich auch ein paar konstruktivere Lösungsansätze:

Der Architekt bekommt ein Budget für die Systempflege: Das wäre wahrscheinlich die sauberste Lösung. Da sowohl die Projektziele als auch die nachhaltige Systemqualität einen Wert für das Unternehmen darstellen, gibt man dem Architekten analog zum Projektleiter ein Budget zur Sicherstellung der Systemqualität im Sinne der Erfüllung der architekturrelevanten Qualitätsattribute, mit einem besonderen Fokus auf Verständlichkeit und Änderbarkeit. Allerdings könnten immer noch Projekttermine durch für die Architekturqualität relevante Aktivitäten gefährdet werden. Hierfür gäbe es die Möglichkeit, eine Reihe dieser Aktivitäten außerhalb der normalen Projekte durchzuführen. Man hätte dann die normalen Projekte und orthogonal dazu eine Systempflege. Um sicherzustellen, dass innerhalb der Projekte keine Entscheidungen getroffen werden, die komplett gegen die Architekturziele sind, sollte ein Architekt die Projekte weiterhin zumindest beratend unterstützen, im Notfall auch mit Vetorecht ausgestattet.

Der Architekt begleitet bereits die Planungs- und Budgetierungsphase des Projekts: Aus Architektursicht sinnvolle Lösungen sind nicht unbedingt die billigsten Lösungen. Häufig werden in der Budgetierungsphase aber zugunsten eines Business Cases oder anderer kommerzieller Gründe die billigsten Lösungsmöglichkeiten angenommen. Um den Projektleiter danach nicht vor ein unlösbares Problem zu stellen, sollte ein Architekt bereits die Planungs- und Budgetierungsphase eines Projektes begleiten. Dort kann er dann mögliche Alternativen und deren Konsequenzen aufzeigen und so helfen, die aus Unternehmenssicht ganzheitlich beste Lösung zu finden und zu budgetieren.

Technische Schulden explizit machen: Das ist keine echte Lösung, aber zumindest ein erster Schritt, um Konsequenzen explizit zu machen. Hat der Architekt weder Budgets noch Entscheidungskompetenzen und wird mit aus Systemqualitätssicht schlechten Lösungen konfrontiert, so kann er diese Lösungen und deren Konsequenzen zumindest dokumentieren. Aus der agilen Welt gibt es hierfür den Begriff der „technischen Schulden“. Dieser bezeichnet eine Lösung, die man vorläufig „quick and dirty“ umgesetzt hat und die man zu einem späteren Zeitpunkt noch einmal nacharbeiten muss, wenn man nicht Zins und Zinseszins in Form von steigenden Fehlerquoten, Instabilitäten und sinkender Produktivität zahlen will. Damit hat man das Problem zwar noch nicht gelöst, aber man hat als Architekt Transparenz geschaffen, was ein erster Schritt ist.

Bei all diesen Ansätzen ist essenziell wichtig, dass sich Architekten auf die beschriebenen Ziele fokussieren. Das häufig schlechte Bild von Architekten rührt unter anderem daher, dass viele Vertreter dieser Spezies ein ausgeprägtes Bedürfnis entwickelt haben, sich selbst Denkmäler zu setzen: Überkandidelte Architekturen, diktatorisches Verhalten usw. waren häufig die Folge, gepaart mit unvermeidlichem Vertrauensverlust. Deshalb ist es für Architekten immens wichtig, sich als Dienstleister für die beschriebenen Ziele zu verstehen und im Zweifelsfall dem „Weniger ist mehr“-Prinzip zu folgen. Dann hat man auch eine reelle Chance, Akzeptanz für die hier skizzierten Vorschläge zu bekommen.

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.