Volltextdatei(en) vorhanden
DC ElementWertSprache
dc.contributor.advisorMenzel, Wolfgang (Prof. Dr.-Ing.)
dc.contributor.authorKrause, Jan Christian
dc.date.accessioned2020-10-19T12:57:23Z-
dc.date.available2020-10-19T12:57:23Z-
dc.date.issued2013
dc.identifier.urihttps://ediss.sub.uni-hamburg.de/handle/ediss/5637-
dc.description.abstractViele moderne Software-Systeme sind aus verschiedenen Komponenten aufgebaut. Diese Komponenten interagieren jeweils über definierte Schnittstellen mit Operationen, sogenannte Application Programming Interfaces (API). Deren Erwartungen und erbrachte Leistungen werden durch einen zur jeweiligen Operation gehörenden Vertrag spezifiziert. Enthält dieser Vertrag Lücken, so sind folgenschwere Missverständnisse zwischen dem Hersteller einer Komponente und deren Nutzern (im Sinne nutzender Programmierer) sehr wahrscheinlich. Diese Lücken werden als Stille bezeichnet und betreffen häufig an der Signatur unsichtbare Ressourcen, Regeln oder mögliche Ausnahmefälle. In dieser Arbeit wird ein systematisches Verfahren zur Identifikation dieser Lücken entwickelt. Dieses Verfahren basiert auf einer linguistischen Analyse des natürlichsprachlichen Namens der Operation. Die vorliegende Arbeit zeigt, dass selbiger häufig englische Verben beinhaltet. Aufgrund des Verbs oder genauer des Prädikates des Namens kann auf notwendige Inhalte des zugehörigen Vertrages rückgeschlossen werden. Dazu werden Operationen gemäß dem linguistischen Konzept der thematischen Raster in Kategorien eingeteilt. Diesen Kategorien werden in einem Lexikon sowohl mögliche Verben als auch die geforderten Inhalte zugeordnet. Diese Arbeit enthält einen auf Basis empirischer Analysen entwickelten Vorschlag für die Initialisierung dieses Lexikons. Das Verfahren kann unabhängig von einer konkreten natürlichen Sprache (zur Formulierung der Bezeichner) oder Programmiersprache (zur Formulierung der Operationssignatur) eingesetzt werden. Es wird ferner ein prototypischer Software-Assistent vorgestellt, der Autoren bei der Formulierung von API-Verträgen auf Basis des neu entwickelten Ansatzes unterstützt. Diese Arbeit stellt außerdem einen Ansatz zur Quantifizierung des Umfangs und der Relevanz von Lücken in einem API-Vertrag vor. Dieser Ansatz basiert auf systematisch konstruierten Testfällen zu einer Operation. Über die systematische Konstruktion von Testfällen kann ein Erwartungshorizont für API-Verträge konstruiert werden. Vor dem Hintergrund dieses Erwartungshorizontes an Inhalten erfolgt dann die Bewertung des tatsächlichen Vertrages. Abschließend wird das neue Verfahren im Rahmen einer Fallstudie und eines Probandenexperimentes evaluiert. Dabei zeigt sich, dass sich durch das entwickelte Lexikon ein hohes Optimierungspotential für API-Verträge erschließt, die auf Basis konventioneller Verfahren wie javadoc formuliert worden sind.de
dc.description.abstractMany of modern complex software-systems are built of components. These components interact via defined interfaces with operations, so called Application Programming Interfaces (API). The requirements and offered services of an operation are described by its contract. If there are gaps in such a contract, serious misunderstandings between provider and consumer of a component are a probable consequence. Such gaps are called silence. In most cases the gaps refer to resources, business rules or possible error cases, which are invisible at the operation’s signature. This thesis presents a systematic approach to identify silence. The presented approach bases on the linguistic analysis of the operation’s identifier in natural language. It is shown, that such identifiers often contain english verbs. With these verbs or, more precise, with these predicates one could infer required resources, rules or error cases for the corresponding contract. By applying the linguistic concept of thematic grids the operations are categorized. The verbs as well as the inferred contents are assigned to each of these categories. This thesis suggests such a lexicon which has been derived from empirical investigations. This approach is independent of a concrete natural language (to formulate the identifiers) or programming language (to formulate an operation’s signature). In addition a protoypical software assistant is presented, which supports authors when formulating API-contracts. This work also introduces an approach to measure the amount as well as the relevance of silence in API-contracts. It bases on systematically constructed test cases. By constructing test cases systematically a set of hints to expected contents could be derived. The amount and relevance of silence are quantified by comparing these expectations with an actual contract. The introduced lexicon is evaluated in a case study and a laboratory experiment. Both evaluations show that there is much space to complete API-contracts which have been created with traditional approaches as javadoc.en
dc.language.isodede
dc.publisherStaats- und Universitätsbibliothek Hamburg Carl von Ossietzky
dc.rightshttp://purl.org/coar/access_right/c_abf2
dc.subjectApplication Programming Interfacede
dc.subjectAPI-Dokumentationde
dc.subjectAPI-Spezifikationde
dc.subjectSpezifikationde
dc.subjectVertragsmodellde
dc.subjectApplication Programming Interfaceen
dc.subjectAPI-Documentationen
dc.subjectAPI-Specificationen
dc.subjectDesign by Contracten
dc.subject.ddc004 Informatik
dc.titleVermeidung von Lücken in API-Verträgende
dc.typedoctoralThesis
dcterms.dateAccepted2014-09-30
dc.rights.ccNo license
dc.rights.rshttp://rightsstatements.org/vocab/InC/1.0/
dc.subject.bcl54.39 Systemarchitektur: Sonstiges
dc.subject.bcl54.52 Software engineering
dc.subject.gndAPI
dc.subject.gndSpezifikation
dc.subject.gndSchnittstelle
dc.type.casraiDissertation-
dc.type.dinidoctoralThesis-
dc.type.driverdoctoralThesis-
dc.type.statusinfo:eu-repo/semantics/publishedVersion
dc.type.thesisdoctoralThesis
tuhh.opus.id7022
tuhh.opus.datecreation2014-10-27
tuhh.type.opusDissertation-
thesis.grantor.departmentInformatik
thesis.grantor.placeHamburg
thesis.grantor.universityOrInstitutionUniversität Hamburg
dcterms.DCMITypeText-
tuhh.gvk.ppn810589796
dc.identifier.urnurn:nbn:de:gbv:18-70227
item.advisorGNDMenzel, Wolfgang (Prof. Dr.-Ing.)-
item.creatorGNDKrause, Jan Christian-
item.languageiso639-1other-
item.grantfulltextopen-
item.creatorOrcidKrause, Jan Christian-
item.fulltextWith Fulltext-
Enthalten in den Sammlungen:Elektronische Dissertationen und Habilitationen
Dateien zu dieser Ressource:
Datei Beschreibung GrößeFormat  
Dissertation.pdf2.89 MBAdobe PDFÖffnen/Anzeigen
Zur Kurzanzeige

Diese Publikation steht in elektronischer Form im Internet bereit und kann gelesen werden. Über den freien Zugang hinaus wurden durch die Urheberin / den Urheber keine weiteren Rechte eingeräumt. Nutzungshandlungen (wie zum Beispiel der Download, das Bearbeiten, das Weiterverbreiten) sind daher nur im Rahmen der gesetzlichen Erlaubnisse des Urheberrechtsgesetzes (UrhG) erlaubt. Dies gilt für die Publikation sowie für ihre einzelnen Bestandteile, soweit nichts Anderes ausgewiesen ist.

Info

Seitenansichten

276
Letzte Woche
Letzten Monat
geprüft am 26.09.2021

Download(s)

212
Letzte Woche
Letzten Monat
geprüft am 26.09.2021
Werkzeuge

Google ScholarTM

Prüfe