Im Volksmund nennt man so etwas „Henne-Ei-Problem“. Es geht dabei um die Frage, was von beiden zuerst da war und womit man beginnen muss, bei der Henne oder beim Ei, um zum Ziel zu gelangen. Wie kommt man beispielsweise zur Henne, ohne ein Ei zu haben? Obwohl man es nicht vermuten mag, kennt auch die Autotechnik dieses Problem. Wir sind es heute gewohnt, dass uns unsere Fahrzeuge einen stetig wachsenden Komfort bieten, exzellente Fahrerunterstützung in alltäglichen sowie kritischen Situationen. Und alles muss absolut zuverlässig sein. Der Schlüssel dazu liegt in der Sensorik und vor allem in der Software. Deshalb läuft in einem modernen Fahrzeug mehr Software als in jedem anderen mobilen System. Und ein Ende beim Wachstum der Codezeilen ist nicht absehbar.
Inzwischen hat die Software im Auto eine Bedeutung erlangt, die dazu führt, dass man die Fahrzeugelektronik (die Hardware) nach den Bedürfnissen der Software ausrichtet. Die Software bestimmt heute, wo es lang geht. Dazu wird die elektrische und elektronische Architektur der Fahrzeuge komplett umgekrempelt – die Rede ist nun vom Software-defined Vehicle (SDV). Der wichtigste Schritt dabei ist, die Software von der Hardware unabhängig zu machen. Diese Entkoppelung – Fachleute sprechen von Separation – ermöglicht es, Software nur einmal zu entwickeln und dann auf unterschiedlicher Hardware laufen zu lassen – sie also wiederzuverwenden. Außerdem erlaubt die Trennung es, die unterschiedlichen Entwicklungszyklen bei Software und Hardware einzuhalten. So erfolgt die Aktualisierung von Software in der Regel deutlich schneller als die der Hardware.
Um die Masse an Software zu hosten (sie muss ja schließlich irgendwo „laufen“) werden Hochleistungsrechner im Auto benötigt. So entsteht gerade die neue Geräteklasse der High-Performance Computer (HPC). Sie bilden das Zuhause für die immense Menge an Software im Auto. Der „kleine Haken“ bei dieser Sache: Die schiere Menge an Software und der Vernetzungsgrad der Systeme untereinander plus die Vielzahl der Beteiligten an Softwareprojekten macht die Programmierung derart komplex, dass Softwareentwicklung fürs Auto zu den anspruchsvollsten Aufgaben gehört, die es für Ingenieure zu meistern gilt. Automobile Softwareentwicklung funktioniert nur mit bis ins letzte Detail ausgefeilten und abgesicherten Hilfswerkzeugen, Prozessen, automatisierten Routinen sowie testen, testen und nochmals testen. Denn im „Endprodukt“ Auto muss die Software ohne Wenn und Aber sicher funktionieren.
Womit wir wieder bei unserem Henne-Ei-Problem wären: De facto ist es heute so, dass Hardware-Muster begrenzt verfügbar sind. Außerdem stehen diese Muster erst spät im Entwicklungsprozess zur Verfügung, während gleichzeitig die Entwicklungszyklen kürzer und schneller werden. Für die Entwicklung bleibt damit weniger Zeit und für das Testen neuer Software erst recht. Was also tun?