15 Mind the gap
Viele Unternehmen haben ein negatives Bild von der Rolle des Softwarearchitekten. Sie behaupten, dass die Architekten eiserne Vorgaben für ein Team setzen und nicht an das letztendlich funktionsfähige Softwareprodukt denken. Hierdurch wird die Reputation der IT geschadet und es entsteht eine Kluft zwischen den Unternehmen und den Softwarefachkräften.
Ein perfektes Szenario würde ein Team mit durchweg gleicher Erfahrung voraussetzen, welches auf allen Ebenen des Projekts eine gewisse Grundkenntnis zur Verfügung stellt. Da dieses Szenario allerdings utopisch ist, wird ein Softwarearchitekt benötigt, welcher das große Ganze im Blick hat. Somit können die zu erfüllenden nicht-funktionalen Anforderungen und die zu nutzenden Technologien von einer Stelle überwacht werden, während die Softwareentwickler in ihrem Spezialgebiet arbeiten können.
Softwarearchitekten werden oftmals auf eine Art Podest gehoben ohne das sie tatsächlich Aufgaben des Softwarearchitekten übernehmen, wodurch ebenfalls eine Kluft zwischen diesem und den Softwareentwicklern geschaffen wird. Hier übernimmt der Softwarearchitekt nur die Führungsaufgaben und arbeitet sonst als einfacher Softwareentwickler weiter. Dies führt dazu, dass die Entwickler die Entscheidungen des Architekten nicht respektieren und die Motivation sinkt.
Um diesem entgegenzuwirken ist es wichtig, dass sich die Rolle des Softwarearchitekten klar von der des Softwareentwicklers abhebt. Bezieht der Architekt die Entwickler zudem in den Architekturprozess mit ein, so wird schnell klar, dass sich die beiden Rollen grundlegend unterscheiden. Umgekehrt sollte der Architekt sich auch bei der Entwicklung beteiligen, um die Feinheiten der Architektur zu verstehen und auch ins Detail gehen zu können.