Institut für Informatik
Filtern
Erscheinungsjahr
Dokumenttyp
- Dissertation (29) (entfernen)
Sprache
- Englisch (29) (entfernen)
Schlagworte
- Software Engineering (3)
- Modellgetriebene Entwicklung (2)
- Semantic Web (2)
- AUTOSAR (1)
- Abduktion <Logik> (1)
- Ad-hoc-Netz (1)
- Adaptation (1)
- Algorithmische Geometrie (1)
- Anpassung (1)
- Architektur <Informatik> (1)
In dieser Dissertation wird eine Verfahrensweise für die formale Spezifikation und Verifikation von Benutzerschnittstellen unter Sicherheitsaspekten vorgestellt. Mit dieser Verfahrensweise können beweisbar sichere Benutzerschnittstellen realisiert werden. Die Arbeit besteht aus drei Teilen. Im ersten Teil wird eine Methodologie für die formale Beschreibung von Mensch-Maschine-Interaktion entwickelt. Im zweiten Teil werden gängige Computersicherheitskonzepte für die Mensch-Maschine-Interaktion angepasst und mit den im ersten Teil entwickelten Methoden formalisiert. Dabei wird ein generisches formales Modell von Mensch-Maschine-Interaktion erstellt. Im dritten Teil wird die Methodologie, die in den ersten beiden Teilen entwickelt wurde, an einem sicheren Email-Client als exemplarischen Anwendungsprogramm demonstriert.
Klassische Fahrerassistenzsysteme (FAS) wie beispielsweise der Spurassistent oder das weit verbreitete Elektronische Stabilitätsprogramm basieren auf statischen System- und Softwarearchitekturen. Dies bedeutet, dass weder die Anzahl oder Topologie der Steuergeräte noch das Vorhandensein oder die Funktionalität von Softwaremodulen Änderungen zur Laufzeit unterliegen. Es existieren allerdings zukünftige FAS, bei denen solche Veränderungen eintreten können. Hierzu gehören beispielsweise Assistenzsysteme für Fahrzeuge mit Anhänger, da deren Steuergeräte und Softwaremodule über beide Teile des Gespanns verteilt sind. Diese neue Herausforderung kann nicht durch Ansätze, die zum Stand der Technik gehören, bewältigt werden. Stattdessen muss ein neuartiges Verfahren für das Design von solch verteilten Fahrerassistenzsystemen entwickelt werden.
Der zentrale wissenschaftliche Beitrag dieser Arbeit liegt in der Entwicklung einer neuartigen Software- und Systemarchitektur für dynamisch veränderliche FAS am Beispiel der Assistenzsysteme für Fahrzeuge mit Anhänger. Diese Architektur muss in der Lage sein, Veränderungen in der Topologie eigenständig zu erkennen und darauf zu reagieren. Hierbei entscheidet das System, welcher Grad der Assistenz und welche Nutzerschnittstelle nach dem An- oder Abkoppeln eines Anhängers angeboten werden kann. Hierzu werden neben der verfügbaren Software und Hardware die ausführbaren Assistenzfunktionalitäten analysiert und eine entsprechende Re-Konfiguration durchgeführt. Eine solche Systemanpassung kann vorgenommen werden, indem man auf die Prinzipien der Service-orientierten Architektur zurückgreift. Hierbei wird alle vorhandene Funktionalität in abgeschlossene Einheiten, so genannte Services gegossen. Diese Services stellen ihre Funktionalität über klar definierte Schnittstellen zur Verfügung, deren Verhalten durch so genannte Contracts beschrieben wird. Größere Applikationen werden zur Laufzeit durch den Zusammenschluss von mehreren solcher Services gebildet und adaptiert.
Die Arbeit beschreibt die Forschung die geleistet wurde, um die oben genannten Ziele durch den Einsatz von Service-orientierten Architekturen im automotiven Umfeld zu erreichen. Hierbei wird dem hohen Grad an Verteilung, dem Wunsch nach Wiederverwendbarkeit sowie der Heterogenität der einzelnen Komponenten durch den Einsatz der Prinzipien einer SOA begegnet. Weiterhin führt das Service-orientierte System eine automatische Re-Konfiguration im Falle einer Systemänderung durch. Statt eines der vorhandenen SOA Frameworks an die Verhältnisse im automotiven Umfeld anzupassen werden die einzelnen in SOA enthaltenen Prinzipien auf die Problemstellung angepasst. Hierbei entsteht ein eigenständiges Framework namens "Service-oriented Driver Assistance" (SODA) welches die Vorteile einer SOA mit den Anforderungen, bewährten Methoden und Standards vereint. Im Rahmen dieser Arbeit werden verschiedene SOA Frameworks analysiert und miteinander vergleichen. Außerdem wird das SODA Framework sowie dessen Anpassungen bezüglich automotiver Systeme detailliert beschrieben. Hierzu zählt auch ein Referenzmodell, welches die Begrifflichkeiten und Konzepte einführt und zueinander in Beziehung setzt sowie eine Referenzarchitektur definiert. Einige der Module dieser Referenzarchitektur wie beispielsweise das Re-Konfigurations- und das Kommunikationsmodul werden sehr detailiert in eigenen Kapiteln beschrieben. Um die Kompatibilität des Frameworks sicherzustellen wird die Integration in einen bewährten Entwicklungsprozess sowie in den Architekturstandard AUTOSAR diskutiert. Abschließend wird der Aufbau eines Demonstrators und dessen Evaluation bezüglich der Leistungsfähigkeit und Effizienz des Frameworks beschrieben.
The goal of this PhD thesis is to investigate possibilities of using symbol elimination for solving problems over complex theories and analyze the applicability of such uniform approaches in different areas of application, such as verification, knowledge representation and graph theory. In the thesis we propose an approach to symbol elimination in complex theories that follows the general idea of combining hierarchical reasoning with symbol elimination in standard theories. We analyze how this general approach can be specialized and used in different areas of application.
In the verification of parametric systems it is important to prove that certain safety properties hold. This can be done by showing that a property is an inductive invariant of the system, i.e. it holds in the initial state of the system and is invariant under updates of the system. Sometimes this is not the case for the condition itself, but for a stronger condition it is. In this thesis we propose a method for goal-directed invariant strengthening.
In knowledge representation we often have to deal with huge ontologies. Combining two ontologies usually leads to new consequences, some of which may be false or undesired. We are interested in finding explanations for such unwanted consequences. For this we propose a method for computing interpolants in the description logics EL and EL⁺, based on a translation to the theory of semilattices with monotone operators and a certain form of interpolation in this theory.
In wireless network theory one often deals with classes of geometric graphs in which the existence or non-existence of an edge between two vertices in a graph relies on properties on their distances to other nodes. One possibility to prove properties of those graphs or to analyze relations between the graph classes is to prove or disprove that one graph class is contained in the other. In this thesis we propose a method for checking inclusions between geometric graph classes.
Die vorliegende Dissertation behandelt den Einsatz von Theorembeweise innerhalb der automatischen Fragebeantwortung (question answering - QA). QA-Systeme versuchen, natürlichsprachliche Fragen korrekt zu beantworten. Sie verwenden eine Vielzahl von Methoden aus der Computerlinguistik und der Wissensrepräsentation, um menschliche Sprache zu verarbeiten und die Antworten aus umfangreichen Wissensbasen zu beziehen. Diese Methoden sind allerdings meist syntaxbasiert und können kein implizites Wissen herleiten. Die Theorembeweiser der automatischen Deduktion dagegen können Folgerungsketten mit Millionen von Inferenzschritten durchführen. Die Integration eines Beweisers in ein QA-System eröffnet die Möglichkeit, aus den Fakten einer Wissensbasis neues Wissen herzuleiten und somit die Fragebeantwortung zu verbessern. Herausforderungen liegen in der Überwindung der gegensätzlichen Herangehensweisen von Fragebeantwortung und Deduktion: Während QA-Methoden normalerweise darauf abzielen, auch mit unvollständigen oder fehlerhaften Daten robust und schnell zu halbwegs annehmbaren Ergebnissen zu kommen, verwenden Theorembeweiser logische Kalküle zur Gewinnung exakter und beweisbarer Resultate. Letzterer Ansatz erweist sich sich aber als schwer vereinbar mit der Quantität und der Qualität der im QA-Bereich üblichen Wissensbestände.
Die Dissertation beschreibt Anpassungen von Theorembeweisern zur Überwindung dieser Hürden. Zentrales Beispiel ist der an der Universität Koblenz-Landau entwickelte Beweiser E-KRHyper, der im Rahmen dieser Dissertation in das QA-System LogAnswer integriert worden ist. Außerdem vorgestellt werden zusätzliche Erweiterungsmöglichkeiten auf der Implementierungs- und der Kalkülebene, die sich aus dem praktischen Einsatz bei der Fragebeantwortung ergeben haben, dabei aber generell für Theorembeweiser von Nutzen sein können. Über die reine Deduktionsverbesserung der QA hinausgehend beinhalten diese Erweiterungen auch die Anbindung externer Wissensquellen wie etwa Webdienste, mit denen der Beweiser während des Deduktionsvorgangs gezielt Wissenslücken schließen kann. Zudem ermöglicht dies die Nutzung externer Ontologien beispielsweise zur Abduktion. Evaluationsergebnisse aus eigenen Versuchsreihen und aus Wettbewerben demonstrieren die Effektivität der diskutierten Methoden.
Die modellgetriebene Softwareentwicklung beabsichtigt die Spezifikation von Softwaresystemen durch Modelle zu vereinfachen und die automatisierte Entwicklung zu verbessern. Die Modellierungssprachen und Werkzeuge, die zur Modellierung von Systemen und Anwendungsdomänen herangezogen werden, werden in modellbasierten technologischen Räumen zusammengefasst. Ontologiebasierte technologische Räume enthalten Ontologiesprachen und Technologien zum Entwurf, der Anfrage und dem Schlussfolgern von Wissen. Mit der Verbreitung des semantischen Webs werden Ontologien in der Entwicklung von Software zunehmend eingesetzt.
In dieser Arbeit werden zur Kombination von technologischen Räumen Brückentechnologien vorgestellt. Transformationsbrücken übersetzen Modelle, Abbildungsbrücken stellen Beziehungen zwischen Modellen verschiedener technologischer Räume her und Integrationsbrücken verschmelzen Räume zu neuen allumfassenden technologischen Räumen. API Brücken erschaffen Interoperabilität zwischen Werkzeugen. Diese Arbeit beschäftigt sich insbesondere mit der Kombination von modellbasierten und ontologiebasierten technologischen Räumen. Nach einem Vergleich zwischen Sprachen und Werkzeugen der einzelnen Räume wird die Integrationsbrücke herangezogen um einen neuen gemeinsamen technologischen Raum zu erstellen, der den hybriden Gebrauch von Sprachen und den interoperablen Einsatz von Werkzeugen ermöglicht. Die Syntax und Semantik von Modellierungssprachen kann mit Hilfe von Ontologiesprachen spezifiziert werden. Die Korrektheit von Modellen wird durch den Einsatz von Ontologietechnologien gewährleistet. Ontologiebasierte Modellierungssprachen erlauben den Nutzen von Anfrage- und Schlussfolgerungstechnologien. Sie sind darüber hinaus so flexibel um verschiedene Anforderungen von Softwareentwicklern zu erfüllen. Domänenspezifische Sprachen unterstützen neben der Spezifikation von Systemen auch die konzeptionelle Beschreibung von Domänen durch Modelle, die aus möglichen Laufzeitinstanzen und deren Typen bestehen. Integrierte Ontologiesprachen helfen eine formale Semantik für Domänenmodellierungssprachen zu definieren und Ontologietechnologien ermöglichen das Schlussfolgern über Typen und Instanzen.
Alle Ansätze in dieser Arbeit werden mit Hilfe eines Szenarios, in dem die Konfigurationen für Familien von Netzwerkgeräte modelliert werden, veranschaulicht. Ferner werden die Implementationen aller Brückentechnologien zur Kombination von technologischen Räumen und alle Werkzeuge für die ontologiebasierte Entwicklung von Modellierungssprachen illustriert.
In den letzten Jahren gibt es im Bereich Software Engineering ein steigendes Interesse an empirischen Studien. Solche Studien stützen sich häufig auf empirische Daten aus Corpora-Sammlungen von Software-Artefakten. Während es etablierte Formen der Durchführung solcher Studien gibt, wie z.B. Experimente, Fallstudien und Umfragen, geschieht die Vorbereitung der zugrunde liegenden Sammlung von Software-Artefakten in der Regel ad hoc.
In der vorliegenden Arbeit wird mittels einer Literaturrecherche gezeigt, wie häufig die Forschung im Bereich Software Engineering Software Corpora benutzt. Es wird ein Klassifikationsschema entwickelt, um Eigenschaften von Corpora zu beschreiben und zu diskutieren. Es wird auch erstmals eine Methode des Corpus (Re-)Engineering entwickelt und auf eine bestehende Sammlung von Java-Projekten angewendet.
Die Arbeit legt zwei umfassende empirische Studien vor, in denen eine umfangreiche und breit angelegte Analysenreihe zu den Sprachen Privacy Preferences (P3P) und objektorientierte Programmierschnittstellen (APIs) durchgeführt wird. Beide Studien stützen sich allein auf die vorliegenden Daten der Corpora und decken dadurch die tatsächliche Nutzung der Sprachen auf.
Modern Internet and Intranet techniques, such as Web services and virtualization, facilitate the distributed processing of data providing improved flexibility. The gain in flexibility also incurs disadvantages. Integrated workflows forward and distribute data between departments and across organizations. The data may be affected by privacy laws, contracts, or intellectual property rights. Under such circumstances of flexible cooperations between organizations, accounting for the processing of data and restricting actions performed on the data may be legally and contractually required. In the Internet and Intranet, monitoring mechanisms provide means for observing and auditing the processing of data, while policy languages constitute a mechanism for specifying restrictions and obligations.
In this thesis, we present our contributions to these fields by providing improvements for auditing and restricting the data processing in distributed environments. We define formal qualities of auditing methods used in distributed environments. Based on these qualities, we provide a novel monitoring solution supporting a data-centric view on the distributed data processing. We present a solution for provenance-aware policies and a formal specification of obligations offering a procedure to decide whether obligatory processing steps can be met in the future.
In Geschäftsbeziehungen, z. B. im internationalen Eisenbahnverkehr, können große Datenmengen zwischen den beteiligten Parteien ausgetauscht werden. Für den Austausch solcher Daten wird erwartet, dass das Risiko betrogen zu werden, z. B. durch den Erhalt gefälschter Daten, marginal ist, als auch angemessene Kosten sowie ein vorhersehbarer Gewinn. Da die ausgetauschten Daten für wichtige Geschäftsentscheidungen verwendet werden können, besteht für eine Partei ein hoher Anreiz, die Daten zu ihren Gunsten zu manipulieren. Um diese Art von Manipulation zu unterbinden existieren Mechanismen zur Sicherstellung der Integrität und Authentizität der Daten. In Kombination mit einem Protokoll für einen fairen Austausch kann sichergestellt werden, dass die Integrität und Authentizität dieser Daten auch über einen Austausch mit einer anderen Partei hinweg erhalten bleibt. Gleichzeitig stellt ein solches Protokoll sicher, dass der Austausch der Daten nur bei gleichzeitigem Austausch mit der vereinbarten Gegenleistung, z. B. einer Bezahlung erfolgt, aber auch, dass die Bezahlung nur erfolgt, wenn die Integrität und Authentizität der Daten wie vorher vereinbart, gegeben ist. Um jedoch Fairness garantieren zu können, muss ein Fair Exchange Protokoll eine vertrauenswürdige dritte Partei einbeziehen. Um Betrug durch eine einzelne zentralisierte Partei zu vermeiden, die als vertrauenswürdige dritte Partei agiert, schlägt die aktuelle Forschung vor, die vertrauenswürdige dritte Partei zu dezentralisieren, indem z. B. ein Distributed Ledger-basiertes Fair-Exchange Protokoll verwendet wird. Bei der Bewertung der Fairness eines solchen Austauschs vernachlässigen die aktuellen Ansätze jedoch die Kosten, die den Parteien entstehen, die den Fair Exchange durchführen. Dies kann zu einer Verletzung der skizzierten Erwartung angemessener Kosten führen, insbesondere wenn Distributed Ledger beteiligt sind, deren Benutzung in der Regel mit nicht-vernachlässigbaren Kosten verbunden ist. Darüber hinaus ist die Geschwindigkeit typischer Distributed-Ledger-basierter Fair Exchange-Protokolle begrenzt, was einer breiten Verwendung im Wege steht.
Um diese Herausforderungen zu überwinden, stellen wir in dieser Arbeit die Grundlage für eine Datenaustauschplattform vor, die einen vollständig dezentralisierten Fair Exchange mit angemessenen Kosten und Geschwindigkeit ermöglicht. Als theoretische Grundlage führen wir das Konzept der cost fairness ein, die die Kosten für die Fairnessbewertung berücksichtigt, indem verlangt wird, dass eine Partei, die dem Fair Exchange-Protokoll folgt, niemals einseitige Nachteile erleidet. Wir weisen nach, dass cost fairness nicht mit typischen öffentlichen Distributed Ledgers erreicht werden kann, sondern maßgeschneiderte Distributed Ledger-Instanzen erfordert, die in der Regel nicht vollständig dezentralisiert sind. Wir zeigen jedoch, dass die meisten einseitigen Kosten durch Angriffe einer unehrlichen Partei im Rahmen einer Grieving Attack verursacht werden können. Um einen Fair Exchange zu angemessenen Kosten und Geschwindigkeit zu ermöglichen, stellen wir FairSCE vor, ein Distributed Ledger-basiertes Fair Exchange-Protokoll, welches Distributed Ledger State Channels verwendet und einen Mechanismus zum Schutz vor Grieving Attacks enthält, wodurch die möglichen einseitigen Kosten auf ein Minimum reduziert werden. Auf der Grundlage unserer Evaluation von FairSCE sind die Worst Case-Kosten für den Datenaustausch selbst bei Vorhandensein von böswilligen Parteien bekannt, was eine Abschätzung des möglichen Nutzens und damit eine vorläufige Schätzung des wirtschaftlichen Nutzens ermöglicht. Um eine eindeutige Bewertung der korrekten übertragenen Daten zu ermöglichen und gleichzeitig sensible Teile der Daten zu maskieren, stellen wir außerdem einen Ansatz für das Hashing hierarchisch strukturierter Daten vor, mit dem die Integrität und Authentizität der übertragenen Daten sichergestellt werden kann.
Folksonomien sind Web 2.0 Plattformen, in denen Benutzer verschiedene Inhalte miteinander teilen können. Die Inhalte können mit Hilfe von Stichwörtern, den sogenannten Tags, kategorisiert und organisiert werden. Die verschiedenen Folksonomien unterstützen unterschiedliche Inhaltstypen wie zum Beispiel Webseiten (Delicious), Bilder (Flickr) oder Videos (YouTube). Aufgrund ihrer einfachen Benutzungsweise haben Folksonomien viele Millionen Benutzer. Die einfache Benutzungsweise führt aber auch zu einigen Problemen. Diese Doktorarbeit beschäftigt sich mit drei der wichtigsten Probleme und beschreibt Methoden, wie sie gelöst werden können. Das erste dieser Probleme tritt auf, wenn Benutzer die Folksonomien nach bestimmten Inhalten durchsuchen wollen. Häufig können dabei nicht alle relevanten Inhalte gefunden werden, da diesen relevante Stichwörter fehlen. Dementsprechend tritt das zweite Problem während der Vergabe von Stichwörtern auf. Manche Folksonomien, wie zum Beispiel Delicious, unterstützen ihre Benutzer dabei, indem sie ihnen mögliche Stichwörter empfehlen. Andere Folksonomien, wie zum Beispiel Flickr, bieten keine solche Unterstützung. Die Empfehlung von Stichwörtern hilft dem Benutzer dabei, Inhalte auf einfache Art und Weise mit den jeweils relevanten Stichwörtern zu versehen. Das dritte Problem besteht darin, dass weder Stichwörter noch Inhalte mit einer festen Semantik versehen sind und mehrdeutig sein können. Das Problem entsteht dadurch, dass die Benutzer die Stichwörter vollkommen frei rnverwenden können. Die automatische Identifizierung der Semantik von Stichwörtern und Inhalten hilft dabei, die dadurch entstehenden Probleme zu reduzieren. Diese Doktorarbeit stellt mehrere Methoden vor, wie verschiedene Quellen für semantische Informationen benutzt werden können, um die vorher genannten drei Probleme zu lösen. In dieser Doktorarbeit benutzen wir als Quellen Internetsuchmaschinen, soziale Netzwerke im Internet und die gemeinsamen Vorkommen von Stichwörtern in Folksonomien. Die Verwendung der verschiedenen Quellen reduziert den Aufwand bei der Erstellung von Systemen, die die vorher genannten Probleme lösen. Die vorgestellten Methoden wurden auf einem großen Datensatz evaluiert. Die erzielten Ergebnisse legen nahe, dass semantische Informationen bei der Lösung der Probleme helfen, die während der Suche von Inhalten, der Empfehlung von Stichwörtern als auch der automatischen Identifizierung der Semantik von Stichwörtern und Inhalten auftreten.
Die weltweite Vernetzung von semantischen Information schreitet stetig voran und erfährt mit der Linked Data Initiative immer mehr Aufmerksamkeit. Bei Linked Data werden verschiedene Datensätze aus unterschiedlichen Domänen und von diversen Anbietern in einem einheitlichen Format (RDF) zur Verfügung gestellt und miteinander verknüpft. Strukturell ist das schnell wachsende Linked Data Netzwerk sehr ähnlich zum klassischen World Wide Web mit seinen verlinkten HTML Seiten. Bei Linked Data handelt es sich jedoch um URI-referenzierte Entitäten, deren Eigenschaften und Links durch RDF-Triple ausgedrückt werden. Neben dem Dereferenzieren von URIs besteht mit SPARQL auch die Möglichkeit, ähnlich wie bei Datenbanken, komplexe algebraische Anfragen zu formulieren und über sogenannte SPARQL Endpoints auf einer Datenquelle auswerten zu lassen. Eine SPARQL Anfrage über mehrere Linked Data Quellen ist jedoch kompliziert und bedarf einer föderierten Infrastruktur in der mehrere verteilte Datenquellen integriert werden, so dass es nach außen wie eine einzige große Datenquelle erscheint. Die Föderation von Linked Data hat viele Ähnlichkeiten mit verteilten und föderierten Datenbanken. Es gibt aber wichtige Unterschiede, die eine direkte Adpation von bestehenden Datenbanktechnologien schwierig machen. Dazu gehört unter anderem die große Anzahl heterogener Datenquellen in der Linked Data Cloud, Beschränkungen von SPARQL Endpoints, und die teils starke Korrelation in den RDF Daten. Daher befasst sich die vorliegende Arbeit primär mit der Optimierung von verteilten SPARQL Anfragen auf föderierten RDF Datenquellen. Die Grundlage dafür ist SPLENDID, ein effizientes Optimierungverfahren für die Ausführung von verteilten SPARQL Anfragen in einer skalierbaren und flexiblen Linked Data Föderationsinfrastruktur. Zwei Aspekte sind dabei besonders wichtig: die automatische Auswahl von passenden Datenquellen für beliebige SPARQL Anfragen und die Berechnung des optimalen Ausführungsplans (Join Reihenfolge) basierend auf einem Kostenmodell. Die dafür erforderlichen statistischen Information werden mit Hilfe von VOID-basierten Datenquellenbeschreibungen zur Verfügung gestellt. Darüberhinaus wird auch des Management verteilter statistischer Daten untersucht und eine Benchmark-Methodologie