Software gewinnt eine ständig zunehmende Bedeutung bei der Entwicklung von Ingenieurlösungen. So übernimmt Software beispielsweise die Erfassung und Verarbeitung von Sensordaten, die Steuerung von Aktuatoren, die Planung und Steuerung von Prozessen sowie Nutzerinteraktionen. Auch die softwarebasierte Simulation spielt eine wichtige Rolle bei der Entwicklung und Analyse technischer Systeme. Die Anforderungen an Software wachsen und damit auch die Komplexität von Software-Lösungen. Dies erfordert eine der Komplexität angemessene Unterstützung von Software-Projekten, beginnend vom Entwurf, über Implementierung, Validierung und anschließender Wartung von Software.