Krüger, JacobHölldobler, Steffen2022-12-022022-12-022022978-3-88579-980-1https://dl.gi.de/handle/20.500.12116/39836Durch variierende Anforderungen existieren die meisten Softwaresysteme in verschiedenen Varianten. Entwickler beginnen üblicherweise durch Klonen und Anpassen diese wiederzuverwenden, bis Wartungsprobleme zum Re-Engineering einer Softwareplattform führen. Obwohl dies das verbreitetste Szenario ist, wurde es in der Forschung nur unzureichend untersucht. Im Rahmen der Dissertation wurden vier Kernfaktoren empirisch analysiert, was zu folgenden, stark zusammengefassten, Ergebnissen führt: Entwickler sollten versuchen die Wiederverwendung in Richtung einer Softwareplattform zu systematisieren. Wissen über Features und deren Sourcecode ist essentiell, weshalb Featurecode proaktiv dokumentiert werden sollte, da ansonsten Wissen aufwändig wiedergewonnen werden muss. Ein aktualisiertes Prozessmodell mit zugehörigen Richtlinien hilft Organisationen bei der Durchführung von Re-Engineering Projekten und zeigt neue Forschungsrichtungen auf. Die Ergebnisse stellen eine Synthese und Erweiterung des existierenden Wissensstandes zum (Re-)Engineering variantenreicher Systeme sowie weiterer grundsätzlicher Problemstellungen dar, durch die viele etablierte Annahmen mit verlässlichen und aktuellen Daten bestätigt aber auch einige widerlegt werden.deDas Re-Engineering variantenreicher Systeme verstehenText/Conference Paper