Logo des Repositoriums
  • English
  • Deutsch
Anmelden
Keine TU-ID? Klicken Sie hier für mehr Informationen.
  1. Startseite
  2. Publikationen
  3. Publikationen der Technischen Universität Darmstadt
  4. Erstveröffentlichungen
  5. A Programming Paradigm for Reliable Applications in a Decentralized Setting
 
  • Details
2021
Erstveröffentlichung
Dissertation
Verlagsversion

A Programming Paradigm for Reliable Applications in a Decentralized Setting

File(s)
Download
Hauptpublikation
mogk-dissertation.pdf
CC BY-SA 4.0 International
Format: Adobe PDF
Size: 1.82 MB
TUDa URI
tuda/7374
URN
urn:nbn:de:tuda-tuprints-194035
DOI
10.26083/tuprints-00019403
Autor:innen
Mogk, Ragnar ORCID 0000-0003-4583-1791
Kurzbeschreibung (Abstract)

The use of applications has changed together with the underlying computing platform. The modern computer is no longer a big piece of office equipment that is booted to execute a single task producing a single output. Instead, we have many interconnected devices – smartphones, laptops, routers, Internet of Things gadgets, and even some venerable desktop computers we still use to get that heavy work done. Furthermore, ubiquitous connectivity with the Internet, and thus collaboration with other people and their set of devices has drastically changed how people expect applications to work.

For such distributed, interactive, and collaborative applications, we currently lack a declarative fault-tolerant programming paradigm with easy-to-reason high-level guarantees. We want to empower developers from organizations of all sizes to be able to create reliable applications that solve their users needs. Thus, the central question in this thesis is: How to automate fault tolerance for such applications?

To answer this question, we present a novel approach to automatic fault tolerance using a high-level programming paradigm. Our goal is to provide future developers with a paradigm that reduces the challenge posed by failures in interactive applications similar to how a garbage collector reduces the challenge of managing memory. To do so, our programming paradigm abstracts from the notion of changes in data, thus removing the need to handle failure cases differently and providing developers a single set of properties to always rely on.

Sprache
Englisch
Alternativtitel
Ein Programmierparadigma für zuverlässige Anwendungen in einem dezentralen Umfeld
Alternatives Abstract

Die Nutzung von Anwendungen hat sich zusammen mit der zugrunde liegenden Computerplattform verändert. Der moderne Computer ist nicht länger ein großes Stück Büroausstattung das gestartet wird, um eine einzelne Aufgabe auszuführen und eine einzelne Ausgabe zu produzieren. Stattdessen haben wir viele miteinander verbundene Geräte – Smartphones, Laptops, Router, Internet-der-Dinge-Gadgets und sogar einige altgediente Desktop-Computer, die wir immer noch verwenden, um umfangreiche Arbeiten zu erledigen. Darüber hinaus hat die allgegenwärtige Konnektivität mit dem Internet und damit die Zusammenarbeit mit anderen Menschen und deren Geräten die Erwartungen an die Funktionsweise von Anwendungen drastisch erweitert.

Für solche verteilten, interaktiven und kollaborativen Anwendungen fehlt uns derzeit ein deklaratives, fehlertolerantes Programmierparadigma mit einfach zu verstehenden Garantien. Wir wollen Entwicklern aus verschiedenen Organisationen die Möglichkeit geben, zuverlässige Anwendungen zu erstellen, die die Anforderungen ihrer Benutzer erfüllen. Die zentrale Frage in dieser Arbeit lautet daher: Wie kann man die Fehlertoleranz für solche Anwendungen automatisieren?

Um diese Frage zu beantworten, präsentieren wir einen neuartigen Ansatz zur automatischen Fehlertoleranz unter Verwendung eines Programmierparadigmas. Unser Ziel ist es, zukünftigen Entwicklern ein Paradigma an die Hand zu geben, das die Herausforderung von Fehlern in interaktiven Anwendungen reduziert, ähnlich wie ein Garbage Collector die Herausforderung der Speicherverwaltung reduziert. Um dies zu erreichen, abstrahiert unser Programmierparadigma wie sich Daten über die Zeit ändern. Dadurch entfällt die Notwendigkeit, Fehlerfälle unterschiedlich zu behandeln und Entwickler können sich immer auf einen festen Satz von Eigenschaften verlassen.

Fachbereich/-gebiet
20 Fachbereich Informatik > Softwaretechnik
DDC
000 Allgemeines, Informatik, Informationswissenschaft > 004 Informatik
Institution
Technische Universität Darmstadt
Ort
Darmstadt
Datum der mündlichen Prüfung
10.03.2021
Gutachter:innen
Mezini, Mira
Markl, Volker
Handelt es sich um eine kumulative Dissertation?
Nein
Name der Gradverleihenden Institution
Technische Universität Darmstadt
Ort der Gradverleihenden Institution
Darmstadt
PPN
488111064

  • TUprints Leitlinien
  • Cookie-Einstellungen
  • Impressum
  • Datenschutzbestimmungen
  • Webseitenanalyse
Diese Webseite wird von der Universitäts- und Landesbibliothek Darmstadt (ULB) betrieben.