« Projekte
Sie verwenden einen sehr veralteten Browser und können Funktionen dieser Seite nur sehr eingeschränkt nutzen. Bitte aktualisieren Sie Ihren Browser. http://www.browser-update.org/de/update.html
EXtracting Product Lines from vAriaNTs (EXPLANT II)
Projektbearbeiter:
M.Sc. Jacob Krüger
Finanzierung:
Deutsche Forschungsgemeinschaft (DFG) ;
Eine Software-Produktlinie (SPL) ermöglicht die systematische Verwaltung einer Menge von wiederverwendbaren Softwareartefakten und damit die effiziente Generierung verschiedener Varianten einer Software. In der Praxis erstellen Entwickler jedoch häufig Softwarevarianten ad-hoc, indem sie Softwareartefakte kopieren und an neue Anforderungen anpassen (Clone-and-Own). Die hierbei fehlende Systematik und Automatisierung macht die Wartung und Weiterentwicklung der Varianten oft zeitaufwendig und fehleranfällig. Wir schlagen daher eine schrittweise Migration von geklonten Softwarevarianten in eine kompositionale (d.h. modular aufgebaute) SPL vor.
In der ersten Projektphase konnten wir bereits beachtliche Ergebnisse bei der Varianten-erhaltenden Transformation und den entsprechenden Analysen auf Modell- und Codeebene erzielen. In der zweiten Phase wollen wir nun auf den daraus gewonnenen Erkenntnisse aufbauen. Dies sind im Besonderen: (1) Eine nur auf Code-Klon Detektion basierende automatisierte Migration erzeugt keine kohärenten Softwareartefakte mit einer bestimmten Funktionalität. (2) Einige potentielle Kooperationspartner hatten Bedenken ihre Systeme zu migrieren, da sie die Einführung neuer Fehler befürchten. (3) Annotative SPL scheinen weniger fehleranfällig und somit robuster gegenüber Änderungen zu sein, als bisher angenommen.
Aufgrund der Probleme mit industriellen Partnern (2) kamen wir zu dem Schluss, dass weitere Forschungen, insbesondere zur Qualitätssicherung von migrierten SPL, Überführungskosten und Eigenschaften von Softwareartefakten notwendig sind. Wir wollen daher untersuchen, welche Kostenfaktoren bei der Überführung und beim Einsatz von SPL eine Rolle spielen und wie stark deren Einfluss jeweils ist. Weiterhin planen wir Qualitätsmetriken für migrierte SPL aufzuzeigen. In der ersten Projektphase haben wir bereits einen teil-automatisierten Migrationsprozess vorgeschlagen (1), welchen wir nun weiter ausbauen und neue Analysen integrieren wollen. Dabei wollen wir vor Allem untersuchen, ob sich nützliche Informationen, insbesondere über die Intention der Entwickler, aus weiteren Quellen, als dem Code beziehen lassen. Vielversprechende Ansätze sind hier die Analyse von Versionsverwaltungssystemen und die Analyse von existierenden Verhaltens- und Architektur-Modellen eines Systems. Des Weiteren haben wir vor, zur Steigerung des Automatisierungsgrads weitere Refactorings, wie z.B. "Move Method" einzusetzen. Um die Struktur und damit auch die Wartbarkeit der resultierenden Modularisierung zu verbessern, planen wir außerdem unseren Migrationsprozess auf Multi-Software-Produktlinien zu erweitern. Dadurch ließen sich einzelne Funktionalitäten eines Systems besser auftrennen. Ebenfalls wollen wir untersuchen, welche Granularität für migrierte Softwareartefakte am besten geeignet ist und ob annotative Verfahren (3) für migrierte SPL Vorteile gegenüber kompositionalen Verfahren bringen können.

Kooperationen im Projekt

Kontakt

weitere Projekte

Die Daten werden geladen ...