Bitkom fordert Industrialisierung der Software-Entwicklung

CloudEnterpriseManagementProjekteSoftwareSoftware-Hersteller

Der Branchenverband Bitkom hat kürzlich einen Leitfaden zum Thema industrielle Softwareentwicklung veröffentlicht. Co-Autor Dr. Frank Simon,Leiter Research & Innovation bei SQS Software Quality Systems, erläutert im Gespräch mit silicon.de, warum Firmen ein hohes Risiko eingehen, wenn sie SOA oder Cloud Computing ohne die notwendigen Voraussetzungen nutzen.

silicon.de: Herr Dr. Simon, innovative Ansätze wie SOA oder Cloud Computing sind als Hoffnungsträger für die IT gestartet, haben dann aber in vielen Projekten eine Bruchlandung hingelegt. Was sind die Gründe?

Simon: Um mit einem Nicht-IT-Beispiel zu antworten: Würde es Ihnen helfen, wenn ich Ihnen ab morgen einen Pullover-Waschservice schicke, der jeden Tag um 14.00 Uhr die gebrauchten Pullover abholt und die gereinigten zurückbringt? Eventuell nicht, denn aktuell trennen sie vielleicht gar nicht nach Pullover, Hosen und Hemden sondern nach Buntwäsche, Kochwäsche und Handwäsche. Vielleicht tragen Sie aber auch gar keine Pullover oder sind zumindest um 14.00 Uhr nicht zu Hause. Natürlich wäre ein Pullover-Waschservice ein Hoffnungsträger, aber trotzdem wären wir uns sicher, dass er bei vielen Endkunden als “Bruchlandung” endete.

silicon.de: Was hat das mit SOA und Cloud Computing zu tun?

Simon: SOA und Cloud Computing sind ebenfalls Beispiele für komplexe Lösungen, die nur funktionieren, wenn bestimmte Vorbedingungen erfüllt sind – wie im Pullover-Beispiel. Wenn Sie keine wohldefinierten Schnittstellen zwischen Aufgaben identifiziert haben, können Sie mit SOA nichts anfangen. Wenn Sie keine abgeschlossenen Aktivitäten haben, die ohne lokalen Bezug funktionieren, dann hilft Ihnen auch die Cloud nichts.

Kurz: Wenn die Regeln der industriellen Fertigung und der Ingenieurskunst noch nicht befolgt werden, helfen Ihnen auch SOA und Cloud nichts. Spannend ist eben der Befund, dass diese Voraussetzungen die meisten IT-Teams nicht oder nur ansatzweise erfüllen. Unter anderem deshalb hat der Bitkom kürzlich einen Leitfaden zur Industrialisierung der Software-Entwicklung veröffentlicht – als Orientierungshilfe für Unternehmen und mit einem Überblick über den aktuellen Stand der Technik auf diesem Gebiet.

silicon.de: Warum veröffentlichte der Bitkom diesen Leitfaden gerade jetzt?

Simon: Das hat mehrere Gründe: Die Entwicklung von innovativen, gewinnbringenden Produkten und Dienstleistungen sind in Hochlohnländern ohne Software kaum mehr möglich. Der Markt boomt und gleichzeitig wächst in der gesamten Branche der globale Wettbewerbsdruck. Im gleichen Atemzug steigen die Kundenansprüche an Schnelligkeit, Qualität und Preis. Software-Hersteller sind daher gezwungen effizienter und produktiver zu arbeiten. Ohne eine Industrialisierung der IT-Produktionsprozesse lassen sich diese Herausforderungen nicht mehr bewältigen.

Auf der anderen Seite existieren aber auch immer mehr angebliche Lösungen, die der IT helfen sollen, diesen verstärkten Wettbewerb zu bestehen. Beispiele sind eben die Cloud und SOA aber auch modellgetriebene Entwicklung, komponentenbasierte Software-Entwicklung und Prozess-Frameworks. Dieser Leitfaden möchte die punktuellen (Teil-) Lösungen anhand der Industrialisierung ordnen und klassifizieren. Es entstehen dann Industrialisierungspfade, die die existierenden Teillösungen und Lösungen geordnet lernen und anwenden.

silicon.de: Was bedeutet Industrialisierung der IT konkret?

Simon: Industrialisierung bedeutet im Wesentlichen fünf aufeinander aufbauende Schritte: Standardisierung/Modularisierung, Automatisierung, Wiederverwendung, Spezialisierung sowie kontinuierliche Verbesserung. Diese Reihenfolge spannt einen groben Industrialisierungspfad auf: Nur modularisierte Vorgehen lassen sich standardisieren, nur standardisierte Vorgehen lassen sich automatisieren, nur automatisierte Vorgehen ermöglichen dann auch professionelle Wiederverwendung und in einem nächsten Schritt darüber hinaus Variationen zur Spezialisierung.

silicon.de: Haben Sie ein Beispiel?

Simon: Bei der Automobilindustrie leiteten strikte Aufgabenteilung, Standardisierung einzelner Schritte und Automatisierung einen umfassenden Strukturwandel ein, der die Produktion fundamental veränderte. Nicht zuletzt aus diesem Grund basieren heute etwa die Modelle VW Golf, Audi A3, Skoda Octavia, Seat Cordoba, Seat Toledo, VW Vento und VW Beetle alle auf derselben Plattform. Es ist klar zu erkennen, wo die Automobilbranche auf dem Industrialisierungspfad aktuell steht.

silicon.de: Was bedeutet das für die Entscheidung, in die Cloud gehen zu wollen?

Simon: Die Cloud ist sozusagen die Spitze der Industrialisierung: Sie haben Module erkannt, haben diese standardisiert und automatisiert, haben die Wiederverwendung vorangebracht – damit das Modul möglichst häufig verwendet wird – als auch eventuell Spezialisierungspunkte hinzugefügt und sind dann über die kontinuierliche Verbesserung zu einem Cloud-Provider gekommen, der Ihnen Ihre Anforderungen qualitativ hochwertig und kostengünstig anbietet.

Wenn Sie einen dieser Schritte überspringen, werden sie in der Cloud scheitern. Typische Beispiele sind enorme Änderungsraten der Services in der Cloud, die durchaus teurer sein können, als wenn sie “noch” In-House durchgeführt würden, als auch unbenutzte Cloud-Services oder aber auch ein wilder Zoo von verwendeter Clouds.

silicon.de: Und das funktioniert in klassischen Bereichen der industriellen Fertigung schon besser?

Simon: Die Automobilbranche ist der IT da beispielsweise deutlich voraus. Die Zulieferer werden zwar noch nicht in einer Cloud zusammengeführt, aber die meisten Vorbedingungen sind erfüllt. Eine Zahl soll das verdeutlichen: Bei einem deutschen Sportwagen sind mittlerweile nur noch knapp 30 Prozent ‘Made in Germany’, der Rest ist über den Pfad der Industrialisierung über klare Schnittstellen und Standards an Zulieferer ausgelagert.

Die IT kann von solchen Bereichen noch viel lernen: Die Schlüsselfaktoren sind bei der Software-Erstellung und -Wartung die gleichen wie bei anderen Branchen auch: ein ingenieurmäßiges, systematisches, wiederholbares sowie diszipliniertes Vorgehen, das quantifizierbar sein muss. Auch das sind typische Attribute der Industrialisierung. Allerdings ist auch zu beachten, dass die Industrialisierung im IT-Bereich noch nicht entsprechend vorangekommen ist und heute der industriellen Fertigung rund zwanzig Jahre nachhängt. Der Leitfaden will dazu beitragen, dass die IT-Industrie hier den Anschluss nicht verliert und in der Lage ist, ein Stück aufzuschließen.

silicon.de: Kann denn jedes Unternehmen einfach auf industrielle Produktion umstellen und das Vorgehen für sich nutzen?

Simon: Hier sprechen Sie einen entscheidenden Punkt und zugleich eine Kernaussage des Leitfadens an. Denn in der Tat können einzelne Elemente der Industrialisierung nicht einfach beliebig zusammengesteckt oder einfach drauflos industrialisiert werden. Der Industrialisierungspfad muss berücksichtigt werden. Alle Aspekte müssen eine entsprechende Reife aufzeigen, bevor beispielsweise die Cloud effizient und effektiv eingesetzt werden kann. Ist dies nicht der Fall, setzen sich Unternehmen beim Versuch zu industrialisieren leicht in die Nesseln. Wie wollen Sie beispielsweise einen Prozess automatisieren, wenn zuvor keine Standards festgelegt wurden? Das ist schlicht und einfach nicht möglich.

silicon.de: Im Leitfaden fällt auf, dass ein anderer Trend, nämlich agile Software-Entwicklung, nicht beschrieben wird. Wie passt das mit der Industrialisierung zusammen?

Simon: Das ist ein spannender Punkt, der diskutiert wurde, aber noch keine Ergebnisse im Leitfaden hervorgebracht hat. Zuerst einmal müssen wir zwischen “scheinbar” agilen Projekten und “tatsächlich” agilen Projekten unterscheiden. Für viele Kunden ist Agilität heute gleichlautend mit prozesslos, ungeplant und ad-hoc. Ein “tatsächlich” agiles Projekt ist aber genau anders. In Scrum gibt es ein sehr präzises Zeitscheibenprinzip – die Sprints – in denen wohldefinierte Aufgaben höchst diszipliniert erfüllt werden. Da sind durchaus viele Industrialisierungsaspekte erfüllt.

Es ist aber auch richtig, dass Agilität an einigen Industrialisierungsaspekten eigene Wege geht. Die Modularisierung der Aufgaben, aufgeteilt in Vorbedingungen, Verantwortliche, Nachbedingungen ist beispielsweise nicht so exakt durchgeführt, als dass es egal wäre, wo eine Aufgabe erfüllt werden muss. Agile Projekte leben massiv von der lokalen Nähe der Teilnehmer. In der Praxis führt das dann häufig zu einer Industrialisierung im Großen und einer Agilisierung im Kleinen. Ich denke, dass diese Kombination sehr erfolgversprechend ist und sicher in einem Update des Industrialisierungsleitfadens aufgenommen werden wird.

silicon.de: Vielen Dank für das Gespräch.