Detailseite
Projekt Druckansicht

Performance Engineering für Modelltransformationen

Fachliche Zuordnung Softwaretechnik und Programmiersprachen
Förderung Förderung von 2017 bis 2021
Projektkennung Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 358569332
 
Softwaresysteme wachsen kontinuierlich in Größe und Komplexität. Beispielsweise steigt der Softwareanteil in Autos alle zehn Jahre um eine Größenordnung. Ein Trend, diese Herausforderung zu meistern, ist die modellgetriebene Entwicklung, die Modelle und Modelltransformationen als Schlüsselelemente im Entwicklungsprozess nutzt. Modelle können im Fahrzeugbereich und für die Performanceprognose von Informationssystemen riesig werden. In diesen Fällen können schlecht performante Modelltransformationen mehrere Stunden zur Ausführung benötigen. Daher ist Performance eine wichtige Qualitätseigenschaft von Modelltransformationen.In den letzten Jahren werden Modelle nicht nur während der Entwicklung, sondern auch zur Laufzeit genutzt (models@run.time). Dies geschieht, um das Verhalten der Systeme zur Laufzeit analysieren und optimieren zu können. Da solche Modelle kontinuierlich aktualisiert werden müssen, müssen Modelltransformationen daher sehr schnell und garantiert innerhalb kurzer Fristen ausgeführt werden.Softwareingenieure befassen sich heutzutage entweder gar nicht mit der Performance, betrachten sie ad-hoc oder werden erst bei ersten Performanceproblemen bei der Anwendung beim Kunden aktiv. Es wird derzeit nicht daran geforscht, Softwareingenieure systematisch dabei zu unterstützen, die Transformationen selber hinsichtlich der Performance zu verbessern. Diese Verbesserung der Transformationen kann gemäß unserer Erfahrung zu signifikanten komplementären Performancesteigerungen führen, die aber Expertenwissen voraussetzt, wie Engines die Modelltransformationen ausführen.Aktuelle Techniken zur Performanceverbesserung können nicht angewendet werden. Profiling beschränkt sich auf die Identifikation von Performancehotspots im Quelltext. Software Performance Engineering (SPE) wird genutzt, um die Performance von Software vorherzusagen, ist jedoch nicht direkt für Modelltransformationen anwendbar.Das vorgeschlagene Projekt zielt darauf ab, einen ganzheitlichen Ansatz für das Performanceengineering von Modelltransformationen zu erforschen, um zu gewährleisten, dass die Modelltransformationen ihre Anforderungen hinsichtlich Performance und Skalierbarkeit erfüllen. Die Projektergebnisse werden es Softwareingenieuren ermöglichen, sowohl systematisch Ursachen von Performanceproblemen zu identifizieren als auch die Performance von Modelltransformationen hervorzusagen und zu verbessern.Um eine Verallgemeinerung der Ergebnisse zu gewährleisten, werden die Projektergebnisse auf unterschiedliche Transformationssprachen und verschiedene Demonstratoren, modellgetriebene Softwareentwicklung, selbstadaptive Cloudsysteme und Quadrokopterschwärme, angewendet. Weiterhin werden Nutzerstudien durchgeführt, um sicherzustellen, dass die Ergebnisse des Projekts tatsächlich Softwareingenieuren helfen.
DFG-Verfahren Sachbeihilfen
 
 

Zusatzinformationen

Textvergrößerung und Kontrastanpassung