Kompetenzbereiche

Embedded Software Engineering

Um hochzuverlässige und sichere Systeme mit vorhersagbarer Qualität kosteneffizient entwickeln zu können, müssen die Softwarestrukturen ganzheitlich im Kontext der Entwicklungsumgebung und der eingesetzten Technologien betrachtet werden. Angesichts der rasant wachsenden Systemkomplexität müssen Entwickler dabei den Überblick über die Software behalten, um objektive Entwurfsentscheidungen treffen zu können. Die Abteilung Embedded Software Engineering unterstützt ihre Kunden im gesamten Softwarelebenszyklus, von den Anforderungen über die Implementierung und Wartung bis hin zur Modernisierung von Altsystemen im Bereich eingebetteter Softwaresysteme.

Schwerpunktthemen

Modellbasierte Softwareentwicklung

Bei der Entwicklung großer Softwaresysteme stößt man mit manuellen Entwicklungsansätzen schnell an die Grenzen der Entwicklungseffizienz. Zudem ist eine Vorhersagbarkeit von relevanten Qualitätseigenschaften des resultierenden Softwaresystems nur schwer oder gar nicht machbar. Um diesen Herausforderungen zu begegnen, setzen die Experten des Fraunhofer IESE modellbasierte Softwaremethoden ein. Wenn es um die Auswahl, Anpassung und Kombination geeigneter Modellierungsansätze und Werkzeuge geht, unterstützen die Experten des Fraunhofer IESE Sie umfassend bei Ihren Fragen zu modellbasierter Entwicklung.

Architekturbasierte Multikriterienoptimierung

Die Architektur eines Softwaresystems beeinflusst über Systemgenerationen hinweg Qualität und Entwicklungskosten. Systematische Vorgehensweisen in Kombination mit automatisierten, werkzeuggestützten Architekturanalysen und -simulationen ermöglichen sowohl die Bewertung bestehender Softwarearchitekturen als auch die frühzeitige Identifikation und Bewertung möglicher Architekturvarianten. Architekturmängel lassen sich so bereits direkt während der Softwareentwicklung konstruktiv vermeiden.

Plattformen

Im Bereich der eingebetteten Softwaresysteme spielen Referenzplattformen eine immer wichtigere Rolle. Belastbare Vorhersagen von Softwareeigenschaften sind ohne eine entsprechende Abbildung auf technologische Plattformen nicht mehr möglich. Architekturentscheidungen für eingebettete Softwaresysteme sollten daher immer auf Basis der Eigenschaften industrieller Standardplattformen wie AUTOSAR (Automotive Open Software Architecture) oder IMA (Integrated Modular Avionics) gefällt werden. In Zukunft wird den technologischen Plattformen eine immer größere Bedeutung zukommen, da diese in der Lage sein müssen, neben der reinen Ausführung auch kontrollierte Änderungen der Software zur Laufzeit zu unterstützen. Die Software im Kontext des Gesamtsystems muss dann so abgesichert sein, dass eine Softwareanpassung zur Laufzeit unter keinen Umständen zu ungewollten und unkontrollierbaren Effekten führt, die katastrophale Konsequenzen zur Folge haben könnten.