Benutzerzentrierte Entwicklung einer End-User-Programming-Schnittstelle für Sensormodule im Rahmen des Projekts "FUSION"

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

http://fusion-project.io/

End User Development (Lieberman et al, 2006, https://www.springer.com/de/book/9781402042201)

The State of the Art in End-User Software Engineering (Ko et al, 2011, http://doi.acm.org/10.1145/1922649.1922658)

David Ledo, Steven Houben, Jo Vermeulen, Nicolai Marquardt, Lora Oehlberg, and Saul Greenberg. 2018. Evaluation Strategies for HCI Toolkit Research. In Proceedings of the 2018 CHI Conference on Human Factors in Computing Systems (CHI '18). ACM, New York, NY, USA, Paper 36, 17 pages. DOI: https://doi.org/10.1145/3173574.3173610