In dieser Arbeit ist das Ziel, ausgewählte Push Technologien Implementierungen anhand einer selbst entwickelten mHealth App auf Zuverlässigkeit, Verfügbarkeit und Skalierbarkeit zu untersuchen. Es wird mit einer Auswahl von Push Technologien wie Remote Notifications mit FCM, HTTP Long Polling und einer eigenen offenen mobile notification server (MSN) Lösung im Vergleich zu Local Notifications diskutiert, welche Push Technologie unter den Aspekten der Skalierbarkeit und Zuverlässigkeit des Dienstes und Verfügbarkeit der Push Nachrichten die bestgeeignete Push Technologie im App Kontext ist. Der jeweilige App Kontext und die Diskussion der am besten geeigneten Push Lösung werden mit einer selbst implementierten Motivationsapp unterstützt.
Um zur Forschungsfrage der geeigneten Push Technologie eine Antwort zu geben, wurde mit Hilfe der App die Zuverlässigkeit der Push Technologien getestet. Skalierbarkeit und Verfügbarkeit der jeweiligen Push Technologien wurde außerdem mit Hilfe dieser App bewertet.
Die Vorteile und Nachteile im gegenseitigen Vergleich der Push Technologien haben gezeigt, dass lokale Push Lösungen unter den gegebenen Qualitätsanforderungen am besten im App Kontext geeignet sind. Der Vergleich und die Diskussion zur bestgeeigneten Push Lösung haben allgemeingültige Eigenschaften, Vor- und Nachteile der jeweiligen Push Technologien deutlich gemacht, so dass lokale Push Lösungen unter diesen Qualitätspunkten zur Umsetzung eines App-Benachrichtungsdienstes mit Push Notifications empfehlenswert sind.
Auf einen Blick
- Note: 1,0
- Eigene Reminder-App in vier Varianten auf vier Emulatoren getestet
- Eigenen offenen mobilen Benachrichtigungsserver PMNS entwickelt
- Testablauf berücksichtigt aktive Geräte und den Android-Doze-Modus
- 6 Abbildungen und 7 Tabellen
Inhaltsverzeichnis
Abstract
1 Einleitung
2 Mobile Health App Reminder
3 Grundlagen
3.1 HTTP Long Polling
3.2 Push Notifications
3.2.1 Local Push Notifications
3.2.2 Remote Push Notifications
4 Entwurf
4.1 Local Push Notifications
4.2 Remote Push Notifications
4.2.1 HTTP Long Polling
4.2.2 FCM
4.2.3 PMNS
5 Methodik
5.1 Vergleichsmerkmale und Messung
5.1.1 Zuverlässigkeit
5.1.2 Verfügbarkeit
5.1.3 Skalierbarkeit
5.2 Testung der Zuverlässigkeit
6 Ergebnisse
6.1 Tabellarische Auswertung
6.2 Quantitative und Qualitative Analyse
6.2.1 Local Push Variante
6.2.1.1 Mittlere Verzögerungszeit
6.2.1.2 Auffälligkeiten
6.2.1.3 Begründung in der Implementierung
6.2.2 Remote FCM Variante
6.2.2.1 Mittlere Verzögerungszeit
6.2.2.2 Auffälligkeiten
6.2.2.3 Begründung in der Implementierung
6.2.3 Remote Push Variante mit PMNS
6.2.3.1 Mittlere Verzögerungszeit
6.2.3.2 Auffälligkeiten
6.2.3.3 Begründung in der Implementierung
6.2.4 HTTP Long Polling
6.2.4.1 Mittlere Verzögerungszeit
6.2.4.2 Auffälligkeiten
6.2.4.3 Begründung in der Implementierung
7 Diskussion
7.1 Zuverlässigkeit
7.2 Skalierbarkeit
7.3 Verfügbarkeit
7.4 Bestgeeignete Push Technologie für die Reminder App
8 Zusammenfassung und Fazit
Zielsetzung und Themen
Die Arbeit untersucht, welche Benachrichtigungstechnologie sich für eine mobile Gesundheitsanwendung eignet. Dazu entwickelt der Autor die Erinnerungsanwendung Reminder in mehreren Varianten und vergleicht deren Zuverlässigkeit, Verfügbarkeit und Skalierbarkeit.
- Lokale und servergestützte Benachrichtigungen
- HTTP Long Polling und Firebase Cloud Messaging
- Entwurf eines eigenen mobilen Benachrichtigungsservers
- Architektur und Funktionen der Erinnerungsanwendung
- Tests unter verschiedenen Gerätezuständen
- Verzögerungen, Ausfälle und Skalierungsmöglichkeiten
Auszug aus dem Buch
3.1 HTTP Long Polling
HTTP Long Polling (kurz: Long Polling) wird im RFC Beitrag 6202 [14], das vom Internet Engineering Task Force, kurz IETF veröffentlicht wurde, definiert. Die Publikation dient, wie im Text ausdrücklich betont, lediglich dem Zweck der Information und erhebt keinen Anspruch auf Standardisierung von HTTP Long Polling oder HTTP Streaming.
In dieser Arbeit wird der Inhalt in diesem RFC Beitrag als Referenz und Grundlage zur Beschreibung, zur Diskussion und zur Implementierung der Long Polling Push Technik verwendet und in diesem Abschnitt näher erklärt.
Die Autoren räumen ein, dass das Anwendungsprotokoll HTTP für Server Push Eigenschaften ursprünglich nicht vorgesehen war, zeigen jedoch auch die Nachteile von Short Polling bzw. von klassischem Polling wie z.B. Latenzen, Bandbreitenverschwendung, usw. auf, welche bei der Entstehung des Server Push Features offensichtlich eine Rolle spielten.
Die Besonderheit von Long Polling sei, dass die Verbindung eines HTTP Requests offen gehalten werde und der Server erst eine Antwort an den Client sende, falls ein Event eingetroffen sei. Beim klassischen HTTP Polling Mechanismus würde der Server im Fall eines ausstehenden Events sofort eine leere HTTP Antwort zurückschicken und würde die Verbindung anschließend schließen. Durch das Offenhalten der Verbindung bis zum Eintreffen eines Events wirke die Client-Server Kommunikation nach Außen wie ein Server Push Verhalten, obwohl der Client den Server wie beim klassischen Polling mit HTTP Requests für Updates anfragen müsse.
Der RFC Beitrag lässt einen gewissen Implementierungsspielraum offen. Man könne z.B. selber entscheiden, ob man persistente HTTP Verbindungen benutze, um mehrere Requests über diesen abzuwickeln und so den Initialisierungsaufwand beim erneuten Verbinden für jede einzelne Anfrage zu reduzieren. Auch von einem möglichen Timer Einsatz sowohl client- als auch serverseitig sei die Rede. Abbildung 3.1 fasst alle Schritte eines HTTP Long Polling Lebenszykluses zusammen. Zur Erstellung wurde der RFC 6202 Beitrag [14] als Grundlage herangezogen.
Zusammenfassung der Kapitel
1 Einleitung: Die Arbeit führt in die Auswahl mobiler Benachrichtigungstechnologien ein und erläutert Fragestellung und Vorgehen.
2 Mobile Health App Reminder: Dieses Kapitel stellt die entwickelte Gesundheitsanwendung, ihre Zielgruppe und ihre Erinnerungsfunktionen vor.
3 Grundlagen: Es erläutert das Push-Modell, HTTP Long Polling sowie lokale und servergestützte Benachrichtigungen.
4 Entwurf: Die Softwarearchitektur und die Implementierungsentscheidungen für die untersuchten Benachrichtigungsvarianten werden beschrieben.
5 Methodik: Das Kapitel definiert die Vergleichsmerkmale und beschreibt den Testaufbau mit Emulatoren und unterschiedlichen Gerätezuständen.
6 Ergebnisse: Die Testergebnisse werden tabellarisch dargestellt sowie hinsichtlich Verzögerungen, Auffälligkeiten und Implementierung analysiert.
7 Diskussion: Die Technologien werden hinsichtlich Zuverlässigkeit, Skalierbarkeit und Verfügbarkeit verglichen und im Anwendungskontext bewertet.
8 Zusammenfassung und Fazit: Das Schlusskapitel bündelt Vorgehen und Erkenntnisse und nennt Ansatzpunkte für weitere Untersuchungen.
Schlüsselwörter
Mobile Gesundheit, Gesundheitsanwendung, Erinnerungsanwendung, Push-Benachrichtigung, lokale Benachrichtigung, servergestützte Benachrichtigung, HTTP Long Polling, Firebase Cloud Messaging, Benachrichtigungsserver, Android, Doze-Modus, Zuverlässigkeit, Verfügbarkeit, Skalierbarkeit
Häufig gestellte Fragen
Worum geht es in der Arbeit?
Die Arbeit vergleicht Benachrichtigungstechnologien anhand einer eigens entwickelten mobilen Gesundheitsanwendung.
Welche Themen stehen im Mittelpunkt?
Im Mittelpunkt stehen lokale und servergestützte Benachrichtigungen, ihre Softwarearchitektur sowie Zuverlässigkeit, Verfügbarkeit und Skalierbarkeit.
Welche Frage soll beantwortet werden?
Untersucht wird, welche der ausgewählten Technologien unter den betrachteten Qualitätsmerkmalen für die Anwendung Reminder am besten geeignet ist.
Welche wissenschaftliche Methode wird verwendet?
Der Autor entwickelt mehrere Anwendungsversionen, testet deren Benachrichtigungsverhalten auf Android-Emulatoren und wertet die Ergebnisse quantitativ und qualitativ aus. Verfügbarkeit und Skalierbarkeit werden anhand der Anwendung und ihrer Architektur diskutiert.
Was behandelt der Hauptteil?
Der Hauptteil beschreibt technische Grundlagen, Softwareentwurf, Testaufbau und Ergebnisse und vergleicht anschließend die untersuchten Lösungen.
Welche Schlüsselbegriffe kennzeichnen die Arbeit?
Dazu gehören mobile Gesundheit, Push-Benachrichtigungen, HTTP Long Polling, Firebase Cloud Messaging, Doze-Modus, Zuverlässigkeit, Verfügbarkeit und Skalierbarkeit.
Woran erinnert die Anwendung Reminder?
Sie unterstützt Erinnerungen an Medikamenteneinnahmen, Arzttermine, Blutdruckmessungen und das Trinken von Wasser.
Welche Rolle spielt der Doze-Modus bei den Tests?
Der energiesparende Gerätezustand wird berücksichtigt, weil er den Netzwerkzugang und zeitgesteuerte Vorgänge beeinflussen kann. Die Tests unterscheiden aktive und inaktive Zustände mit beziehungsweise ohne erzwungenen Doze-Modus.
Welche Benachrichtigungslösungen werden verglichen?
Verglichen werden lokale Benachrichtigungen, Firebase Cloud Messaging, HTTP Long Polling und ein eigener mobiler Benachrichtigungsserver.
- Quote paper
- Salih Sakar (Author), 2021, Entwicklung einer mHealth-App zum Vergleich moderner Benachrichtigungstechniken, Munich, GRIN Verlag, https://www.grin.com/document/1294423