Verbesserung von Methoden zur automatischen Extraktion von API Spezifikationen
Projektleiter:
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.
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
Prof. Dr. Frank Ortmeier
Otto-von-Guericke-Universität Magdeburg
Institut für Intelligente Kooperierende Systeme
Universitätsplatz 2
39106
Magdeburg
Tel.:+49 391 6752804
weitere Projekte
Die Daten werden geladen ...