Mindwatch (Backend)

Challenge

In Anbetracht des überlasteten Gesundheitssystems und des Therapieplatzmangels in Deutschland fehlt es vielen psychisch erkrankten Menschen an dringend benötigter Unterstützung. Die benötigte Hilfe ist für viele Menschen somit nicht erreichbar. Die anhaltende Ausgangssituation hat sich durch die Corona Pandemie verschlechtert.

Lösung

Ziel des Kunden war es, psychisch erkrankten Menschen durch eine App auf einer Smartwatch Hilfe anzubieten.

Nutzern dieser App soll interaktiv ein positives Mindset übermittelt werden, um sie bei Wartezeiten auf Therapieplätzen zu begleiten und im Alltag zu unterstützen. Somit soll präventiv eine bessere Patientenversorgung bei dem überlasteten Gesundheitssystem gewährleistet werden.

Bei der Entwicklung dieser App waren wir für das Backend und die API-Schnittstellen zuständig.

1. Potentialanalyse

Nach Absprache mit dem Kunden über die Funktionen des Backends, konnten wir gemeinsam mit diesem Entscheidungen über Werkzeuge, Technologien und Architekturen für dieses treffen.

Ein Backend bezeichnet den funktionalen Teil der App. Während das Frontend näher am Benutzer ist, ist das Backend näher am System.

2. Use Case Definition

Anhand der Prozessanalyse definierten wir den Use Case des gewünschten Backends. Ein solcher Use Case enthält alle möglichen Szenarien die mit Hilfe des Systems zu leisten sind.

Name

Mindwatch (Backend)

Kurzbeschreibung

Bereitstellung eines Systems, der dem Benutzer positive Affirmationen, Fragen und Aufgaben ausgibt.

Akteure

Masasana GmbH

Markus Coenen

Vorbedingung:

Affirmationen, Fragen und Aufgaben für die Mindwatch liegen vor. App ist entwickelt.

Nachbedingung:

Der Benutzer hat Zugriff auf seine Daten und Statistiken.

Ablauf – Normalszenario:

1. Der Benutzer authentifiziert sich und greift auf das System zu.

2. Das System gibt eine Frage zu dem Gemütszustand aus.

3. Der Benutzer gibt den Gemütszustand “gut” an.

4. Das System wertet die Antwort aus und gibt eine positive Affirmation aus.

5. Das System gibt eine Aufgabe oder Frage nach 3 Stunden an den Benutzer aus.

6. Der Benutzer bestätigt die Aufgabe oder beantwortet die Frage.

7. Das System gibt einen motivierenden Glückwunschtext aus.

8. Das System speichert die Nutzerdaten und bereitet auf Basis dieser eine Statistik über den Gemütszustand und die Erfolge des Benutzers auf.

Ablauf – Alternativszenario:

1.1 Der Benutzer hat keinen Zugriff und registriert sich.

1.1.1 Der Benutzer bestimmt ein Zeitfenster für das System.

1.1.2 Weiter wie in Schritt 2.

3.1 Benutzer gibt den Gemütszustand “mittel” an.

3.1.1 Das System wertet die Antwort aus und gibt eine positive Affirmation aus.

3.1.2 Das System gibt eine Aufgabe oder Frage nach 2 Stunden an den Benutzer aus.

3.1.3 Weiter wie in Schritt 6.

3.2 Benutzer gibt den Gemütszustand “schlecht” an.

3.2.1 Das System wertet die Antwort aus und gibt eine positive Affirmation aus.

3.2.2 Das System gibt eine Aufgabe oder Frage nach 1,5 Stunden an den Benutzer aus.

3.2.3 Weiter wie in Schritt 6.

6.1 Der Benutzer lehnt die Frage oder Aufgabe ab.

6.1.1 Das System gibt einen aufbauenden Text an den Benutzer aus.

6.1.2 Das System beginnt nach 3 Stunden wieder mit Schritt 2.

Ablauf – Fehlerszenario:

8.1 Das System kann die Nutzerdaten nicht speichern und verarbeiten.

8.1.1 Das System gibt eine Fehlermeldung aus.

3. Iterative Modellerstellung

Nach dem Konzeptausbau begannen wir mit der Programmierung des Algorithmus für das Backend. Dadurch kann auf die Eingaben des Users in Form der Anforderungen des Kunden reagiert werden.

Um die notwendige OpenAPI-Definition mit dem Webserver, in diesem Fall Flask, umsetzen zu können, nutzten wir die webbasierte Programmiersprache Python. Die benötigten Datenbanken für dieses Projekt sind MongoDB Datenbanken und besonders vorteilhaft, da diese NoSQL sind und Dokumente halten können, was uns wiederum erlaubte, Statistiken uneingeschränkter verbinden zu können.

Durch die API wird die Verarbeitung und Ausgabe der Gemütsabfragen, Affirmationen, Fragen und Aufgaben, das Login und die Statistiken gesteuert.

4. Integration und Ergebnisanalyse

Nach der Integration des Backends in der App führten wir eine Codereview und weitere Tests durch. Abschließend konnten wir dem Kunden das funktionierende Backend für seine App zur Verfügung stellen.