Entwicklung und Evaluation einer End-User-Programming-Schnittstelle für Sensornetzwerke im Rahmen des Projekts FUSION

Thema:
Entwicklung und Evaluation einer End-User-Programming-Schnittstelle für Sensornetzwerke im Rahmen des Projekts FUSION
Art:
MA
BetreuerIn:
Andreas Gschossmann (OTH) / Raphael Wimmer
BearbeiterIn:
Andreas Schmid
ZweitgutachterIn:
N.N.
Status:
abgeschlossen
Stichworte:
End User Development, Software Engineering, Implementierung, Sensorik, Internet of Things
angelegt:
2018-06-07
Beginn:
2018-12-01
Anmeldung:
2018-12-01
Antrittsvortrag:
2018-06-18
Abschlussvortrag:
2019-05-13
Textlizenz:
Unbekannt
Codelizenz:
Unbekannt

Fertige Arbeit

Zusammenfassung:

Sensornetzwerke sind ein wichtiges Werkzeug um Daten über die Umwelt zu sammeln, jedoch müssen sie oft an einen bestimmten Anwendungsfall angepasst werden, wofür fortgeschrittene Kenntnisse in der Programmierung vonnöten sind. Da Sensornetzwerke häufig in der Ökologie, der Geologie oder für die Heimautomatisierung eingesetzt werden, haben viele ihrer AnwenderInnen nicht die dafür benötigten Programmierkenntnisse. Aus diesem Grund wurde in dieser Arbeit ein Sensornetzwerk mit einer dazugehörigen Programmierschnittstelle erstellt, die sich durch starke Abstrahierung von technischer Komplexität speziell an AnwenderInnen mit geringen Programmierkenntnissen richtet. Anforderungen an die Schnittstelle wurden durch eine ausführliche Literaturrecherche und einer Fokusgruppenstudie erhoben. Nach der Implementierung wurde die Benutzbarkeit der Programmierschnittstelle in einer Nutzerstudie evaluiert und mit einem ähnlichen System verglichen. Das Sensornetzwerk wurde in Feldexperimenten auf seine praxistauglichkeit untersucht.

Volltext: https://epub.uni-regensburg.de/40502/

Quellcode: https://github.com/A-Schmid/FUSION_EUP

Hintergrund

Viele Forschungsgebiete wie Biologie, Medizin und Physik verwenden Sensoren um Messdaten zu erheben. Auch im Bereich des Smart Home werden Sensoren und Aktoren eingesetzt, um Vorgänge im Haus zu automatisieren. Durch das Arduino-Projekt wurde für interessierte Laien eine Plattform geschaffen, mit der Elektronikprojekte einfach umgesetzt werden können. Nichtsdestotrotz erfordert auch die Arbeit mit dem Arduino, gerade für komplexere Komponenten, häufig das lesen von Datenblättern und die Kommunikation über serielle Kommunikationsprotokolle, wofür ein Grundverständnis von Elektronik und Digitaltechnik vonnöten ist. Existierende Sensorik- und IoT-Frameworks zielen oft entweder auf fortgeschrittene Nutzer ab oder sind sehr beschränkt in der Flexibilität. Beim Open-Source-Projekt „FUSION“ des Sensorikapplikationszentrums der OTH Regensburg (SappZ) handelt es sich um ein Framework, mit dem Sensorplattformen nach einem modularen Prinzip erstellt werden können (vgl. http://fusion-project.io/). Die Sensormodule liegen als Blackbox vor, die über ein gemeinsames Protokoll drahtlos mit einem zentralen Gateway kommunizieren. Dort können die Daten verarbeitet und Aktoren angesteuert werden.

Zielsetzung der Arbeit

Im Rahmen dieser Arbeit soll eine Programmierschnittstelle (API) geschaffen werden, über die Sensormodule ausgelesen, Daten verarbeitet und Aktormodule angesteuert werden können. Außerdem sollen externe Inputs (wie Daten aus dem Internet) und Outputs (zB das Senden von E-Mails), sowie Programmbibliotheken einfach eingebunden werden können. Da die Zielgruppe der FUSION-Plattform über Programmierer hinausgeht, sollen auch technikaffine Nutzer mit wenig bis gar keiner Programmiererfahrung die Programmierschnittstelle nutzen können. Dazu sollen in einem benutzerzentrierten Prozess vor und während der Implementierung die Anforderungen der Nutzer an die Schnittstelle, sowie deren bevorzugter Weg, die Schnittstelle zu bedienen, erhoben werden. Auf Basis dieser Erkenntnisse soll die Programmierschnittstelle implementiert und am Ende durch eine Nutzerstudie evaluiert werden.

Als Ergebnisse sind geplant:

  • ein Überblick über Bedürfnisse und Ziele von Endnutzern bei der Entwicklung von IoT-Anwendungen
  • eine Referenzimplementierung einer benutzerfreundlichen Programmierschnittstelle
  • eine Sammlung von Empfehlungen zum Design von Programmierschnittstellen für End-User-Programming

Konkrete Aufgaben

  • Einarbeitung in die bestehende Architektur des FUSION-Projekts (vor Beginn der Arbeit)
  • Vorstudie: Fokusgruppen und Experteninterviews zur Anforderungsanalyse (2 Wochen)
  • Skizzieren eines ersten Prototyps für die Programmierschnittstelle und Evaluierung dessen durch Experteninterviews (2 Wochen)
  • Implementierung der Programmierschnittstelle (8 Wochen)
  • Evaluierung der Programmierschnittstelle durch Nutzerstudien (Hands-on Tasks, ggf. Workshop) (4 Wochen)
  • Redesign der Schnittstelle auf Basis der Ergebnisse der Nutzerstudien (parallel)
  • Schriftliche Ausarbeitung der Masterarbeit (4 Wochen)

Erwartete Vorkenntnisse

Keine

Weiterführende Quellen