« 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 ...