Entwicklung und Evaluation einer Dateisystem-Metapher für das Internet der Dinge

Hintergrund

Viele Internet of Things (IoT) Plattformen bieten REST oder Programmierschnittstellen an („AWS IoT Core“, 2019; „Azure IoT“, 2019; „Cloud IoT Core“, 2019; „ThingWorx IIoT“, 2019; „Watson IoT Platform“, 2019). Anwender dieser Plattformen benötigen daher fundamentale Kenntnisse der Programmiersprache, in welcher die Schnittstellen angeboten werden oder die Fähigkeit REST-Anbindungen zu entwickeln. Außerdem müssen sie sich einarbeiten und die Architektur dieser Systeme aufwändig einrichten. Schließlich sind die Systeme weder kompatibel zueinander, noch benutzen sie einheitliche Standards, wie zum Beispiel eine einheitliche REST-Schnittstelle. Diese fehlende Interoperabilität wird von zwei verschiedenen Quellen ebenso als eine nötige Verbesserung gesehen (Ray, 2016; Zdravković et al., 2016). Eine einfache und effiziente Struktur mit Hilfe eines gemeinsamen Nenners dieser Plattformen könnte das Dateisystem sein. Ein solches System erlaubt es mit etablierten Funktionen wie dem Ordner- und Dateizugriff zu arbeiten. Dies hat zur Folge, dass bekannte Operationen des Betriebssystems eingesetzt werden können, um auf das IoT Netzwerk zuzugreifen. So wird nicht nur die Nutzung für den Endanwender erleichtert, sondern auch die Schnittstellenanbindung durch Entwickler.

Zielsetzung der Arbeit

Ziel der Arbeit ist, aufbauend auf existierenden Vorarbeiten, ein hierarchisches Dateisystem zu entwickeln, über das Endnutzer und Entwickler netzwerktransparenten und intuitiven Zugriff auf Sensoren und Aktuatoren im IoT haben. Dabei soll der Zugriff über verschiedene, semantisch sinnvolle Pfade geschehen können. Die Entwicklung soll nutzerzentriert geschehen, aber auch neue Nutzungsmöglichkeiten antizipieren, die nicht explizit von Nutzern geäußert wurden. In formativen und summativen Evaluationen soll sichergestellt werden, dass das System für Endnutzer Vorteile gegenüber existierenden Ansätzen bietet. Grundlegende Anforderungen des Software Engineerings (z.B. Sicherheit, Datenschutz) müssen berücksichtigt werden. Beispielhafte Zielgruppen sind Endnutzer, Power-User und Software-Entwickler aus dem Hobby-Bereich, Facility Management, Naturwissenschaftler (Geologie, Biologie), Fertigungs-IT.

Konkrete Aufgaben

Literaturrecherche und Erstellen eines Literaturüberblicks (2 Wochen)

Einarbeiten in PyFUSE (1-2 Wochen), kurze Einführung geben

Einarbeiten in FUSION (1-2 Wochen)

Min. zwei Fokusgruppen zur Anforderungserhebung (2 Wochen)

Entwicklung eines erweiterbaren FUSE-basierten Dateisystems (6-8 Wochen?)

Entwicklung einer featuregleichen REST-API. (optional)

Entwicklung von Berichtsfunktionen/Translators zu Excel, … (2 Wochen)

Qualitative Evaluation der Erlernbarkeit verglichen mit traditionellen APIs (2 Wochen)

Quantitative vergleichende Evaluation der Produktivität verglichen mit traditionellen APIs (3 Wochen)

Schreiben einer Ausarbeitung (3-4 Wochen)

Erwartete Vorkenntnisse

Grundkenntnisse IoT, Netzwerke

Grundkenntnisse Python

Weiterführende Quellen

iotfs (abandoned)

One-wire filesystem

9P protocol)

Wimmer (2018) Files as Directories

Quellen

AWS IoT Core. (2019, Juni 13). Abgerufen 13. Juni 2019, von Amazon Web Services, Inc. website: https://aws.amazon.com/de/iot-core/

Azure IoT. (2019, Juni 7). Abgerufen 7. Juni 2019, von https://azure.microsoft.com/de-de/overview/iot/

Cloud IoT Core. (2019, Juni 7). Abgerufen 7. Juni 2019, von Google Cloud website: https://cloud.google.com/iot-core/?hl=de

Ray, P. P. (2016). A survey of IoT cloud platforms. Future Computing and Informatics Journal, 1(1), 35–46. https://doi.org/10.1016/j.fcij.2017.02.001

ThingWorx IIoT. (2019, Juni 7). Abgerufen 7. Juni 2019, von https://www.ptc.com/de/products/iiot/thingworx-platform

Watson IoT Platform. (2019, Juni 7). Abgerufen 7. Juni 2019, von https://www.ibm.com/cloud/watson-iot-platform

Zdravković, M., Trajanovic, M., Sarraipa, J., Jardim-Gonçalves, R., Lezoche, M., Aubry, A., & Panetto, H. (2016, Februar 28). Survey of Internet-of-Things platforms.