Reactive Bluetooth Low Energy Framework for iOS

13 Mar 2015 , first release: 13 Oct 2014

Meta

Thesis

Bluetooth Low Energy wurde bereits vor mehreren Jahren vorgestellt und standardisiert, findet aber erst allmählich eine breitere Aufmerksamkeit. Apples iBeacons Technologie trägt dazu sicherlich ihren Teil bei. Ebenso wie ein verstärkt festzustellendes Interesse an Themenfeldern wie dem Internet der Dinge oder bspw. Smart Home.

Technologien wie iBeacon beschränken sich aber primär noch auf die Indoor Standortbestimmung. Um die Bluetooth Low Energy Technologie darüber hinausgehend sinnvoll innerhalb des iOS Systems ausschöpfen zu können, wäre ein Framework sinnvoll, dass wiederkehrende Bluetooth Problemstellungen (wie bspw. Verbindungsmanagement und Datenübertragung) löst und mittels einer komfortablen API zugreifbar machen würde.

Ziel dieser Arbeit ist ein solches Framework zu entwickeln, dass die beiden Bluetooth LE Betriebsarten (Central und Periphal Modul) unterstützt. Das Framework soll ereignisbasiert sein und wenn möglich dem Funktional-Reaktiven-Programmierparadigma entsprechen. Sinnvolle Ereignisse (bspw. Statusänderungen, Entfernungsänderungen, Vorhandensein von UUIDs) sollen im Rahmen einer Anforderungsanalyse abgeleitet und definiert werden.

Die Arbeit beinhaltet einen Nachweis der Machbarkeit anhand zweier Beispielimplementierungen für den Einsatz als Central und als Peripheral Modul.

Hierzu müssen im Detail folgende Teilaufgaben bearbeitet und dokumentiert (Bachelorarbeit) werden:

  • Analyse des Problemraums und durchführen einer Anforderungsanalyse zur Ableitung sinnvoller Ereignisarten, Datenaustauscharten und -formaten, Interaktionsprotokollen für möglichst vielseitige ereignisbasierte Anwendungsfälle
  • Entwicklung einer Architektur für ein ereignisbasiertes Framework
  • Entwicklung einer geeigneten Evaluations- und Nachweisstrategie (QS)
  • Implementierung inkl. Test/Nachweis des Frameworks anhand zweier Anwendungsfälle
    • Einsatz als Central Modul: Erstellung einer Mobile Applikation, die mittels des Frameworks auf Ereignisse (z.B. einem Feueralarm) von einem Bluetooth Sender (z.B. einen Feuermelder) reagiert (z.B. eine Notruf SMS an die Feuerwehr vorschlägt).
    • Einsatz als Peripheral Modul: Erstellung einer Applikation, die mittels des Frameworks Ereignisse (z.B. einen Feueralarm) und ergänzende Daten (bspw. einen Fluchtplan) versenden kann.
  • Begleitende Dokumentation der oben angegebenen Schritte, Designentscheidungen und Ergebnisse (Bachelorarbeit)