scieee Science in your language
[en] (orig)
Universität Ulm | 89069 Ulm | Germany Fakultät für
Ingenieurwissenschaften,
Informatik und
Psychologie
Institut für Datenbanken
und Informationssysteme
Entwicklung einer mHealth-App zur
EMA-gestützten Unterstützung hörge-
schädigter Patienten
Bachelorarbeit an der Universität Ulm
Vorgelegt von:
Kevin Marquard
Gutachter:
Prof. Dr. Manfred Reichert
Betreuer:
Prof. Dr. Rüdiger Pryss
2019
Fassung 19. Dezember 2019
c
2019 Kevin Marquard
This work is licensed under the Creative Commons. Attribution-NonCommercial-ShareAlike 3.0
License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/de/
or send a letter to Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California,
94105, USA.
Satz: PDF-L
A
TEX2ε
Kurzfassung
In Deutschland sind in etwa zehn Millionen Menschen von einer Hörschädigung betroffen.
In allen Altersgruppen gibt es Betroffene, da eine Schädigung des Gehörs durch vielerlei
Ursachen ausgelöst werden kann. Bei manchen nimmt das Hörvermögen im Laufe der
Jahre ab und wiederum bei anderen kann zu laute Musik bereits in jungen Jahren der
Auslöser sein. Je nach Art der Schädigung ist es bei einer rechtzeitigen Erkennung
möglich, diese zu behandeln, so dass ein Betroffener wieder sein volles Hörvermögen
erlangen kann.
Diese Arbeit beschäftigt sich mit der Entwicklung einer mobilen iOS Anwendung im
Bereich der Hörschädigung. Als Hauptfunktion stellt diese Betroffenen einen Fragebogen
zur Verfügung, der die individuellen Schwankungen des Hörvermögens misst. Die
gewonnenen Daten können für weitere Forschungen herangenommen werden, um
neue Erkenntnisse im Bezug auf die Ursachen und Wirkungen einer Hörschädigung
zu erlangen. Des Weiteren kann über die App an speziellen Studien teilgenommen
werden. Die Anwendung bieten den Vorteil, eine breitere Masse an betroffenen Patienten
erreichen zu können. Außerdem gelangt man über den elektronischen Fragebogen
sowohl leichter als auch schneller an forschungsrelevante Daten.
iii
Danksagung
An dieser Stelle möchte ich mich recht herzlich bei all denjenigen bedanken, die mich
während der Anfertigung dieser Arbeit stets unterstützt und motiviert haben.
Zunächst einmal möchte ich mich bei Herrn
Prof. Dr. Manfred Reichert
für die Ge-
nehmigung sowie Begutachtung dieser Arbeit bedanken. Ein großes Dankeschön geht
an Herrn
Prof. Dr. Rüdiger Pryss
für seine Begutachtung sowie ständige Betreuung der
Arbeit und der Unterstützung bei der Themenwahl.
Außerdem gilt mein Dank
Selda Karakaya
und
Tolga Bas
. Zum Ersten für das sorgfältige
Korrekturlesen dieser Abschlussarbeit und zum Zweiten für die ständige Unterstützung
während unseres gemeinsamen Studiums. Zusätzlich bedanke ich mich bei
Tolga
für
Erstellung des Logos der App.
Ebenfalls möchte ich mich herzlichst bei
meiner Partnerin
für ihre Geduld und Un-
terstützung während meines Studiums bedanken.
Abschließend bedanke ich mich aus tiefstem Herzen bei
meinen Eltern
, die mir durch
ihren bedingungslosen Rückhalt das Studium erst ermöglicht haben. Sie standen stets
voller Geduld und Verständnis an meiner Seite und waren dadurch eine sehr große
Unterstützung für mich.
Danke.
v
Inhaltsverzeichnis
1 Einleitung 1
1.1 Problemstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Zielsetzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 Struktur der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2 Grundlagen 3
2.1 Medizinische Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.1 Hörschädigung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.2 Ursachen einer Hörschädigung . . . . . . . . . . . . . . . . . . . . 4
2.1.3 Arten einer Hörschädigung . . . . . . . . . . . . . . . . . . . . . . 4
2.1.4 Auswirkungen auf den Hörgeschädigten . . . . . . . . . . . . . . . 5
2.1.5 Therapiemöglichkeiten . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 Technische Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2.1 Mobile Applikationen . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2.2 Betriebssystem iOS . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3 Anforderungsanalyse 9
3.1 Funktionale Anforderungen . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.2 Nicht-funktionale Anforderungen . . . . . . . . . . . . . . . . . . . . . . . 11
4 Architektur 13
4.1 Übersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.2 Handhabung der App . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.3 Architektur der App . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5 Vorstellung TrackYourHearing 17
5.1 Anmeldebildschirm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.1.1 Anmeldung des Benutzers . . . . . . . . . . . . . . . . . . . . . . 18
5.1.2 Passwort vergessen . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.1.3 Registrierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
vii
Inhaltsverzeichnis
5.2 Hauptmenü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
5.2.1 Fragebogen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.2.2 Studien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.2.3 Statistik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.2.4 Profil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.2.5 Einstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.2.6 Abmeldung des Benutzers . . . . . . . . . . . . . . . . . . . . . . 29
6 Implementierung 31
6.1 Entwicklungsumgebung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
6.1.1 Xcode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
6.1.2 Swift . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
6.2 Coding Convention . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
6.3 API Anbindung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
6.4 Dynamische Erstellung des Fragebogen . . . . . . . . . . . . . . . . . . . 33
6.5 Benachrichtigungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
7 Anforderungsabgleich 35
7.1 Funktionale Anforderungen . . . . . . . . . . . . . . . . . . . . . . . . . . 35
7.2 Nicht-Funktionale Anforderungen . . . . . . . . . . . . . . . . . . . . . . . 38
8 Fazit 39
8.1 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
8.2 Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
viii
1
Einleitung
1.1 Problemstellung
Einer der wichtigsten Sinne des Menschen ist der Hörsinn. Deshalb ist es umso wichtiger
ein gesundes Hörvermögen zu besitzen. In Deutschland leiden laut Statistiken etwa
12,2% der Bevölkerung an einer Hörschädigung. Bei circa 83 Millionen Einwohnern
entspricht dies einer Anzahl von etwa zehn Millionen Betroffenen, alleine in Deutschland.
Es sind alle Altersschichten hiervon betroffen. Eine solche Hörschädigung kann Betroffe-
nen vor allerlei Probleme im Alltag stellen, da zum Beispiel die Konzentrationsfähigkeit
und Lernfähigkeit stark davon beeinflusst werden können. Des Weiteren kann es sogar
in Extremfällen soweit gehen, dass sich betroffene Menschen völlig von ihrem sozialen
Umfeld isolieren, da sie nicht mehr in der Lage sind alles zu verstehen und eine gewisse
Scham entstehen kann, ständig nachfragen zu müssen. Es ist wichtig, schon frühzeitig
eine Schädigung des Gehörs festzustellen, um somit eine rechtzeitige Behandlung
einleiten zu können. [1] [2] [3] [4]
1.2 Zielsetzung
Die Bedeutung medizinischer Apps nimmt ständig zu und somit ist das Ziel dieser
Arbeit, eine mHealth-App für das Betriebssystem iOS zu entwickeln und implementie-
ren. Dabei unterstützt diese Anwendung medizinische Verfahren und Maßnahmen der
Gesundheitsfürsorge, da durch diese wiederholt und alltagsnah Daten zur Hörschädi-
gung gesammelt werden können. Dies wird
Ecological Momentary Assessment
(EMA)
1
1 Einleitung
genannt. Um solche Daten sammeln zu können, stellt die
TrackYourHearing
App, den
Personen möglicher Hörschädigungen, einen Fragebogen zum Ausfüllen zur Verfügung.
Die somit ermittelten Daten dienen zur Erkennung einer Hörschädigung, sowie dem
Betrachten des Verlaufs der eigenen Hörschädigung. Für die Verarbeitung dieser gewon-
nenen Daten ist eine Anbindung an eine, für diesen Zweck entworfene, API unverzichtbar
und ist ebenfalls Bestandteil dieser Arbeit. [5] [6] [7]
1.3 Struktur der Arbeit
In
Kapitel 2
dieser Arbeit werden verschiedene relevante Grundlagen beschrieben
und erklärt. Dabei beschäftigt sich der erste Teil dieses Kapitels mit medizinischen
Grundlagen im Bezug auf Hörschädigung. Im zweiten Teil werden technische Grundlagen
aufgegriffen. Funktionale und nicht-funktionale Anforderungen werden in
Kapitel 3
spezifiziert.
Kapitel 4
behandelt die Architektur der
TrackYourHearing
App. Hier wird
erst eine grobe Übersicht gegeben, wie die App und der Server kommunizieren. Des
Weiteren wird ein genereller Ablauf der App dargestellt und anschließend eine Übersicht
der Architektur gegeben. In
Kapitel 5
wird die App detailliert vorgestellt und erklärt.
Nennenswerte Punkte zur Implementierung werden in
Kapitel 6
genannt. Der Abgleich
der Anforderungen findet in
Kapitel 7
statt. Die Arbeit endet mit
Kapitel 8
, in welchem
die Arbeit nochmals kurz zusammengefasst wird und ein Ausblick gegeben wird.
2
2
Grundlagen
In diesem Kapitel werden verschieden Grundlagen, welche für diese Arbeit von Bedeu-
tung sind, näher beschrieben. Diese können in zwei Kategorien unterteilt werden, in
medizinische und technische.
2.1 Medizinische Grundlagen
Im Folgenden werden einige medizinische Grundlagen im Bezug einer Hörschädigung
beschrieben.
2.1.1 Hörschädigung
Hören bedeutet, dass das Ohr akustische Signale wahrnehmen und verarbeiten kann.
Dabei werden die gehörten Informationen verständlich für das Gehirn übersetzt.
Ein Ton beziehungsweise ein Geräusch ist eine Schwingung, welche sich in alle Richtun-
gen von der Geräuschquelle aus über die Luft verbreitet. Diese Schwingungen werden
Schallwellen genannt. Das menschliche Ohr kann dabei Schallwellen im Frequenz-
bereich von circa 20 Hertz bis 20 Kilohertz wahrnehmen. Über die Schallwellen wird
definiert, wie sich etwas für einen Menschen anhört, ob es zum Beispiel laut oder leise
ist oder ob es sich um einen hohen beziehungsweise tiefen Ton handelt. Schallwellen
treffen auf das menschliche Außenohr und werden von dort an das Mittelohr weiter-
geleitet. Dort treffen sie auf das Trommelfell sowie auf die Gehörknöchel und werden
in Schwingungen umgewandelt, welche auf eine im Innenohr befindliche Flüssigkeit
übertragen werden. Die Haarzellen erstellen durch die empfangenen Schwingungen
3
2 Grundlagen
chemische Signale, welche an die Hörnerven gesendet werden. Diese Signale werden
als elektrische Impulse an das menschliche Gehirn weitergeleitet und somit werden
Schallwellen für den Menschen hörbar. Hierfür müssen alle Bereiche im Ohr ordnungs-
gemäß funktionieren.
Menschen, welche unter einer Einschränkung des eigenen Hörvermögens leiden, sind
hörgeschädigt. [8] [9] [10]
2.1.2 Ursachen einer Hörschädigung
Eine Schädigung der Gehörs kann die Folge vieler Ursachen sein. Verschiedene Ent-
zündungen, wie zum Beispiel eine chronische Mittelohrentzündung oder Hinrhautent-
zündung können eine Hörschädigung zur Folge haben. Verletzungen im oder am Ohr
können das Hörvermögen ebenfalls beeinträchtigen. Menschen die beruflich oder privat
ständigem Lärm ausgesetzt sind, haben ein erhöhtes Risiko an einer Schädigung des
Gehörs zu leiden. Es gibt somit nicht nur eine Ursache hierfür, sondern eine Vielzahl
an Faktoren können dies hervorrufen. Dadurch sind auch alle Altersschichten davon
betroffen, an einer Hörschädigung leiden zu müssen. [11]
2.1.3 Arten einer Hörschädigung
Eine Hörschädigung kann in die zwei Hauptkategorien, Schwerhörigkeit und Gehörlos,
unterteilt werden.
Ist das Hörvermögen eines Menschen bis zu seinem fünften Lebensjahr komplett ver-
loren gegangen, so spricht man hier von Gehörlos. Verliert ein Mensch danach sein
Gehör, so ist dieser nicht gehörlos, sondern ertaubt.
Bei einer Schwerhörigkeit kann man die folgenden Formen unterscheiden.
Schallleitungs-Schwerhörigkeit
Bei dieser Form der Hörschädigung werden an-
kommende Schallwellen im Mittelohr nicht korrekt an das Innenohr weitergeleitet. Da-
durch hören Betroffene alles leiser.
4
2.1 Medizinische Grundlagen
Schallempfindungs-Schwerhörigkeit
Für diese Form sind krankhafte Veränderun-
gen des Innenohrs oder in seltenen Fällen der Hörnerven verantwortlich. Hierbei werden
die ankommenden Schallwellen noch gut empfangen, jedoch werden diese verändert
wahrgenommen. Dies hat Auswirkungen auf die Qualität und das Klangbild der gehörten
Sprache beziehungsweise Töne.
Schallwahrnehmungs-Schwerhörigkeit
Hier liegt die Ursache im Gehirn des Men-
schen. Dieses verarbeitet die empfangenen Signale nicht richtig.
[8] [11] [12] [13] [14]
2.1.4 Auswirkungen auf den Hörgeschädigten
Hörgeschädigte Personen müssen im Alltag mit vielen Schwierigkeiten, Problemen und
sogar Gefahren umgehen können. Durch die Schädigung des Gehörs können Betroffene
große Schwierigkeiten haben, ihre Mitmenschen richtig zu verstehen. Ebenso können
sie in ihrer Freizeitgestaltung eingeschränkt sein, wie zum Beispiel musikbegeisterte
Personen, welche nicht mehr in der Lage sind ihre Musik richtig zu hören.
Teilweise kann es sogar Einschränkung in der Berufswahl geben, da Hörgeschädigte
beispielsweise nicht in der Telefonberatung arbeiten können.
Ebenso besteht ein erhöhtes Unfallrisiko, da betroffene Menschen Gefahren erst später
oder teilweise gar nicht wahrnehmen.
Die oben genannten Auswirkungen können in psychischen Belastungen, wie Stress oder
Depressionen, enden und somit zu Kontaktverlusten und Isolation führen. [15] [4]
2.1.5 Therapiemöglichkeiten
Je nach Ursache der Hörschädigung können nur bestimmte Therapiemöglichkeiten
angewendet werden. Im Folgenden werden die einzelnen Möglichkeiten beschrieben
und erklärt, wann diese zum Erfolg führen können.
5
2 Grundlagen
Medikamente
Medikamente finden als Therapiemöglichkeit Verwendung, wenn die
Hörschädigung auf eine Infektion des Hörorgans oder der Hörnerven zurückzuführen ist.
Ist dies der Fall, so können die Erreger, wie zum Beispiel Bakterien oder Viren, durch
verschiedene Medikamente bekämpft werden. Ein weit verbreitetes Medikament bei
Viren ist Aciclovir. Sollten eine bakterielle Infektion Ursache sein, so wird diese meist mit
einem Breitbandantibiotika behandelt.
Operationen
In einigen Fällen kann sogar eine Operation als Therapiemöglichkeit
in Betracht gezogen werden. Sollte ein defektes Trommelfell der Grund für die Schwer-
hörigkeit sein, so kann dies operativ behoben werden. Des Weiteren können Prothesen
des Gehörknöchelchen angefertigt werden.
Hörgerät
Ist die Ursache für eine Schwerhörigkeit alters - oder lärmbedingt, so
lässt sich das Hörvermögen nicht mehr durch Medikamente oder einer Operation wie-
derherstellen. In diesem Fall kann der Betroffenen nur mit einem Hörgerät therapiert
werden.
[11] [16]
2.2 Technische Grundlagen
Im diesem Abschnitt werden die technischen Grundlagen erläutert.
2.2.1 Mobile Applikationen
Unter einer Applikation versteht man ein Software-Programm, welches zur Lösung von
Aufgaben verwendet wird. Applikation leitet sich aus dem Englischen
application
ab und
wird meistens nur mit App abgekürzt. Eine mobile Applikation ist somit eine Anwen-
dungssoftware, welche speziell für mobile Endgeräte, wie zum Beispiel Smartphones
oder Tablets, entwickelt werden.
6
2.2 Technische Grundlagen
Im Jahr 2008 startete der Hersteller Apple seinen App Store. Dieser bietet eine umfang-
reiche Palette an Apps für mobile Endgeräte von Apple zum Download an. Dabei gibt es
Apps, welche kostenfrei angeboten werden und welche, die käuflich erworben werden
müssen. Im Jahr 2017 betrug die Anzahl der App Downloads in Deutschland für mobile
Endgeräte der Herstellers Apple 645 Millionen. [17] [18] [19]
2.2.2 Betriebssystem iOS
iOS ist Apples Betriebssystem, welches in der Regel auf den mobilen Endgeräten des
Herstellers verwendet wird. Dieses basiert auf Mac OS, wurde jedoch für die Verwendung
auf mobilen Endgeräte optimiert, da die Eingabe des Benutzers meist nur noch über
Finger stattfindet und nicht wie gewohnt mit Maus und Tastatur.
Da die App
TrackYourHearing
für ein iPhone, ein mobiles Endgerät von Apple, entwickelt
werden soll, muss diese somit unter dem Betriebssystem iOS lauffähig sein. [20]
7
3
Anforderungsanalyse
Im Folgenden werden die Anforderungen der
TrackYourHearing
App definiert. Diese
können sowohl in funktionale als auch in nicht-funktionale Anforderungen untergliedert
werden.
3.1 Funktionale Anforderungen
Funktionale Anforderungen beschreiben, welche Funktionen dem Benutzer bei der
Bedienung der App zur Verfügung stehen. In der unten stehenden Tabelle werden die
Anforderungen näher beschrieben. [21]
Nr. Anforderung Beschreibung
1 Erstellen eines Benutzerkontos
Der Benutzer sollte die Möglichkeit haben, direkt in
der mobilen Anwendung ein Benutzerkonto zu erstel-
len. Dies ist notwendig, da ohne aktives Konto die
Nutzung der App nicht möglich ist.
2
Anzeigen einer Informationsseite
Die App stellt dem Benutzer eine Seite mit den wich-
tigsten Information zu
TrackYourHearing
zur Verfü-
gung.
3 Bearbeiten des Profils
Es sollte möglich sein, dass der Benutzer seine per-
sönlichen Profil-Daten bearbeiten kann.
4 Ändern des Passwortes
Der Benutzer soll in der App sein Passwort ändern
können.
9
3 Anforderungsanalyse
Nr. Anforderung Beschreibung
5 Ausfüllen des Fragebogens
Dem Benutzer sollte ein dynamisch generierter Fra-
gebogen zur Verfügung stehen, welchen er beant-
worten kann. Die gegebenen Antworten werden an
den Server gesendet.
6
Bearbeiten verschiedener Ein-
stellungen
Dem Benutzer sollten verschiedene Einstellungen
zur Verfügung stehen, wie zum Beispiel das Erlauben
von Tönen bei Benachrichtigungen.
7 Einstellung der Mitteilungen
Es sollte möglich sein, dass der Benutzer indivi-
duelle Zeiten einstellen kann, an welchen die App
Erinnerungs-Mitteilungen senden darf.
8 Anzeigen einiger Statistiken
Die App sollte dem Benutzer einige Statistiken seiner
bereits bearbeiteten Fragebögen anzeigen.
9 Teilnahme an Studie
Der Benutzer sollte sich in bestimmte Studien ein-
schreiben können.
10 Teilnahme an Studie beenden
Wenn es die Studie erlaubt, sollte der Benutzer in der
Lage sein seine Teilnahme an dieser Studie wieder
beenden zu können.
11 Belohnungssystem
Ein Belohnungssystem sollte in der App vorhanden
sein.
Tabelle 3.1: Funktionale Anforderungen
10
3.2 Nicht-funktionale Anforderungen
3.2 Nicht-funktionale Anforderungen
In der nachfolgenden Tabelle werden die nicht-funktionalen Anforderungen erläutert,
welche die Anforderungen hinsichtlich der Handhabung der Anwendung definieren. [5]
Nr. Anforderung Beschreibung
1 Betriebssystem iOS
Die App soll auf dem Betriebssystem iOS lauffähig
sein.
2 Mehrsprachige Applikation Die App sollte mehrsprachig sein.
3 Benutzerfreundlichkeit
Die App soll dem Benutzer eine einfache und intuitive
Bedienbarkeit bieten.
4 Robustheit und Stabilität
Die App soll fehlerhafte Eingaben des Benutzer ein-
deutig kenntlich machen, sowie diese handhaben
können. Des Weiteren soll das System nach einem
Neustart fortgeführt werden können.
Tabelle 3.2: Nicht-funktionale Anforderungen
11
4
Architektur
In diesem Kapitel wird die Architektur der
TrackYourHearing
App beschrieben. Zuerst
wird eine kurze Architekturübersicht (Kapitel 4.1) gegeben. In Kapitel 4.2 wird ein
typischer Ablauf der App erläutert und anschließend wird die Architektur der App erklärt
(Kapitel 4.3).
4.1 Übersicht
TrackYourHearing
besteht aus zwei getrennt voneinander entwickelten Hauptkomponen-
ten.
Die erste Komponente ist die Applikation selbst, als Ergebnis dieser Arbeit. Diese wur-
de für das Betriebssystem iOS entwickelt und ist somit auf dem iPhone lauffähig. Zur
Implementierung wurde die Programmiersprache Swift verwendet. Die App kommuni-
ziert mit einem von der Universität Ulm zur Verfügung gestellten Server. Dabei erfolgt
der Zugriff auf diesen über eine vom Institut für Datenbaken und Informationssysteme
entwickelter JSON-API. Anfragen an die API werden über HTTP-Methoden gesendet.
So ist gewährleistet, dass die App nie direkt Daten auf dem Server manipulieren kann.
4.2 Handhabung der App
Nach dem Starten der App öffnet sich der
Loginbereich
der Applikation. Sollte bereits
ein Benutzerkonto vorhanden sein, so kann man sich bereits einloggen. Andernfalls
lässt sich ein neues Konto erstellen. Nach erfolgreicher Eingabe aller erforderlichen
13
4 Architektur
Daten wird eine E-Mail gesendet, mit welcher man den Registrierungsprozess abschlie-
ßen kann. Im
Hauptmenü
hat man die Möglichkeit zu den Menüpunkten
Fragebogen
,
Studien
,
Statistik
,
Profil
oder
Einstellungen
zu navigieren. Außerdem ist es im
Haupt-
menü
möglich sich aus
TrackYourHearing
abzumelden. Im Punkt
Fragebogen
kann man
einen Fragebogen ausfüllen und abschicken. Unter
Studien
kann man an vorhandenen
Studien teilnehmen und die Teilnahme an bereits teilgenommenen wieder beenden.
Statistiken zu bereits ausgefüllten Fragebögen werden unter
Statistik
angezeigt. Persön-
liche Daten können im Menüpunkt
Profil
bearbeitet werden. Es ist dort zudem möglich
ein neues Passwort zu erstellen. Unter
Einstellungen
können gewisse Einstellungen zu
Benachrichtigungen vorgenommen werden. Ebenfalls kann eine Informationsseite über
TrackYourHearing
angezeigt werden. Des Weiteren besteht die Möglichkeit, dass man
sein Konto deaktivieren kann.
In Kapitel 5 werden die einzelne Funktionsweisen der App detailliert aus Sicht des
Benutzer erklärt.
4.3 Architektur der App
In diesem Abschnitt wird ein vereinfachter Überblick über die Softwarearchitektur sowie
einiger Prozesse der TrackYourHearing App gegeben.
Das Projekt wurde dabei in die drei Ordner
ViewController
,
HTTP
und
Utils
unterteilt. Un-
ter
ViewController
werden alle benötigte UIViewController des Projekts verwaltet. Diese
sind ebenfalls in verschiedene Ordner unterteilt, wobei jeder Ordner für eine bestimmte
Ansicht in der App steht. In den Klassen selbst werden die grafischen Oberflächen der
App erstellt sowie jegliche Interaktion mit dem Nutzer gehandhabt.
Die Anbindung an die API findet in den Klassen des
HTTP
Ordner statt. Dort existiert in
der Klasse
RequestHelper
ein allgemeine Funktion, welche Anfragen an die API sendet.
Unter RequestHandler sind alle nötigen Anfragen implementiert.
Allgemeinere Klassen oder Strukturen sind im
Utils
Ordner zu finden. Zum Beispiel
sind dort in
Constants
alle Konstanten definiert, welche im gesamten Projekt Gültigkeit
haben.
Im folgenden werden nun die wichtigsten Prozessdiagramme der App gezeigt.
14
4.3 Architektur der App
Abbildung 4.1: Anmeldeprozess
15
4 Architektur
Abbildung 4.2: Fragebogen beantworten
16
5
Vorstellung TrackYourHearing
In diesem Kapitel werden die einzelnen Funktionen und grafischen Oberflächen des
Systems aus Sicht des Benutzers vorgestellt.
5.1 Anmeldebildschirm
Nach Starten der App wird dem Benutzer der Anmeldebildschirm angezeigt. Dies ist der
Startpunkt der
TrackYourHearing
App. Hier bestehen die Möglichkeiten sich im System
anzumelden, ein neues Benutzerkonto zu erstellen oder Hilfe zu bekommen, falls der
Nutzer sein Passwort vergessen haben sollte. Die einzelnen Möglichkeiten werden nun
im Folgenden näher erläutert.
17
5 Vorstellung TrackYourHearing
Abbildung 5.1: Anmeldebildschirm mit Logo [22]
5.1.1 Anmeldung des Benutzers
Hat der Benutzer bereits ein aktiviertes
TrackYourHearing
Konto, kann er sich mit seinen
Anmeldedaten im System anmelden. Hierfür muss er entweder seine mit dem System
verknüpfte E-Mail Adresse oder seinen gewählten Benutzername in das erste Textfeld
eingeben. Im zweiten Textfeld wird die Eingabe des Passwortes verlangt. Durch das
Betätigen des
Anmelden
Buttons versucht die App nun den Nutzer im System anzumel-
den. Sollte dem System die E-Mail Adresse oder der Benutzername nicht bekannt sein,
beziehungsweise ist das Passwort nicht korrekt, wird der Benutzer mit einer Mitteilung
darauf hingewiesen, dass seine eingegebenen Anmeldedaten nicht korrekt sind. Der
Anmeldeprozess wird daraufhin abgebrochen und der Nutzer kann seine Daten erneut
eingegeben. Nach erfolgreicher Anmeldung navigiert die App in das Hauptmenü (Kapitel
5.2).
18
5.1 Anmeldebildschirm
5.1.2 Passwort vergessen
Sollte der Benutzer sich nicht mehr an sein Passwort erinnern können, besteht die
Möglichkeit sich ein neues Passwort zu erstellen. Hierfür muss der Nutzer die mit dem
Konto verknüpfte E-Mail Adresse angeben. Nach Betätigen des
Senden
Buttons wird
eine E-Mail an die angegebene Adresse versendet. Diese enthält Instruktionen, wie der
Benutzer sich ein neues Passwort generieren kann. Sollte die genannte E-Mail Adresse
dem System nicht bekannt sein, so wird der Nutzer darauf aufmerksam gemacht, dass
es kein Konto mit dieser E-Mail existiert.
Abbildung 5.2: Passwort Vergessen
19
5 Vorstellung TrackYourHearing
5.1.3 Registrierung
Für die Verwendung von
TrackYourHearing
ist die Erstellung eines Benutzerkontos not-
wendig. Hierfür wird eine gültige E-Mail Adresse, ein Benutzername, sowie ein Passwort
benötigt. Bereits während der Eingabe der Daten, prüft das System die Eingaben auf
eventuelle Fehler. Sollte die App einen solchen Fehler entdecken, wird der Benutzer
mit einer Hinweisnachricht darüber informiert. Folgende Fehler während der Eingabe
werden vom System erkannt. Die E-Mail Adresse muss einem typischen E-Mail Format
entsprechen, das heißt, es muss auf jeden Fall ein
@
vorhanden sein. Des Weiteren
muss die Adresse mit einer
Punkt-Endung
enden. Das Passwort muss mindestens eine
Länge von acht Zeichen haben. Um eventuelle Eingabefehler des Benutzers zu erken-
nen, wird das Passwort ein zweites mal zur Überprüfung abgefragt. Nach erfolgreicher
Eingabe der Daten kann der Benutzer nun auf den
Registrieren
Button klicken. Die ein-
gegebenen Daten werden nun an den Server gesendet und dort geprüft. Sollte es noch
kein Konto mit der genannten E-Mail Adresse und dem ausgewählten Benutzername
geben, so wird nun das Konto angelegt. Andernfalls wird der Benutzer darüber informiert,
dass bereits ein Konto mit der E-Mail Adresse existiert, beziehungsweise, dass der
gewählte Benutzername nicht mehr verfügbar ist. Nach erfolgreicher Registrierung wird
dem Benutzer angezeigt, dass eine E-Mail an seine angegebene Adresse geschickt
wurde, mit welcher er sein Konto aktivieren kann.
20
5.2 Hauptmenü
Abbildung 5.3: Registrierung
5.2 Hauptmenü
Nach erfolgreicher Anmeldung gelangt der Benutzer in das Hauptmenü der App. Von
hier aus gelangt der Benutzer in alle Bereiche der App. Durch das Klicken des entspre-
chenden Buttons wird zu der ausgewählten Seite gewechselt. Im Folgenden werden die
vorhandenen Möglichkeiten des Hauptmenüs näher erklärt.
21
5 Vorstellung TrackYourHearing
Abbildung 5.4: Hauptmenü
5.2.1 Fragebogen
Unter dem Punkt
Fragebogen
wird dem Benutzer ein Fragebogen in Bezug auf seine
Hörschädigung angezeigt. Um eine übersichtliche Darstellung des Fragebogens zu
garantieren, wird immer nur eine Frage angezeigt. Der Benutzer sieht jedoch zu jeder
Zeit seinen aktuellen Fortschritt am oberen Bildschirmrand. Nach Beantwortung einer
Frage kann mittels Klicken auf den
Nächste Frage
Button zur nächsten Frage navigiert
werden.
Momentan sind im
TrackYourHearing
Fragebogen die im Folgenden beschriebenen
Fragetypen enthalten.
Single Choice
Bei einer sogenannten Single Choice Frage stehen dem Benutzer
verschiedene Antwortmöglichkeiten zur Verfügung. Dabei kann nur eine Antwortmöglich-
keit ausgewählt werden. Die Auswahl der Antwort wird dem Nutzer farblich dargestellt
und kann so lange geändert werden, bis zur nächsten Frage navigiert wird.
22
5.2 Hauptmenü
Slider
Bei einer Slider Frage muss der Benutzer seine Antwort anhand eines Sliders
festlegen. In den meisten Fällen handelt es sich hierbei um prozentuale Werte. Eine
solche Frage könnte zum Beispiel sein, wie sehr der Nutzer sich momentan durch seine
Hörschädigung beeinträchtigt fühlt. Die Antwortmöglichkeiten gehen in diesem Beispiel
von
gar nicht beeinträchtigt
(0%) bis
maximal beeinträchtigt
(100%). Durch Bewegen
des Sliders wird dem Benutzer in Echtzeit der aktuell ausgewählte Wert angezeigt.
Dieser kann solange eingestellt werden, bis zur nächsten Frage navigiert wird.
SAMScaleFace
Dieser Antworttyp findet in der Regel Verwendung bei Fragen zum
allgemeinen Gemütszustand des Benutzers. Hierfür werden fünf Icons von Gesichtern
angezeigt, welche verschiedenste Zustände symbolisieren. Durch einen darunter liegen-
den Slider kann der Nutzer seinen für ihn passenden Zustand auswählen. Dies kann
wieder bis zum Wechseln zur nächsten Frage angepasst werden.
SAMScaleBody
Dieser Typ von Antwort ist vergleichbar mit dem vorherigen Typ
SAMScaleFace
. Der Unterschied hierbei ist, dass anstelle von Gesichtern dem Benutzer
Körper angezeigt werden, welche verschiedene Erregungszustände symbolisieren sol-
len. Ebenfalls kann der persönlich empfundene Zustand durch einen Slider ausgewählt
werden. Wie bei den vorherigen Fragetypen kann auch bei diesem die Antwort solange
eingestellt werden, bis der Benutzer zur nächsten Frage wechselt.
Ist der Benutzer bei der letzten Frage angelangt, so erscheint anstelle des
Nächste
Frage
Buttons ein
Antworten senden
Button. Durch das Betätigen diesen Buttons wer-
den die gegebenen Antworten an das System gesendet. Anschließend wechselt die App
wieder in das Hauptmenü (Kapitel 5.2) zurück.
23
5 Vorstellung TrackYourHearing
Abbildung 5.5: Beispiel einer Slider Frage
Abbildung 5.6: Beispiel einer SAMScaleFace
24
5.2 Hauptmenü
5.2.2 Studien
Im Menüpunkt
Studien
werden dem Benutzer zur Zeit verfügbare Studien angezeigt.
Durch Klicken auf den entsprechenden Button navigiert die App auf eine neue Seite.
Auf dieser werden Name und Beschreibung der Studie angezeigt. Durch Betätigen des
Teilnehmen
Buttons, nimmt der Benutzer an dieser Studie teil. Danach wechselt die App
wieder in das Hauptmenü (Kapitel 5.2) zurück.
Ebenso sieht der Benutzer an welchen Studien er zur Zeit teilnimmt. Wischt der Nutzer
eine der angezeigten Studien nach links, so erscheint ein roter Button mit der Aufschrift
Teilnahme beenden
. Durch Klicken auf diesen versucht die
TrackYourHearing
App den
Benutzer aus der gewählten Studie wieder auszuschreiben. Da dies jedoch nicht für
alle Studien möglich ist, erscheint in diesem Fall ein Warnhinweis, dass es dem Nutzer
momentan nicht möglich ist, die Teilnahme zu beenden. Ist dies jedoch möglich, so wird
die Teilnahme beendet, was ebenfalls durch einen Hinweis signalisiert wird. Die Studie
wird daraufhin aus der Tabelle entfernt und erscheint wieder als mögliche Studie, an
welcher der Benutzer teilnehmen kann.
5.2.3 Statistik
In diesem Menüpunkt kann der Benutzer einige Statistiken einsehen. Hier wird angezeigt,
wie viele Fragebögen mit diesem Benutzerkonto bereits erfolgreich bearbeitet wurden.
Des Weiteren wird visuell dargestellt, wann die letzten zehn Bögen ausgefüllt wurden.
5.2.4 Profil
Im
Profil
kann der Benutzer seine persönlichen Daten bearbeiten, welche beim Regis-
trierungsprozess nicht angegeben werden müssen. Es besteht die Möglichkeit, dass
man sowohl Vor- als auch Nachname angeben kann. Ebenso kann der Benutzername
geändert werden. Durch das Betätigen des
Geschlechter
UI-Switch kann der Benutzer
entscheiden, ob er dem System mitteilen möchte, welches Geschlecht er hat. Sollte
er diese Möglichkeit aktiviert haben, so kann der Nutzer zwischen den folgenden drei
25
5 Vorstellung TrackYourHearing
Geschlechtern wählen: Männlich,Weiblich und Unzutreffend. Durch das Betätigen des
Aktualisieren Buttons werden die Änderungen dem System übermittelt.
Des Weiteren kann der Benutzer sich in der App ein neues Passwort erstellen. Durch
Klicken auf den
Passwort ändern
Button öffnet sich eine neue Ansicht, in welcher der
Nutzer ein neues Passwort wählen kann. Hierfür müssen beide Textfelder mit dem selben
Passwort ausgefüllt werden. Nach erfolgreicher Prüfung der App auf Anzahl der Zei-
chen sowie Gleichheit der eingegebenen Passwörter, kann der Nutzer den
Aktualisieren
Button drücken. Durch diese Aktion übermittelt die mobile Applikation dem System das
neue Passwort und der Benutzer wird durch einen Hinweis darüber informiert, dass der
Vorgang erfolgreich abgeschlossen wurde.
Abbildung 5.7: Profil
26
5.2 Hauptmenü
5.2.5 Einstellungen
Im Menüpunkt
Einstellungen
, kann der Benutzer verschiedene Einstellungen bezüglich
der TrackYourHearing App vornehmen.
Abbildung 5.8: Einstellungen
Benachrichtigungen
Im Unterpunkt
Benachrichtigungen
kann der Benutzer aus-
wählen, ob die App
TrackYourHearing
dem Nutzer Mitteilungen senden darf. Diese
dienen als Erinnerung, dass der Benutzer einen Fragebogen ausfüllen sollte. Zusätzlich
zur Aktivierung der Mitteilungen, ist es ebenfalls möglich, auszuwählen, ob die Mitteilun-
gen mit Tönen erlaubt sind. Des Weiteren können unter dem Unterpunkt
Erinnerungen
zu Fragebögen
- sofern Mitteilungen aktiviert sind - weitere Einstellungen vorgenommen
werden. Der Benutzer kann die maximale Anzahl an Mitteilungen pro Tag einstellen. Hier
besteht die Auswahlmöglichkeit von einer bis maximal zwölf Mitteilungen. Als Standard
sind Mitteilungen an jedem Tag der Woche erlaubt. Dies wird durch die grüne Markierung
signalisiert. Möchte der Benutzer an einem bestimmten Tag keine Mitteilungen erhalten,
kann er dies durch einen einfachen Klick in der entsprechenden Tageszeile deaktivieren.
27
5 Vorstellung TrackYourHearing
Dieser Tageseintrag wird sich daraufhin rot verfärben und signalisiert somit dem Nutzer,
dass an diesem Tag keine Mitteilungen gesendet werden. Ebenso ist es möglich, ein
gewisses Zeitfenster pro Tag einzustellen, in welchem es der App erlaubt ist, Mitteilungen
zu versenden. Da ein Zeitfenster mindestens vier Stunden lang sein muss, stellt die App
dem Benutzer auch nur Auswahlmöglichkeiten zur Verfügung, welche diese Limitierung
nicht unterschreiten. Des Weiteren unterbindet die Applikation eine Startzeit zu wählen,
welche nach der Endzeit liegt und eine Endzeit, welche vor der Startzeit liegt.
Abbildung 5.9: Einstellung der individuellen Erinnerungszeiten
Über TrackYourHearing
Auf dieser Seite werden dem Benutzer einige Informati-
onspunkte genannt. Durch Klicken auf den entsprechenden Button navigiert die App in
eine neue Ansicht, in welcher die detaillierten Informationen gegeben werden.
Account deaktivieren
Durch Betätigen des
Konto deaktivieren
Buttons, kann der
Benutzer sein aktuelles Konto deaktivieren. Es wird mit einem Warnhinweis darauf
hingewiesen, dass durch diesen Schritt die App erst wieder nach Reaktivierung des
28
5.2 Hauptmenü
Kontos wie gewohnt verwendet werden kann. Andernfalls muss ein neues Benutzerkonto
angelegt werden.
5.2.6 Abmeldung des Benutzers
Der Benutzer kann sich durch einmaliges Klicken des
Abmelden
Buttons aus dem
System ausloggen. Die App meldet daraufhin den Nutzer vom System ab und wechselt
anschließend zum Anmeldebildschirm (Kapitel 5.1) zurück.
29
6
Implementierung
In diesem Kapitel wird zuerst die Entwicklungsumgebung und die Programmiersprache
näher erklärt, welche zur Entwicklung der
TrackYourHearing
App genutzt wurden. An-
schließend wird die Anbindung an die API beschrieben und genauer erklärt, wie der
Fragebogen dynamisch erstellt wird. Des Weiteren wird noch die Funktionsweise der
Benachrichtigungen beschrieben.
6.1 Entwicklungsumgebung
6.1.1 Xcode
Eine Entwicklungsumgebung, kurz IDE (aus dem englischen
integrated developement
environment
), ist ein spezielles Programm, mit welchem man Programme schreiben
kann. Xcode ist Apples Entwicklungsumgebung und dafür da, Programme für Apple
Geräte zu entwickeln. Derzeit ist dies das einzige Tool, mit welchem man für Apples
Betriebssysteme entwickeln kann. Durch die Bedingung, dass
TrackYourHearing
für ein
iPhone entwickelt werden soll, muss somit Xcode als Entwicklungsumgebung verwendet
werden. Diese Anwendung beinhaltet alles, was für die Entwicklung von
TrackYourHea-
ring notwendig ist.
Während der Erstellung dieser Arbeit wurde Xcode in der Version 10.3 verwendet.
[23] [24]
31
6 Implementierung
6.1.2 Swift
Im Jahr 2014 kam Apples eigene Programmiersprache Swift heraus. Mit dieser können
zum Beispiel Apps für das Betriebssystem iOS entwickelt werden. Die auf Objective-C
basierte Sprache ist Open Source.
Die TrackYourHearing App wurde mit Swift, in der fünften Version, implementiert.
[25] [26]
6.2 Coding Convention
Für die einheitliche Implementierung wurde nach gewissen Coding Standards gearbeitet.
Während der Implementierung wurde darauf geachtet, dass die meisten
API Design
Guidelines
[
27
] eingehalten werden. Des Weiteren wurden alle Klassen nach dem glei-
chen Schema aufgebaut. Als erstes wurden alle für diese Klasse relevanten Konstanten
und danach alle Variablen deklariert. Die Implementierung der Funktionen fand in der
Reihenfolge override func,func,@objc func und private func statt.
6.3 API Anbindung
Anfragen an die API erfolgen über
HTTP-Requests
. Hierfür wurde in
RequestHelper
die
statische Funktion
sendRequest
implementiert, welche die Anfragen über sogenannte
URLSession
sendet. Der Funktion muss bei jedem Aufruf als Parameter mitgeteilt wer-
den, um welche
HTTP-Methode
es sich handelt, was für eine
Route
gewählt wird und
ob für diese Anfrage ein
Token
benötigt wird. Optional ist es möglich, einen
Body
und
Header
-Attribute der Funktion beim Aufruf mitzugeben. Mit diesen Informationen baut
die Funktion anschließend die gewünschte Anfrage und sendet diese an die API. Die
Antwort wird in
Data
,
URLResponse
und
Error
aufgegliedert. Als Rückgabewert hat die
sendRequest
Funktion wiederum eine neue Funktion, die sogenannte
waitForHTTPRe-
sponse
Funktion. Als optionale Parameter werden genau die vorherigen drei genannten
Parameter der API-Antwort verwendet. In der Klasse
RequestHandler
sind alle Anfra-
32
6.4 Dynamische Erstellung des Fragebogen
gen implementiert, welche die App an die API sendet. Hierbei wird in jeder einzelnen
Anfrage die statische
sendRequest
Funktion mit den nötigen Parametern aufgerufen
und anschließend die erhaltene Antwort bearbeitet. Anschließend wird das Ergebnis an
den ViewController zurückgegeben, in welchem der Aufruf des
RequestHandler
statt
fand.
6.4 Dynamische Erstellung des Fragebogen
Der Fragebogen, welcher in der
TrackYourHearing
App angezeigt wird, wird dynamisch
erstellt. Klickt der Benutzer im Hauptmenü auf den
Fragebogen
Button, so sendet die
Applikation eine Anfrage an die API. Als Antwort dieser Anfrage erhält die App den
aktuellen
TrackYourHearing
Fragebogen. Jede Frage ist hierbei nach dem folgenden
Schema aufgebaut und besitzt die Attribute
id
,
label
,
question
,
answers
,
type
sowie
required
. Um mit solchen fest vorgegebenen Strukturen arbeiten zu können, bietet die
Programmiersprache Swift den sogenannten Wert
struct
an. Mit diesem lassen sich
individuelle Datentypen definieren und deshalb wurde für
TrackYourHearing
der Datentyp
Question
erstellt. Damit lassen sich die oben genannten Werte der Anfrageantwort des
Fragebogens in einem
Array
voll mit
Question
abbilden. Nach erfolgreichem Laden aller
Fragen wechselt die App in die Ansicht des Fragebogens über. Es wird die erste Frage
aus dem eben erstellen
Array
gelesen. Die grafische Oberfläche wird danach je nach
Fragetyp entsprechend angepasst. Nach Beantwortung dieser Frage wird die nächste
Frage gelesen und die grafische Oberfläche aktualisiert sich dementsprechend wieder.
Dies wird solange fortgeführt bis der Fragebogen komplett beantwortet wurde.
Somit erlaubt die App Änderungen am Fragebogen selbst und stellt diesen immer
korrekt dar, da dieser jedes mal erneut geladen und die grafische Oberfläche aus diesem
Resultat heraus generiert wird.
33
6 Implementierung
6.5 Benachrichtigungen
Die App sendet dem Benutzer in bestimmten Zeiträumen Erinnerungsnachrichten
zum Bearbeiten des Fragebogens. Hierfür wurde die Klasse
NotificationHandler
im-
plementiert. Die wichtigsten Funktionen in dieser sind
checkNotificationAuthorization
,
triggerAllNotifications
,
triggerNotification
und
deleteNotifications
. Beim ersten Starten
von
TrackYourHearing
wird
checkNotificationAuthorization
aufgerufen. Diese Funktion
überprüft, ob der Nutzer der App erlaubt hat, Mitteilungen senden zu dürfen. Wurde
dies erlaubt, so ruft die Funktion
triggerAllNotifications
auf und es werden für jeden Wo-
chentag
UNNotificationRequest
erstellt, welche vom Apple Package
UserNotifications
zur Verfügung gestellt wird. Standardmäßig werden pro Tag zwölf Benachrichtigungen
im Zeitfenster von acht Uhr morgens bis zehn Uhr abends gesendet.
In den Einstellungen kann dies individuell eingestellt werden. Sollten für einen Tag keine
Mitteilungen erlaubt sein, so wird die
deleteNotifications
aufgerufen. Diese benötigt beim
Aufruf den gewählten Wochentag als Parameter. Anschließend werden alle Mitteilungen
für diesen bestimmten Tag aus dem System gelöscht. Sollten zum Beispiel Änderungen
am Zeitfenster selbst vorgenommen werden, so werden, wie eben beschrieben, für
diesen Tag alle alten Benachrichtigungen gelöscht. Danach wird geprüft, wieviele Mittei-
lungen pro Tag erlaubt sind und je nach Wert wird dementsprechend oft die Funktion
triggerNotification
aufgerufen. Wie bei
deleteNotifications
benötigt auch diese einen
Tag als Parameter. Anschließend werden dadurch im neu gewählten Zeitfenster die
Mitteilungen getriggert. Dieses Zeitfenster wird ebenfalls auf dem Endgerät des Nutzers
gespeichert. Für den Fall, dass Mitteilungen im Allgemeinen nicht mehr erlaubt sind, wird
für jeden Wochentag
deleteNotifications
aufgerufen und die App sendet anschließend
keine Mitteilungen mehr. Selbstverständlich kann dies auch wieder in der App rückgängig
gemacht werden und es werden die zuletzt gespeicherten Zeitfenster des Benutzer zum
initialisieren der Mitteilungen verwendet.
34
7
Anforderungsabgleich
In diesem Kapitel werden die in Kapitel 3 definierten Anforderungen abgeglichen.
7.1 Funktionale Anforderungen
Abgleich der funktionalen Anforderungen aus Kapitel 3.1.
Nr. Anforderung Erfüllt Beschreibung
1
Erstellung eines Benutzer-
kontos
Ja
Der Benutzer kann innerhalb der App ein Benut-
zerkonto erstellen und sich somit bei
TrackYour-
Hearing registrieren.
2
Anzeigen einer Informations-
seite
Ja
Innerhalb der App ist eine Informationsseite für
den Benutzer zugänglich.
3 Bearbeiten des Profils Ja
In der App kann der Benutzer sein Profil bearbei-
ten und aktualisieren.
4 Ändern des Passwortes Ja
Eine Änderung des Passwortes ist in der App
möglich.
35
7 Anforderungsabgleich
Nr. Anforderung Erfüllt Beschreibung
5 Ausfüllen des Fragebogens Ja
Die App kann über die API einen Fragebogen la-
den und diesen dynamisch in der App anzeigen.
Das Bearbeiten und Absenden der Antworten ist
ebenfalls möglich. Zum Zeitpunkt der Abgabe die-
ser Arbeit, war jedoch der benötigte
TrackYour-
Hearing
Fragebogen, auf Seiten der API, noch
nicht vollständig implementiert.
6
Bearbeiten verschiedener
Einstellungen
Ja
Der Benutzer kann in der App Einstellungen vor-
nehmen, wie zum Beispiel das Erlauben von Mit-
teilungen.
7 Einstellung der Mitteilungen Ja
In der App kann eine maximale Anzahl von Mit-
teilungen pro Tag eingestellt werden. Es ist eben-
falls möglich, Mitteilungen für bestimmte Tage zu
deaktivieren und außerdem für jeden Tag ein per-
sönliches Zeitfenster, von mindestens vier Stun-
den, anzugeben, während es der App erlaubt ist,
Mitteilungen zu senden.
8 Anzeigen einiger Statistiken Ja
Dem Benutzer werden in der App Statistiken an-
gezeigt.
9 Teilnahme an Studie Ja
Sind entsprechende Studien für den Benutzer
verfügbar, so werden diese in der App angezeigt.
Der Nutzer kann daraufhin aus der App heraus
an Studien teilnehmen.
10
Teilnahme an Studie been-
den
Ja
Handelt es sich um eine Studie, welche es er-
laubt die Teilnahme zu beenden, so ist es auch
in der App möglich, die Teilnahme an dieser zu
beenden.
36
7.1 Funktionale Anforderungen
Nr. Anforderung Erfüllt Beschreibung
11 Belohnungssystem Nein
Da das Belohnungssystem auf Seiten der API
noch nicht vollständig fehlerfrei ist, wurde diese
Anforderung noch nicht vollständig implementiert.
Es wurden alle möglichen Anfragen an die API
programmiert, jedoch wurde für das Belohnungs-
system keine grafische Oberfläche entwickelt.
Tabelle 7.1: Abgleich der funktionale Anforderungen
37
7 Anforderungsabgleich
7.2 Nicht-Funktionale Anforderungen
Abgleich der nicht-funktionalen aus Kapitel 3.2.
Nr. Anforderung Erfüllt Beschreibung
1 Betriebssystem iOS Ja
Die App
TrackYourHearing
ist auf dem Betriebs-
system iOS lauffähig.
2 Mehrsprachige Applikation Ja
Die App wechselt die Sprache, je nach Systemein-
stellung, automatisch auf Deutsch oder Englisch.
3 Benutzerfreundlichkeit Ja
Durch die klare Struktur der App ist diese für al-
le Altersschichten geeignet und stets intuitiv zu
bedienen.
4 Robustheit und Stabilität Ja TrackYourHearing
wurde so entwickelt, dass sich
die App zu jedem Zeitpunkt der Nutzung in einem
fehlerfreien Zustand befindet. Auf fehlerhafte Ein-
gaben reagiert die Anwendung und weist den Be-
nutzer klar ersichtlich auf die falsche Eingabe hin.
Bei fehlerhaften Anfragen an die API wird dem
Nutzer ebenfalls mitgeteilt, dass es einen Fehler
gab und die App wechselt wieder in einen fehler-
freien Zustand, sodass die Benutzung fortgeführt
werden kann. Während den Tests auf Emulato-
ren sowie auf echten Endgeräten funktionierte die
App einwandfrei und zeigte das erwartete Verhal-
ten.
Tabelle 7.2: Abgleich der nicht-funktionale Anforderungen
38
8
Fazit
In diesem Kapitel wird eine kurze Zusammenfassung der Arbeit und ein Ausblick gege-
ben.
8.1 Zusammenfassung
Im Rahmen dieser Bachelorarbeit wurde eine funktionsfähige mobile Applikation für
das Betriebssystem iOS entwickelt. Zu Beginn der Arbeit wurden zum Thema relevan-
te Grundlagen näher beschrieben. Anschließend wurden die Anforderungen an die
App definiert und daraufhin die Architektur näher beschrieben. Eine Vorstellung der
TrackYourHearing
App aus Sicht des Benutzers wurde ebenfalls vorgenommen. Hierbei
wurden alle Funktionen der Anwendungen näher beschrieben. Danach wurde die zur
Entwicklung verwendete Entwicklungsumgebung vorgestellt sowie einige besondere
Implementierungsschwerpunkte angesprochen und erklärt. Als letzten Punkt dieser
Arbeit wurde ein Abgleich der gestellten Anforderungen durchgeführt.
8.2 Ausblick
Mit Abschluss dieser Arbeit ist die
TrackYourHearing
App auf dem iPhone betriebsbereit.
Wie in Kapitel 7.1 erwähnt, ist die App in der Lage, einen Fragebogen aus der API
zu laden und diesen dynamisch in der Anwendung anzuzeigen. Allerdings ist zur Zeit
der notwendige Fragebogen nicht vollständig in der API integriert, kann jedoch zu ei-
nem späteren Zeitpunkt problemlos in
TrackYourHearing
geladen werden. Des Weiteren
39
8 Fazit
funktioniert das Belohnungssystem noch nicht einwandfrei und deshalb wurden nur die
bereits vorhandenen Anbindungen an die API implementiert, sodass die Weiterentwick-
lung für die Zukunft vereinfacht wurde.
Eine Idee wäre, die App ebenfalls für Android zu entwickeln, um diese noch mehr
Menschen zugänglich zu stellen.
40
Literaturverzeichnis
[1]
Majid, A., Roberts, S.G., Cilissen, L., Emmorey, K., Nicodemus, B., O’Grady, L., Woll,
B., LeLan, B., de Sousa, H., Cansler, B.L., et al.: Differential coding of perception
in the world’s languages. Proceedings of the National Academy of Sciences
115
(2018) 11369–11376
[2]
Bundesverband der Hörgeräte-Industrie: EuroTrak 2018: Schwerhörigkeit im
europäischen Vergleich. https://www.bvhi.org/eurotrak-2018-schwerhoerigkeit-
im-europaeischen-vergleich-deutschland-bleibt-stabil/ (2018) [Letzter Abruf:
02.12.2019].
[3]
Bundesamt, S.: Bevölkerungsstand. https://www.destatis.de/DE/Themen/Gesellschaft-
Umwelt/Bevoelkerung/Bevoelkerungsstand/Tabellen/zensus-geschlecht-
staatsangehoerigkeit-2019.html (2019) [Letzter Abruf: 02.12.2019].
[4]
ganzohr.ch: Gehör und Gedächtnis: Wie Hörschwächen auf das Erinne-
rungsvermögen schlagen. https://www.ganzohr.ch/gehoer-und-gedaechtnis-wie-
hoerschwaechen-auf-das-erinnerungsvermoegen-schlagen/ (2018) [Letzter Abruf:
02.12.2019].
[5]
Schickler, M., Reichert, M., Pryss, R., Schobel, J., Schlee, W., Langguth, B.: Entwick-
lung mobiler Apps: Konzepte, Anwendungsbausteine und Werkzeuge im Business
und E-Health. eXamen.press. Springer Vieweg (2015)
[6]
Pryss, R., Schlee, W., Reichert, M., Kurthen, I., Giroud, N., Jagoda, L., Neuschwan-
der, P., Meyer, M., Neff, P., Schobel, J., Hoppenstedt, B., Spiliopoulou, M., Langguth,
B., Probst, T.: Ecological momentary assessment based differences between an-
droid and ios users of the trackyourhearing mhealth crowdsensing platform. In:
2019 41st Annual International Conference of the IEEE Engineering in Medicine
and Biology Society (EMBC). (2019) 3951–3955
41
Literaturverzeichnis
[7]
Pryss, R., Schobel, J., Reichert, M.: Requirements for a flexible and generic
api enabling mobile crowdsensing mhealth applications. In: 2018 4th International
Workshop on Requirements Engineering for Self-Adaptive, Collaborative, and Cyber
Physical Systems (RESACS). (2018) 24–31
[8]
HNO-Ärzte: Schwerhörigkeit Definition und Häufigkeit. https://www.hno-aerzte-im-
netz.de/krankheiten/schwerhoerigkeit/definition-und-haeufigkeit.html (2019) [Letzter
Abruf: 05.12.2019].
[9]
Prof. Hußmann: Ton und Klang. http://www.medien.ifi.lmu.de/lehre/ws0809/dm/dm5a.pdf
(2008/2009) [Letzter Abruf: 11.12.2019].
[10]
Cochlear: Cochlear - wie wir hören. https://www.cochlear.com/de/startseite/hoeren-
und-hoerverlust/hoeren-und-hoerverlust/wie-wir-hoeren (2019) [Letzter Abruf:
05.12.2019].
[11]
Fuchs, C.: Schwerhörigkeit. https://www.netdoktor.de/symptome/schwerhoerigkeit/
(2016) [Letzter Abruf: 06.12.2019].
[12]
Deutsche Gesellschaft der Hörbehinderten: Einige Informationen zum Thema
Hörschädigung. https://www.deutsche-gesellschaft.de/fokus/einige-informationen-
zum-thema-hoerschaedigung (2004) [Letzter Abruf: 05.12.2019].
[13]
HNO-Ärzte: Schallleitungsschwerhörigkeit. https://www.hno-aerzte-im-
netz.de/krankheiten/schwerhoerigkeit/schallleitungs-schwerhoerigkeit.html
(2019) [Letzter Abruf: 05.12.2019].
[14]
HNO-Ärzte: Schallempfindungsschwerhörigkeit. https://www.hno-aerzte-im-
netz.de/krankheiten/schwerhoerigkeit/schallempfindungs-schwerhoerigkeit.html
(2019) [Letzter Abruf: 05.12.2019].
[15]
Landesgesundheitsamt Baden-Württemberg: Was bedeu-
tet ein Hörschaden im Alltag? https://www.gesundheitsamt-
bw.de/lga/DE/Themen/Gesundheit_Umwelt/Laerm/Seiten/Hoerschaden.aspx
(2019) [Letzter Abruf: 05.12.2019].
[16]
KLINGMANN, P.D.D.M.C.: HNO Praxis München. https://www.hno-praxis-
muenchen.com/leistungen/schwerhoerigkeit (2019) [Letzter Abruf: 06.12.2019].
42
Literaturverzeichnis
[17]
Geißler, O.: Was ist eine Applikation. https://www.datacenter-insider.de/was-ist-
eine-applikation-a-651080/ (2017) [Letzter Abruf: 11.12.2019].
[18]
Apple: iPhone App Store mit 10 Millionen Downloads am ersten Wochenen-
de. https://www.apple.com/de/newsroom/2008/07/14iPhone-App-Store-Downloads-
Top-10-Million-in-First-Weekend/ (2008) [Letzter Abruf: 11.12.2019].
[19]
statista: Anzahl der Downloads von mobilen Apps nach den Be-
triebssystemen Android und iOS in Deutschland im Jahr 2017.
https://de.statista.com/statistik/daten/studie/801687/umfrage/anzahl-der-
app-downloads-nach-betriebssystem-in-deutschland/ (2019) [Letzter Abruf:
11.12.2019].
[20]
techstage: iOS: das mobile Betriebssystem von Apple. htt-
ps://www.techstage.de/thema/iOS (2013) [Letzter Abruf: 11.12.2019].
[21]
IT: Qualität, funktionale und nichtfunktionale Anforderungen in der Software-
Entwicklung. https://blog.seibert-media.net/blog/2018/05/14/qualitaet-funktionale-
und-nichtfunktionale-anforderungen-in-der-software-entwicklung/ (2018) [Letzter
Abruf: 12.12.2019].
[22] Bas, T.: Erstellung des Logos (2019)
[23]
Floyd, B.: Was ist apple xcode. https://www.dev-insider.de/was-ist-apple-xcode-a-
653433/ (2017) [Letzter Abruf: 11.12.2019].
[24]
Apple: Xcode. https://apps.apple.com/de/app/xcode/id497799835?mt=12 (2019)
[Letzter Abruf: 11.12.2019].
[25]
Apple: Swift. Eine leistungsstarke offene Sprache, mit der jeder großartige Apps
erstellen kann. https://www.apple.com/de/swift/ (2019) [Letzter Abruf: 11.12.2019].
[26]
chrissikraus: Was ist Apple Swift? https://www.dev-insider.de/was-ist-apple-swift-a-
735481/ (2018) [Letzter Abruf: 11.12.2019].
[27]
Apple: API Design Guidelines. https://swift.org/documentation/api-design-
guidelines/ (2019) [Letzter Abruf: 15.12.2019].
43
Abbildungsverzeichnis
4.1 Anmeldeprozess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.2 Fragebogen beantworten . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.1 Anmeldebildschirm mit Logo [22] . . . . . . . . . . . . . . . . . . . . . . . 18
5.2 Passwort Vergessen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.3 Registrierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
5.4 Hauptmenü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.5 Beispiel einer Slider Frage . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.6 Beispiel einer SAMScaleFace . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.7 Profil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.8 Einstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.9 Einstellung der individuellen Erinnerungszeiten . . . . . . . . . . . . . . . 28
45
Tabellenverzeichnis
3.1 Funktionale Anforderungen . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2 Nicht-funktionale Anforderungen . . . . . . . . . . . . . . . . . . . . . . . 11
7.1 Abgleich der funktionale Anforderungen . . . . . . . . . . . . . . . . . . . 37
7.2 Abgleich der nicht-funktionale Anforderungen . . . . . . . . . . . . . . . . 38
47
Name: Kevin Marquard Matrikelnummer: 747800
Erklärung
Ich erkläre, dass ich die Arbeit selbstständig verfasst und keine anderen als die angege-
benen Quellen und Hilfsmittel verwendet habe.
Ulm,den .............................................................................
Kevin Marquard