Wie funktioniert die Kommunikation zwischen einem Ingenieur und einem Softwareentwickler? Für das Internet der Dinge verschmelzen oft Welten. So treffen Abteilungen aufeinander, die vorher nur wenig Schnittstellen hatten. Das agile Arbeiten in 2- oder 10-wöchigen Sprints ist nicht vergleichbar mit den Konstruktionsprozessen eines maschinellen Produkts – könnte man meinen. Erfahren Sie, wie Spannungen zwischen Bereichen sich zu Innovationen entwickeln können.
Die Schnelllebigkeit und hohen Innovationsraten in der IT steht den Herausforderungen der Automobilbranche gegenüber und macht Unterschiede in Vorgehensweisen, aber auch im Tempo sichtbar. So gibt es im klassischen Fahrzeugbau momentan die Phase der Serienentwicklung mit 36 bis 48 Monate bis zur Serienproduktion. Sei es bei einer kompletten Neuentwicklung oder einem Derivat, davor müssen auch verschiedene Stufen der Vorentwicklung durchschritten werden, bis das erste Fahrzeugkonzept steht. Die Integrationsstufen der Serienentwicklung für die Integration der Teil- und Vollaufbauten sind als genereller Zeitplan für alle Beteiligten klar spezifiziert. Der lange Takt der Automobilentwicklung trifft auf kurz getaktete Software-Entwicklungsgruppen.
Quelle: ©192821520 – Adobe Stock
Continuous Integration
Längst arbeiten die Ingenieure mit virtuellen Werkstücken, die ständig ins virtuelle Fahrzeug integriert werden. Was früher in akribischer Spezifikationsarbeit aufgeschrieben und vertraglich festgehalten werden musste, wird heute vorab bereits virtuell erlebbar. So entscheidet der Ingenieur die nächsten Produktionsschritte nicht mehr vorab aufgrund seiner Vorstellungskraft, sondern erlebt das gemeinsame virtuelle Werkstück. Softwareentwickler sind gerade dabei, Continuous Integration als Stand der Technik in ihre Prozesse zu integrieren. Wer ist hier eigentlicher agiler?
Die Entwicklung von Software stellt sich unterschiedlichsten zeitlichen Vorgaben. Software für Steuergeräte und die Mensch-Maschine-Schnittstelle (vulgo: Navigationssystem) sind fest im Fahrzeug verbaut und müssen mit den zeitlichen Vorgaben der Steuergeräte und damit der maschinellen Konstruktion einhergehen. Und immer mehr Komponenten werden mit software-gesteuerten Geräten versehen. Selbst Scheinwerfer wurden als »adaptive Scheinwerfer« neu erfunden. Um das vorausfahrende Fahrzeuge zu erkennen, dessen Konturen zu verarbeiten und im Anschluss den Lichtkegel anzupassen, werden Daten benötigt. Auf Basis der Auswertung mit Hilfe von Software können Scheinwerfer entsprechend des Lichteinfalls oder -ausfalls gesteuert werden.
Remote-Update für mehr Flexibilität
Der aktuelle Evolutionsschritt hier wird der Remote-Update sein, um sich aus diesem Korsett befreien zu können und neue Formen der Flexibilität zu finden. Die Smartphone-Industrie hat es vorgemacht. Die Software außerhalb des Fahrzeugs wurde längst an Internet basierte Prozesse angepaßt, Aktualisierungen sind hier selbstverständlich.
Best Practices voneinander lernen
Beide Entwicklungswelten befinden sich in ihren eigenen Change- und Innovationsprozessen und haben oft Schwierigkeiten zu erkennen, wer sich jetzt wem anpassen sollte: Softwareentwickler gehen oft davon aus, dass gerade sie die neuesten Entwicklungsprozesse am Start haben. Automobilentwickler sind nicht bereit, ihre bereits auf Erlebbarkeit getrimmten Prozesse und den festen Takt der Serienproduktion aufzugeben, da sie um den Qualitätsverlust fürchten und ein Kommunikationschaos vermeiden wollen. Tatsächlich ist die Skalierung von agilen Softwareentwicklungsprozessen ein oft unterschätztes, oder vernachlässigtes Thema. Nun, es gibt Gründe, dass beide Seiten aufeinander zugehen und Best Practices voneinander lernen.
Ständige Erlebbarkeit
Eine wichtige Gemeinsamkeit gibt es in der Arbeitsweise von Konstrukteuren und Softwareentwicklern: Der Fokus auf die ständige Erlebbarkeit des Produkts. Die einen arbeiten am virtuellen Werkstück, dessen Eigenschaften man jeden Tag aktuell simulieren kann. Bei der Software wird mit Continuous Integration ebenfalls täglich integriert, so dass sämtliche Weiterentwicklungen von Programmierern und Dienstleistern erlebbar sind. Auf beiden Ebenen gibt es das Ziel, dass Entwickler nicht mehr einfach eine Spezifikation runter-entwickeln, sondern täglich den Fortschritt und die Änderungen der anderen Teams sehen können. Und das Wichtigste dabei: Sie können darauf reagieren.
Release Train, SAFe und SCRUM
Früher gab es große Prozessmodelle mit klaren Richtlinien zur Entwicklung einer Software. Dabei lag der Gestaltungsspielraum hauptsächlich beim Softwarearchitekten. Die Freiheitsgrade eines Entwicklers waren stark eingeschränkt. Diese klaren Strukturen erzeugen wenig Spielraum für Innovationen. Bei einer gleichmäßigeren Verteilung der Freiheitsgrade dagegen entstehen neue Wege und Entwicklungen, aus denen Ideen entstehen. Der Fokus auf Gruppenarbeit und eine damit verbundene vereinfachte Kommunikation bilden dabei die Basis von agilen Methoden. Eine dieser agilen Methoden des Projektmanagements ist der sogenannte SCRUM-Ansatz. Um die Effizienz bei den SCRUM-Teams zu steigern, wurde das Scaled Agile Framework (SAFe) entwickelt. Schwerpunkt des Konzeptes ist hierbei, die verschiedenen Beiträge in die Teamarbeit zu integrieren.
Quelle: https://www.scaledagileframework.com/agile-release-train/
Mit Hilfe von SAFe wird Software ständig beobachtbar für alle Mitwirkenden. So kann an bereits entwickelten Teilbereichen weiterentwickelt werden oder Problemstellungen lösen sich automatisch.
Fazit
Momentan ist es noch nicht Stand der Technik, dass die Welt der Software mit der virtuellen Welt der Fahrzeugentwicklung ständig integriert wird. Dafür spannt die Software den Bogen zu anderen technischen Devices und Plattformen und erhöht den Vernetzungsgrad immer weiter. Dadurch entstehen noch ganz andere Nutzungsmöglichkeiten, die entkoppelt vom Fahrzeug und den Produktlinien selbst sind:
- Der Kunde erlebt die Software auch im Portal oder in der App
- Die Konzernzentrale dagegen erlebt die Software im Backend
- Der Mechaniker erlebt die Software in seiner Garage
Dennoch gilt: Auch diese Form der Software muss unabhängig vom Alter des Fahrzeugs zu jeder Zeit funktionieren, jede Softwareaktualisierung soll mit den verkauften Fahrzeugen weiter funktionieren. Die Herausforderung liegt darin, die Software weiter zu entwickeln und dabei alle Sachzwänge der unterschiedlichen Modelle über die Jahre mit zu berücksichtigen. Testautomatisierung und Continuous Testing kann die Erlebbarkeit der verschiedenen Modelle simulieren. Sie liefert Antworten auf die Frage »funktioniert unsere neue App-Version auch noch in einem 4 Jahre alten Auto? In aller Welt?«.
Adriane Kovacevic, Marketing Managerin,Vision11 GmbH
Mobil unterwegs: Die Netzwerkkonnektivität geht auf die Straße
Automatisierung in der Automobilindustrie – Autonomes Fahren verändert die Produktionsprozesse
Hybride Entwicklung von Hard- und Software verkürzt Produktionszeiten in der Automobilindustrie
Automobil-Branche: Software-Testing (k)eine Kernkompetenz der Hersteller
Wi-Fi auf der Überholspur: Die Evolution vernetzter Fahrzeuge
Vernetzte Fahrzeuge und das Internet der Dinge treiben die digitale Modernisierung voran