Refactoring in Langzeitprojekten
Eintrags-ID: 22421
In vielen lange laufenden Software-Projekten verschlechtert sich das anfänglich gute Design zunehmend aufgrund unter Zeit- und Kostendruck durchgeführter Erweiterungen und Änderungen. Die Qualität des Quellcodes sinkt aufgrund von Redundanzen und Inkonsistenzen.
Refactoring bietet durch semantik-erhaltende Trannsformationen des Codes die Möglichkeit, vorhandene Programm-Strukturen zu verbessern ohne, dass die Software von Grund auf neu geschrieben werden muss. Die Fallstudie untersucht die Vor- und Nachteile dieser Technik im Hinblick auf Langzeitprojekte und gibt Empfehlungen, wie und wo sie am effizientesten angewandt werden kann.
Im ersten Teil der Arbeit wird neben einer Einführung in das Themengebiet Refactoring ein Einblick in diverse Techniken, wie beispielsweise Metrikenerhebung und -beurteilung, gegeben, mit deren Hilfe man auf eventuelle Schwächen im Software-Design hingewiesen wird. Ferner wird dort das Ergebnis der Evaluation sowohl einiger Werkzeuge, die Entwickler bei der Code-Analyse unterstützen können, als auch spezieller Tools, die bei der Durchführung des Refactorings behilflich sind, präsentiert.
Der zweite Teil bildet den Schwerpunkt dieser Arbeit und widmet sich der Betrachtung von Fallbeispielen aus dem Code des untersuchten Projektes REX. Anhand dieser Beispiele werden die durch den Einsatz von Refactoring hervorgerufenen Änderungen kritisch bewertet. Dabei werden nicht nur subjektive Aspekte, wie zum Beispiel Übersichtlichkeit oder Wartbarkeit des Quellcodes, sondern auch Metriken- und Performanzänderungen unter die Lupe genommen. Ausgehend von den so gewonnenen Erkenntnissen werden Empfehlungen bezüglich des Einsatzes von Refactoring in Langzeitprojekten im Allgemeinen und in REX im Besonderen ausgearbeitet.
Weitere Vorgehensweisen zur Verbesserung der Code-Struktur von Langzeitprojekten werden im dritten Teil vorgestellt, wobei nicht nur die Vorzüge und Gefahren der jeweiligen Technik präsentiert, sondern auch Wege zu ihrer gelungenen Einf?uhrung in bereits laufenden Projekten aufgezeigt werden. Abschließend wird eine Übersicht über derzeit noch offene Fragen auf dem Gebiet der Code-Umstrukturierungen gegeben. Es werden weiter Überlegungen angestellt, welche Grenzen Refactoring-Werkzeugen generell gesetzt sind, und welche Funktionalitäten ihre Hersteller noch ausbauen müssen, um die Akzeptanz bei Entwicklern zu erhöhen.
Downloads

ViSEK_Report_039D_v1.0.pdfViSEK_Report_039D_v1.0.pdf    
 1,26 MB

Downloads
 
Zum Seitenanfang Top Drucken Impressum AGB
Home

VSEK ©2001-2012