Filtern
Erscheinungsjahr
- 2010 (2) (entfernen)
Sprache
- Englisch (2) (entfernen)
Schlagworte
- API (2) (entfernen)
Institut
In recent years ontologies have become common on the WWW to provide high-level descriptions of specific domains. These descriptions could be effectively used to build applications with the ability to find implicit consequences of their represented knowledge. The W3C developed the Resource Description Framework RDF, a language to describe the semantics of the data on the web, and the Ontology Web Language OWL, a family of knowledge representation languages for authoring ontologies. In this thesis we propose an ontology API engineering framework that makes use of the state-of-the-art ontology modeling technologies as well as of software engineering technologies. This system simplifies the design and implementation process of developing dedicated APIs for ontologies. Developers of semantic web applications usually face the problem of mapping entities or complex relations described in the ontology to object-oriented representations. Mapping complex relationship structures that come with complex ontologies to a useful API requires more complicated API representations than does the mere mapping of concepts to classes. The implementation of correct object persistence functions in such class representations also becomes quite complex.
Die vorliegende Arbeit stellt eine Methode für die korpusbasierte Analyse der Verwendung von Softwarebibliotheken in Java-Programmen vor. Die meisten größeren Softwareprojekte verwenden Softwarebibliotheken, die als Schnittstelle für den Programmierer sogenannte APIs (application programming interfaces) bereitstellen. Um den Umstieg von einer solchen API auf eine andere zu unterstützen, strebt man Werkzeuge zur automatisierten API-Migration an. Zur Entwicklung solcher Werkzeuge fehlen allerdings noch Basisdaten. Statistiken und Beobachtungen zur Verwendung von APIs in der Praxis wurden bisher nur mit sehr kleinen Korpora von Projekten und APIs durchgeführt. Wir stellen in dieser Arbeit daher eine Analysemethode vor, die für Messungen an großen Korpora geeignet ist. Hierzu erzeugen wir zunächst einen Korpus von auf SourceForge gehosteten Open-Source-Projekten sowie einen Korpus von Softwarebibliotheken. In der Folge werden alle Projekte des Korpus compiliert, wobei ein Compiler-Plugin für den javac detaillierte Informationen über jede einzelne Methode liefert, die der Compiler erstellt. Diese Informationen werden in einer Datenbank gespeichert und analysiert.