« 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
Verbesserung von Methoden zur automatischen Extraktion von API Spezifikationen
Projektbearbeiter:
M.Sc. Robert Heumüller
Finanzierung:
Haushalt;
Der Umgang mit Application-Programming-Interfaces (kurz APIs) macht heutzutage einen wichtigen Bestandteil des Alltags eines jeden Softwareentwicklers aus. Diese Programmierschnittstellen ermöglichen den Zugriff auf verschiedenste Ressourcen wie Programmklassen, Softwarebibliotheken oder Web-Services. Um ungewolltes oder fehlerhaftes Verhalten bei der Benutzung derartiger Ressourcen zu vermeiden, ist es unerlässlich, dass die von der API vorgesehenen Benutzungsregeln eingehalten werden. Eine Klasse dieser Einschränkungen befasst sich mit der zulässigen Reihenfolge von Methodenaufrufen, z.B. dem korrekten Initialisieren, Benutzen und schließlich Freigeben einer Ressource. Werden diese Regeln nicht eingehalten, kann es zu unerwünschtem Verhalten und Programmabstürzen mit ggf. kritischen Folgen kommen. Aus diesem Grund sind Spezifikationen der korrekten Benutzungsmuster von APIs von großem praktischen Wert. Einerseits erleichtern sie dem Entwickler die Einarbeitung in unbekannte APIs. Andererseits, und von besonderem Interesse, ermöglichen sie eine Reihe automatisierter Unterstützungstechniken im Software Engineering bis hin zu automatischer Detektion und Korrektur von Fehlverwendungen.
 
Da das manuelle Spezifizieren von APIs mit einem sehr hohen Aufwand verbunden ist, befasst sich die Forschungsrichtung des Specification Mining mit Techniken zur automatischen Extraktion von API Spezifikationen aus bestehenden Quellcodebeständen. Hierzu werden beispielsweise Algorithmen aus dem Data-Mining ausgenutzt, um wiederkehrende Muster bei der Verwendung von APIs in großen Projekten zu detektieren. Einfache Algorithmen sind hier insbesondere aufgrund ihrer geringen Präzision für den praktischen Einsatz nur sehr eingeschränkt nutzbar.
 
Das Ziel dieses Projekts besteht darin hier Abhilfe zu schaffen. Insbesondere sollen abstrakte Informationen aus dem Software Engineering Prozess, wie zum Beispiel das Wissen  über projektspezifische API Benutzungsmuster, eingebracht werden, um neue Methoden und Heuristiken zur Verbesserung automatischer Extraktionstechniken zu entwickeln.
Kontakt

weitere Projekte

Die Daten werden geladen ...