Home Check-in für stationäre und ambulante Krankenhausaufenthalte


Ein Software Engineering Projekt der TU Darmstadt im Wintersemester 2017/2018

Unser Projekt in aller Kürze

Unser Projekt möchte den Aufnahmeprozess im Krankenhaus vereinfachen und digitalisieren. Hierbei sollen unter anderem digitale Dokumente zwischen Patient und Krankenhaus ausgetauscht werden. Diese Dokumente sind von sensibler Natur. Daher entwickeln wir ein Autorisierungsverfahren, mit dem der Patient einem Krankenhaus zeitlich begrenzten Zugriff auf seine elektronische Gesundheitsakte gewähren kann.

Um dessen Anwendung zu demonstrieren, haben wir außerdem zwei Android-Apps implementiert:
Mit der ersten App kann das Krankenhaus Zugriffsrechte auf die elektronische Gesundheitsakte eines Patienten erfragen und danach Dokumente hochladen.
Die zweite App wird vom Patienten genutzt, um dem Krankenhaus diese Zugriffsrechte zu gewähren.


Ein Projekt zwischen

IBMLogo TULogo MBILogo


Team: MBI

TeamFotoMBI

Auftraggeber

IBM (International Business Machines Corporation)

IBM ist eines der weltweit führenden Unternehmen für Hardware, Software und Dienstleistungen im IT-Bereich sowie eines der größten IT-Beratungsunternehmen der Welt.
Mit 9.043 Patenten im Jahr 2017 ist IBM seit nun 25 Jahren Patentweltmeister. Gemessen am Umsatz ist IBM der zweitgrößte Softwarehersteller der Welt. Außerdem ist IBM gemessen and er Mitarbeiteranzahl auf Rang 15 der weltweit größten Unternehmen.

Projekt

Momentan arbeitet IBM gemeinsam mit der Techniker Krankenkasse und mehreren Gruppen in der Gesundheitsbranche an der sogenannten elektronischen Gesundheitsakte (eGA). Diese soll es dem Nutzer unter anderem ermöglichen, medizinischen Daten und Dokumente in einer Cloud zu sichern. Hiermit soll verhindert werden, dass medizinische Dokumente im Laufe der Zeit verloren gehen.

Im Fokus steht hierbei, dass der Nutzer der Souverän über seine Daten ist. Weder IBM, noch seiner Krankenkasse oder weiteren Dritten, wie z.B. einem Krankenhaus, darf es möglich sein, Dokumente ohne dessen explizite Zustimmung einzusehen, hinzuzufügen, oder zu verändern. Ziel ist es, die elektronische Gesundheitsakte in Zukunft auch für Patienten anderer Krankenkassen zur Verfügung zu stellen.
Mithilfe der eGA möchte IBM den Check-in-Prozess in Krankenhäusern digitalisieren. Im Moment muss der Patient benötigte Dokumente von zu Hause mitbringen und vor Ort Forumulare ausfüllen, welche wiederum von Hand in einen Computer abgetippt werden. Die Digitalisierung soll es dem Nutzer ermöglichen, existierende Dokumente aus seiner eGA für das Krankenhaus freizugeben und Formulare online von zu Hause auszufüllen. Dies soll sowohl dem Patienten, als auch dem Krankenhaus zeit sparen, und Fehler verhindern.

Ein Feature der elektronischen Gesundheitsakte soll darin bestehen, dass der Nutzer einen Leistungserbringer dazu autorisieren kann, Dokumente für ihn in seine Akte hochzuladen. Dadurch kann ein Arzt beispielsweise Röntgenbilder direkt in die Gesundheitsakte seiner Patienten laden, ohne dass der Nutzer die erhaltenen Röntgenbilder erst einscannen und dann selbst manuell hochladen muss.
Dies soll über ein Autorisierungsverfahren realisiert werden, bei dem der Arzt auf seinem Gerät einen QR-Code anzeigt, welcher vom Nutzer in seiner eGA-App gescannt wird, womit die benötigten Rechte dem Arzt temporär gewährt werden.

Realisiert wird dies von uns mit dem Session Connect Authenticator. Dieser ist eine generische Implementation des Authentifizierungsverfahren für Keycloak, einen Identity Management Server. Der Session Connect Authenticator kann parallel zu beliebigen, bereits bestehenden Authentifizierungsmechanismen, wie beispielsweise dem klassischen Nutzername-Passwort-Login, genutzt werden, um zusätzlich eine Authentifizierung per QR-Code zu ermöglichen.

Beim Login mit unserem Authenticator kommt man auf eine Login-Website mit einem QR-Code. Ein eingeloggter Nutzer kann den QR-Code dann einscannen und den enthaltenen Wert an einen Webservice schicken, damit man sich der Erzeuger des QR-Codes auf der Login-Seite als dieser Nutzer einloggen kann. Dieser Prozess wird generisch und unabhängig von der elektronischen Gesundheitsakte implementiert werden. Dies ermöglicht die Veröffentlichung der Implementierung als Open Source Projekt.

Außerdem werden zwei Android-Apps implementiert: eine für Patienten und eine für Leistungserbringer. Diese Apps sollen den Ablauf des Hochladens von Dokumenten mithilfe der QR-Code authentifizierung im Zusammenspiel mit der elektronischen Gesundheitsakte demonstrieren.

         

Lessons Learned

Während der Arbeit an diesem Projekt haben wir einige wichtige Erfahrungen gesammelt:

Werden viele neue Technologien genutzt, ist eine gewisse Einarbeitungszeit nötig. Hierbei sollte sich jedes Teammitglied in seinem eigenen Tempo im Rahmen eines kleinen Beispielprojekt mit den Technologien vertraut machen, und die gewonnenen Erkenntnisse mit den anderen Teammitgliedern teilen.

Die Aufgabenverteilung gestaltet sich bei einem Projekt in dieser Größenordnung deutlich von gewöhnlichen Projekten während des Studiums:
Wenige, aber dafür große Aufgaben müssen in Unteraufgaben aufgeteilt werden, die die Teammitglieder unabhängig von einander bearbeiten können. Zum Verteilen der Aufgaben ist es auch notwenig, einen Überblick über den aktuellen stand des Projekts und den Fortschritt bei den aktuellen Aufgaben zu behalten.
Hierbei hat es sich als besonders nützlich erweisen, dass jedes Teammitglied zu Beginn eines Treffens berichet hat, welche Aufgaben abgeschlossen wurden, und welche in Bearbeitung oder noch ausstehend sind.

Zeitpläne helfen, sich zu Organisieren und Aufgaben zu priorisieren. Es bietet sich an, einen langfristigen Zeitplan für die komplette Projektlaufzeit zu erstellen, der regelmäßig aktuelisiert wird. Aus ihm lässt sich dann ein kurzfristiger Zeitplan für die nächsten 1-2 Wochen erarbeiten.

Eine umfangreiche Kommunikation, sowohl im Team, als auch mit dem Auftraggeber, ist der Schlüssel zum Erfolg. Insbesondere bei räumlich verteilter Arbeit ist ein gemeinsamer Instant Messenger, wie z.B. Slack, von Vorteil. Dieser sollte auch vom Auftraggeber aktiv verwendet werden, damit dieser genauso unkompliziert angesprohen werden kann, wie der Rest des Teams. Probleme und Unklarheiten können so innerhalb weniger Minuten aus der Welt geschafft werden.

Eine Rollenverteilung im Team zu Beginn eines Projekts ist sinnvoll, um das Projekt in einer strukturierten Art und Weise zu beginnen. Allerdings sollten die Rollen während der Projektlaufzeit so angepasst werden, dass die Stärtken der einzelnen Teammitglieder optimal ausgenutzt werden.

Auch wenn von vielen Seiten aus Scrum als Entwicklungsprozess empfohlen wird, ist dieser Prozess nicht immer die beste wahl. Zu beginn haben wir uns zwar an die Scrum-Regeln gehalten, sie haben uns in unserer Arbeit aber mehr behindert, als gefördert.


Wöchentliche Treffen

WöchentlichesTreffen1 WöchentlichesTreffen2
einscannen

Architektur

Architektur Kommunikationsdiagramm

session_connect_login_page


Verwendete Technologien

Technologien Eclipse Android Studio Gradle Jira Docker Kubernetes Slack Box Mural Technologien2 TravisCi IBMCloud GitHub Android Keycloak JBoss


Kontakt