|
Zur Arbeit von Prof. Dr. Lutz Prechelt:
Der Vergleich und die Beurteilung von Methoden und Werkzeugen des Software-Engineering gleichen oftmals einem Glaubenskrieg und entspringen eher weniger systematischen Analysen. Bestenfalls wird eine neu entwickelte Technik in einer Pilotimplementierung anhand weniger akademischer Beispiele erprobt. Einer ernsthaften Belastung in der Praxis wird sie nicht ausgesetzt.
Lutz Prechelt geht einen anderen Weg. Er hat drei Entwicklungsplattformen für Web-Anwendungen einem Vegleichswettbewerb ausgestzt: Java, Perl und PHP. Dafür hat er drei mal drei Teams mit je drei Mitgliedern gewonnen, die eine Aufgabe lösen sollten, nämlich ein Web-Portal entwickeln, mit dem persönliche Beziehungen gepflegt werden, People bei Temperament genannt. Die Teams kamen aus der Praxis und hatten 30 Stunden Zeit, Tag und Nacht, ihre Software zu entwickeln.
Die Lösungen wurden anhand von zehn Kriterien analysiert und bewertet, beispielsweise nach funktionaler Vollständigkeit, Korrektheit, Performance.
Es fand sich kein eindeutiger Sieger unter den drei Plattformen bezüglich aller Kriterien, wohl aber eine Reihe interessanter Einsichten im Detail.
Prechelt hat ein bemerkenswertes Experiment gemacht. Das Gewinnen der Teams, die Aufgabenstellung, die Durchführung und die Auswertung sind eine beeindruckende Gesamtleistung, die in einem technischen Bericht sorgfältig und ansprechend dokumentiert ist. Dieses Projekt verdient Anerkennung, Fortsetzung und Nachahmung.
Zur Arbeit von Jan Jonas:
Das Verwenden von Frameworks ist eine probate Technik, um vorhandene Softwarebausteine für neu zu entwickelnde Anwendungen zu nutzen. Dies erhöht Qualität und verringert Kosten der Neuentwicklung. Wenn diese mit der Weiterentwicklung des Frameworks mitgehen soll, entsteht ein Problem insofern als nicht immer unmittelbar ersichtlich ist, welche Änderung des Frameworks die mit ihm verzahnte Anwendung wo und wie tangiert.
Jan Jonas hat einen Ansatz entwickelt, der Informationen über Änderungen der Framework-Schnittstelle und ihrer Nutzung aus dem Code extrahiert und aufbereitet. Daraus werden mittels eines Data-Mining-Algorithmus die relevanten Stellen herausgefiltert, die bei der Weiterentwicklung der Anwendung beachtet werden müssen.
Jonas hat seine Methode anhand zweier Frameworks erprobt: Eclipse und Struts. Es zeigte sich, dass die Nutzungsänderungen mit hoher Präzision erkannt wurden, auch solche, die andere Refactoring-Tools nicht finden.
Die Arbeit erfuhr ihre Anerkennung auch durch eine Publikation auf der International Conference on Software Engineering, ICSE 2008.
|