Software Engineering heute: Interview mit Prof. Dr. Volker Gruhn

Prof. Dr. Volker Gruhn ist Professor für Praktische Informatik, insbesondere Software Engineering an der Fakultät für Wirtschaftswissenschaften der Universität Duisburg-Essen. Aufgrund seiner langjährigen Erfahrung im Bereich der Softwareentwicklung ist er ein gefragter Experte, wenn es um aktuelle Trends und Perspektiven im Software Engineering geht. Für it factum unterhielt sich der geschäftsführende Gesellschafter Clemens Schäfer mit Professor Gruhn zum Thema featurewerk.

Clemens Schäfer: Herr Professor Gruhn, Sie befassen sich an der Universität seit vielen Jahren mit dem Thema Software Engineering. Dabei geht es immer auch um die Produktivitätssteigerung bei der Erstellung individueller Software. Welche Fortschritte wurden in diesem Bereich in den letzten Jahren erzielt, und wo stehen wir heute?

Volker Gruhn: Die Fortschritte sind auf der einen Seite erheblich. Was die Erstellung neuer Algorithmen angeht, sind wir heute deutlich produktiver als noch vor zehn Jahren. Das hat verschiedene Gründe: zum einen gibt es immer bessere und besser passende Programmiersprachen und zum anderen sind immer mehr vorgefertigte Algorithmen verfügbar und müssen „nur“ noch eingebunden werden. Da zeigt sich dann aber auch gleich die andere Seite: reine Programmierer gibt es immer weniger. Software wird heute mehr und mehr zusammengefügt, aus vorgefertigten Bestandteilen; und sie muss in existierende Umgebungen integriert werden, verschiedene Infrastruktursysteme müssen miteinander zum Laufen gebracht werden. Wenn man so will: weniger reine Programmierung, dafür mehr Integration Engineering. Und ganz am Ende weniger Aufwand für mehr Lösung.

Clemens Schäfer: Seit einigen Jahren gelten in vielen Unternehmen agile Methoden als gesetzt. In diesen sind selbstorganisierende Teams wesentlich für den Erfolg von Projekten verantwortlich. Das bedeutet viel Verantwortung für den einzelnen Entwickler. Werden die Entwickler – wenn man an eine realistische Bandbreite denkt – Ihrer Meinung nach diesem Anspruch gerecht? Oder droht hier latent Überforderung?

Volker Gruhn: Agilität ist mindestens in allen oberflächen-intensiven, von vielen Stakeholdern und Technologien geprägten Kontexten unverzichtbar. Ich würde noch die Einschränkung machen, dass es nicht um Software gehen sollte, die verifiziert werden muss, aber selbst da gibt es andere Meinungen. Und ja, die Entwickler haben es schwer in agilen Teams. Aber nicht schwerer als es sachangemessen ist. Entwickler müssen verstehen, worum es geht; sie müssen Konzepte erklären können und mit Menschen reden. All das bestimmt das agile Arbeiten. Da hilft ja alles nichts. Wichtig ist dann aber die Mischung der Qualifikationen in einem agilen Team: nicht jeder und jede Einzelne muss alles gleich gut beherrschen, aber das Team muss in Summe über alle Qualifikationen verfügen. Wenn agile Teams in Kontexten arbeiten, die – sagen wir mal – traditionell eher Command-and-Control geprägt sind, dann muss ein Transformationsweg hin zu einem angemessen Maß an Agilität gefunden und konsequent verfolgt werden.

Clemens Schäfer: In der IT steigt die Komplexität kontinuierlich. Technologien wie Cloud Computing oder KI spielen in immer mehr Projekten eine Rolle, Innovationszyklen werden in bestimmten Bereichen wie Oberflächen-Frameworks immer kürzer. Können Entwickler das alles noch überblicken und beherrschen, und – falls nicht – wie können Entwickler geeignet unterstützt werden?

Volker Gruhn: Auf Dauer kann das der einzelne Entwickler nicht leisten. Wir erkennen die Tendenz zu funktional gegliederten Teams in präzise organisierten Zusammenarbeitsmodellen. Nützlich ist es, wenn solche Teams gemeinsam Erfahrungen sammeln und mehr als ein Projekt zusammen durchführen. Und nahezu ideal ist es, wenn sich der Technologie-Stack nicht jedes Mal ändert.

Clemens Schäfer: Wenn Sie als Hochschullehrer auf die Ausbildungssituation Ihrer Studenten blicken: sind diese heute im Hinblick auf praktische Fähigkeiten besser oder schlechter vorbereitet als früher, wenn sie als Absolventen in den Arbeitsmarkt einsteigen?

Volker Gruhn: Ich denke, die Studierenden können heute in größerer Zahl besser programmieren. Ob sie gut auf die Erfordernisse der Entwicklung von integrierten Systemen in cloud-native Kontexten angemessen vorbereitet sind, glaube ich nicht. Da zahlen wir den Preis für die Bologna-Reformen. Wenn eine Hochschule erst mal die Akkreditierung hat und alle Modulhandbücher, dann ist es nicht attraktiv das alles up-to-date zu halten. Ich bin seit mehr als 20 Jahren Hochschullehrer für Software Engineering, und das ist ja ein sehr dynamisches Fach. Früher war es einfacher, die aktuellen Anforderungen der kommerziellen Softwareentwicklung in die universitäre Lehre Eingang finden zu lassen.

Clemens Schäfer: Der Markt mit IT-Freelancern boomt. Wenn ein Unternehmen maßgeschneiderte Software benötigt – wozu würden Sie ihm raten? Selbst ein Projekt mit Freelancern aufzusetzen oder das Projekt zusammen mit einem entsprechenden Dienstleister umzusetzen? Und welchen Mehrwert bringt guter Dienstleister in die Zusammenarbeit mit ein?

Volker Gruhn: Freelancer sind oft perfekt für spezielle Aufgaben qualifiziert. Wenn man genau weiß, was man braucht, ist ein Team aus ideal passenden Freelancern attraktiv. Zumindest auf den ersten Blick. Aber man muss mit dem Risiko, dass in so einem Team reichlich Fluktuationspotenzial steckt, umgehen können. Kurzfristige Fluktuation kann für innovative Projekte ja fiese Umbrüche und Verzögerungen mit sich bringen. Und wie gesagt, man muss schon sehr genau wissen, was man will. Für echt innovative Kontexte mit neuen Technologien wäre mir ein eingeschwungenes Team deutlich sympathischer.

Clemens Schäfer: Zurück zum Thema Produktivität: Betrachten wir die individuelle Entwicklung von Software, zum Beispiel digitaler Services: Angenommen, man würde für eine solche Klasse von Anwendungen eine standardisierte Architektur und Vorgehensweise zur Erstellung forcieren? Wäre das aus Ihrer Sicht sinnvoll möglich und gegebenenfalls produktivitätssteigernd?

Volker Gruhn: Ich würde „möglich“ durch „nötig“ ersetzen. Kaum ein Unternehmen kann heute noch vollständige Anwendungslandschaften alleine neu entwickeln. Die allermeisten Unternehmen entwickeln grundlegende Services zur Unterstützung ihrer Kern-Geschäftsprozesse selbst, bieten sie vielleicht Dritten an und kaufen Services anderer Anbieter hinzu. Das ist der Trend von der geschlossenen Anwendungslandschaft zu daten- und service-getriebenen Plattformen. Und die müssen offen und integrationsfähig sein, sie müssen skalieren und Heterogenität unterstützen. Ohne standardisierten Technologie-Stack geht das schief.

Clemens Schäfer: Welche Chancen sehen Sie in einem Vorgehen wie featurewerk, das durch ein hohes Maß an Standardisierung hinsichtlich Architektur, Technologie und Prozessen eine effizientere Umsetzung von individuellen Anwendungen verspricht?

Volker Gruhn: featurewerk ist ja nur einer der Ansätze, der ein paar der grundlegenden Technologieentscheidungen vor die Klammer zieht und einfach mal als gegeben ansieht. Zugegebenermaßen aber ein besonders smarter, weil der Stack frei von proprietären Technologien ist und weil er so Mainstream ist, dass er für Entwicklerinnen und Entwickler super attraktiv ist. Wenn ein Unternehmen für 2.000 Personentage Software entwickeln will, dann braucht man featurewerk nicht zwingend; wenn es aber darum geht, schnell zu einsetzbarer Software in einem technologisch modernen Kontext zu kommen, dann ist featurewerk ein guter Beschleuniger.

Clemens Schäfer: Lieber Professor Gruhn, ganz herzlichen Dank für dieses Gespräch!