Institut für Programmstrukturen und Datenorganisation

Terminkalender

ABBRECHEN || neuen Vortrag anmelden | Vorträge durchsuchen
Monat zurück | Vorträge dieser Monat | Monat vor


Fr, 18.07.2014 Herr Kamuran Dogan (Studienarbeit) ID: 100100
Erzeugen von Eingabedaten für Test-Klone
Betreuer: Mathias Landhäußer
Kurzfassung:
Die zu präsentierende Studienarbeit ist Teil eines Projekts (ProTest), welches die Generierung neuer Testfälle für ungetestete Klassen aus bestehenden Testfällen automatisiert. Auf diese Weise soll das erneute Schreiben von ähnlichem Quellcode bei der Entwicklung eines Softwareprojekts vermieden und damit Zeit erspart werden. Die Generierung fi ndet durch Klonen statt. Dabei wird ein bereits vorhandener Testfall kopiert und an die zu testende Klasse angepasst, wobei insbesondere die Eingabeparameter des Konstruktors (oder Methode) auf die neue Klasse abgestimmt werden müssen. Das Ziel dieser Studienarbeit ist daher die Generierung verwendbarer Eingabeparameter (Eingabedaten) für den Konstruktor der zu testenden Klasse. Dabei soll nicht nur die Erzeugung primitiver Parametertypen (z.B. int) möglich sein, sondern auch komplexer Typen wie Objekte. Zu diesem Zweck wird ein Konzept erstellt und ein Werkzeug in der Programmiersprache Java implementiert.
Passwort:  
 
Herr Sven Meisinger (Diplomarbeit) ID: 100113
Modellbasierte Generierung von Nebenläufigkeitstests
Betreuer: Luis Manuel Carril Rodriguez
Kurzfassung:
In den letzten Jahren konnte die Integrationsdichte dank Mehrkerntechnologie weiterhin verdoppelt werden. Um von dieser Leistungssteigerung profitieren zu können, werden neue Programmierparadigmen, die sogenannte mehrfädige Programmentwicklung, erforderlich. Dies bringt auch neue Fehlerarten, sogenannte Nebenläufigkeitsfehler, mit sich. Deren Auftreten ist abhängig von der Fadenverschränkung zur Laufzeit. Das Testen solcher Fehler ist aufgrund dieser Abhängigkeit sehr schwierig. Ohne zusätzlichen Aufwand können solche Fehler nicht zuverlässig aufgezeigt und reproduziert werden. Gängige Werkzeuge prüfen ein gegebenes Programm, lassen den Tester jedoch zumeist im Unklaren was genau geprüft wurde und ob mögliche kritische Verschränkungen ausgelassen wurden. In dieser Arbeit werden dem Tester Vorschläge für zu prüfende Verschränkungen gemacht und diese in möglichst vollständige Testfälle umgesetzt. Hierzu wird ein modellbasierter Ansatz verfolgt. Das Modell wird analysiert und zu testende Verschränkungen festgelegt. Für jede Verschränkung wird dann ein möglichst lauffähiger Test produziert. Somit beinhaltet der Test eine vorgegebene Verschränkung, wodurch der Tester nachvollziehen kann, was getestet wird.
Passwort:  

Fr, 25.07.2014 Herr Oleg Löwen (Masterthesis) ID: 100108
Analyse der Speicherverwaltungskonfiguration in Java zur Lösung von Performance Problemen
Betreuer: Christoph Heger
Kurzfassung:
Die Performance eines Software-Systems hat nicht nur Einfluss auf die Betriebskosten, sondern auch auf die Kundenzufriedenheit. In der industriellen Praxis werden Anwendungen häufig in Java entwickelt. Mit der Java-Virtual-Machine (JVM) stellt Java eine automatische Speicherverwaltung bereit, die einen deutlichen Einfluss auf die Performance der Anwendung ausüben kann. Die Anpassung der JVM-Konfiguration ist komplex und zeitaufwendig. Diesbezüglich wurde eine Analyse der JVM-Konfiguration durchgeführt mit dem Ziel Änderungshypothesen herzuleiten, mit deren Hilfe Entwickler die Antwortzeit ihrer Anwendung verbessern können. Die Analysen wurden mithilfe eines dafür implementierten Benchmarks durchgeführt, der verschiedene Anwendungscharakteristiken (z.B. Allokationsrate und Objektsterberate) simuliert. Anhand der gewonnen Erkenntnissen wurden 10 Änderungshypothesen zur Anpassung der JVM-Konfiguration hergeleitet. In einer Fallstudie am Beispiel einer speicherintensiven Anwendung wurde gezeigt, dass mithilfe der Änderungshypothesen auch bei anderen Systemen eine Performance-Verbesserung erreicht werden kann. Die Antwortzeit der untersuchten Anwendung konnte damit um bis zu 57% reduziert werden.
Passwort: