Markenwerk GmbH

Smartarchivo

Nuklear, digital und gesetzeskonform

Konzeption und Entwicklung einer mobilen Anwendung zur Digitalisierung von Dokumentations- und Verwaltungsprozessen unter Erfüllung von Strahlenschutzauflagen in der Nuklearmedizin

Projekt

Smartarchivo

Kunde

rapp-iso GmbH

Disziplinen

Architektur, Konzeption, UX-Design, Interface-Design, Realisierung

Komplexe Materie

Problemstellung

Unser Kunde Rapp ISO aus Kappeln – ein Dienstleister im Bereich der Radiologie, Strahlentherapie und Nuklearmedizin – bat uns, ihm bei der Konzeption und Realisierung einer Anwendung zur Erfüllung von Strahlenschutzauflagen und Sicherung des Qualitätsmanagements im Bereich nuklearmedizinischer Geräte und Einrichtungen zur Seite zu stehen.

Landesprogramms Wirtschaft der Europäischen Union

So haben wir gemeinsam ein Produkt entworfen, das den komplexen Anforderungen gerecht wird und im Rahmen des Landesprogramms Wirtschaft durch die Europäische Union gefördert wurde.

Prüfung von Messinstrumenten

Im Umgang mit verschiedenen nuklearmedizinischen Anwendungen sowie im Betrieb einer entsprechenden Einrichtung kommen diverse Messinstrumente zum Einsatz, deren Hauptaufgabe die Erfassung radioaktiver Strahlung ist. Um sicherzustellen, dass die Messinstrumente korrekte Werte liefern, müssen sie regelmäßig geprüft werden. Das geschieht in der Regel, indem die Strahlung eines so genannten Prüfstrahlers gemessen wird. Dieser gibt eine im Vorwege bekannte Strahlung ab, so dass es einen bekannten Toleranzbereich für das zu erwartende Messergebnis gibt. Auf diese Weise kann festgestellt werden, ob das Instrument korrekt funktioniert.

Dokumentation und Auflagen

Die so gewonnenen Messungen, die die Messgeräte für den weiteren Einsatz qualifizieren, müssen entsprechend der Richtlinie Strahlenschutz in der Medizin gemäß der DIN 6855 (Konstanzprüfung nuklearmedizinischer Messsysteme) dokumentiert, ausgewertet, zugänglich gemacht und aufbewahrt werden. Dies geschah in der Vergangenheit mit Hilfe von Office-Dokumenten, Papier, E-Mail und Fax.

Dabei müssen je nach Art des Geräts, Hersteller und Messverfahren verschiedene Methoden angewendet, Werte erfasst und unterschiedliche Datenpunkte persistiert sowie in Form von elektronischen Reports bereitgestellt werden.

Smartarchivo Chart
Messergebnisse im Diagram
Smartarchivo Table
Messergebnisse in tabellarischer Form

Weitere Anforderungen zur Erfüllung von Strahlenschutzregularien

Um den kompletten Betrieb einer nuklearmedizinischen Einrichtung abzubilden, müssen weitere Themen, die nicht direkt in Zusammenhang mit der Prüfung von Messgeräten stehen, bearbeitet werden. So müssen den Fachabteilungen Arbeitsanweisungen zur Verfügung gestellt, Vorschriften zugänglich gemacht, Genehmigungen erteilt und Vorkommnisse im Betrieb dokumentiert werden.

Zielfindung

Es sollte basierend auf den Anforderungen und der entsprechenden Rechtslage eine Anwendung entwickelt werden, die es ermöglicht, von der Prüfung und Dokumentation von Messinstrumenten über die Informationsbereitstellung bis hin zur Dokumentation von Vorkommnissen im Einrichtungsbetrieb alle gesetzlichen Auflagen zu erfüllen.

Die Anwendung erforderte die Realisierung von zwei zentralen Bestandteilen: einer serverseitigen Applikation zur Verwaltung von Mandanten, Benutzern, Messreihen, Dokumenten, Reports und Betriebsbüchern und einer mobilen Tablet-Anwendung zur Erfassung von Messwerten sowie zur Ansicht von Anweisungen, Auflagen und Hinweisen.

Tablet Anwendung und Webanwendung
Tabletanwendung und serverseitige Webapplikation

Erschwerte Bedingungen

Aus den gesetzlichen Anforderungen sowie den zu erwartenden Gegebenheiten in den Praxen und Krankenhäusern ergaben sich weitere Anforderungen an die zu konzipierende Lösung. So war die Automatisierung des Reportings unter Berücksichtigung einer strengen Authentifizierung der Reportempfänger eine relevante Herausforderung. Die Tatsache, dass ein Großteil der Anwender die Dokumentation von Messergebnissen in Bereichen ohne Zugriff auf das Internet durchführt, erforderte die Integration einer Offline-Funktionalität mit einem zeitlich versetzten Datenabgleich.

Fachliche Herausforderung

Die größte fachliche Hürde war es, die physikalischen Zusammenhänge der verschiedenen Gerätetypen und Messverfahren zu verstehen und in eine homogene Modellierung und Implementierung zu überführen. Dabei wurden über 20 ähnliche, aber nicht identische Datenstrukturen identifiziert. Um die zum einen auf radioaktivem Zerfall und zum anderen auf Kontinuität basierten Serientypen und Grenzwertberechnungen in einem allgemeingültigen Modell auszudrücken, wurde ein generisches Schema entworfen, dessen Ausprägungen mit Hilfe von Single-Table-Inheritance in die Lage versetzt wurden, die benötigten Polymorphismen abzubilden.

Produktdesign

Auf Basis der verschiedenen Anforderungen haben wir ein Produkt konzipiert, das auf eine intuitive und verständliche Bedienbarkeit abzielt, um die Komplexität der zugrunde liegenden Prozesse so weit wie möglich vom Anwender fernzuhalten. Der Grundgedanke war, dem Nutzer immer nur die Optionen anzubieten, die zur Erfüllung einer einzelnen Aufgabe in dem jeweiligen Kontext benötigt werden. Die dadurch entstehende Klarheit der Benutzeroberfläche erlaubt es dem Anwender, in kurzer Zeit ohne Kontextwechsel und mit minimaler kognitiver Herausforderung die an ihn gestellte Aufgabe zu bewältigen.

Um sicherzustellen, dass sich das Konzept generell anwenden lässt, wurden alle relevanten Abläufe aus Nutzersicht in Userflows überführt und validiert. So konnten wir gewährleisten, dass sich das Grundkonzept auf alle Anwendungsszenarien ableiten lässt.

Userflow Smartarchivo
Userflow – einer von vielen

Um die Oberflächen zur Bedienung der Anwendung so weit wie möglich reduzieren zu können, haben wir ein äußerst feingranulares Rollen- und Rechtemanagement geplant. Mit dessen Hilfe lässt sich der Funktionsumfang – und damit auch die Optionen der Oberflächen – für jeden einzelnen Anwender je nach Anforderung minimal konfigurieren.

Um auf Basis der geplanten Produktfeatures die einzelnen benötigten Ansichten zu definieren, wurden für einen Großteil der komplexen Anwendungsfälle Wireframes angefertigt, die der zukünftigen Realisierung vorgreifen. Anhand der Wireframes haben wir in einem frühen Stadium der Produktentwicklung eine Grundlage geschaffen, die es uns und unserem Auftraggeber erlaubte, die fachliche Richtigkeit, die technische Machbarkeit und eine optimale Bedienbarkeit sicherzustellen.

Wireframe Smartarchivo
Wireframe der Webapplikation

User Interface-Design

Dem Designkonzept folgend haben wir die Benutzeroberflächen der mobilen Anwendung und der Webapplikation als modulare Bibliotheken ausgearbeitet. Dabei haben wir vom Design bis zur Implementierung großen Wert auf die Erstellung wiederverwendbarer Komponenten gelegt, die einem atomaren Ansatz folgen. So können wir bei der Integration weiterer Produktfeatures auf diese Komponenten zurückgreifen, was dazu führt, dass der Anwender ein einheitliches Bedienkonzept und stringente Funktionsprinzipien vorfindet. Darüber hinaus ist die Verwendung bereits bekannter, etablierter und getesteter Komponenten äußerst effizient und reduziert die Fehlerrate erheblich.

Atomic Design

Um den verschiedenen geräteimmanenten Bedienkonzepten der Tablet- und Web-Anwendung gerecht zu werden, weichen die beiden Komponenten-Bibliotheken deutlich voneinander ab. Die Bedienung mit Hilfe eines Zeigegerätes – wie einer Maus – stellt andere Anforderungen als die Bedienung durch Touch-Eingabe. So gibt es große Übereinstimmung im generellen, produktspezifischen Stil, aber deutliche Unterschiede in den einzelnen bedienungsrelevanten UI-Elementen wie Schaltflächen, Eingabe- oder Navigationselementen.

Atomic Design Komponenten
Atomare Design Komponenten
Atomic Design Template
Template zusammengesetzt aus Atomen

Tablet-Anwendung

Die Tablet-Anwendung wurde als native Android-Applikation realisiert. Dabei ist der Funktionsumfang so zugeschnitten, dass ein Anwender mit Hilfe des Tablets einfach und komfortabel Messwerte dokumentieren, Verfahrensanweisungen und Hinweise lesen sowie Betriebsbuch-Einträge verfassen kann.

Der relevanteste Anwendungsfall ist das Erfassen von Messwerten, weswegen wir hierauf das größte Augenmerk gelegt haben. Um dem Anwender eine Rückmeldung über Plausibilität der Messungen geben zu können, haben wir die komplexe Berechnungslogik zur Ermittlung der Reaktionsschwellen und Toleranzgrenzen für einzelne Arten von Messreihen nicht nur in die serverseitige Anwendung, sondern ebenso in die Tablet-Applikation integriert. So wird dem Anwender direkt angezeigt, ob die von ihm erfassten Werte in den zu erwartenden Bereich fallen.

Umgebungsmessung mit Fehlerhinweis
Umgebungsmessung mit Wertunterschreitung
Umgebungsmessung
Umgebungsmessung mit Normwert

Serverseitige Anwendung

Die serverseitige Anwendung wurde mit Hilfe unseres Web-Application-Frameworks Propeller umgesetzt. Dabei haben wir ein projektspezifisches UI-Kit realisiert, um auch hier mit einer Komponenten-Bibliothek arbeiten zu können, die die zukünftige Integration weiterer Produktfeatures vereinfacht.

Serverseitige Webapplikation

Auf API-Ebene kommt RESTful JSON als Protokoll zum Einsatz. Als Authentifizierungsmethode haben wir uns für JSON-Webtokens entschieden. Durch die Zustandslosigkeit auf Protokollebene lassen sich einige der Probleme, die durch die Offline-Anforderung entstehen, einfach lösen.

Die API-Endpunkte werden direkt auf Controller-Implementierungen geroutet, die bereits bei Instanziierung Authorisierungsprüfungen und Datenplausibilisierung durchführen. So kann gewährleistet werden, dass unbefugte oder invalide Zugriffe noch vor der Ausführung von Controller-Methoden abgelehnt werden.

Als Persistenzsystem kommt eine PostgreSQL-Datenbank zum Einsatz.

Die API-Dokumentation wird seitens des Frameworks inklusive Beispiel-Anfragen direkt bereitgestellt, was die Entwicklung der API-Clients erheblich vereinfacht.

Reporting

Das Reporting der Messreihen-Dokumentationen lässt sich mit Hilfe der Web-Applikation so konfigurieren, dass die betroffenen Messreihen für ausgewählte Geräte und einen spezifischen Zeitraum in einem Report zusammengefasst werden. Der Report wird um einen Auszug aus dem Betriebsbuch für den gewählten Zeitraum ergänzt.

Für jeden Report wird eine nicht erratbare URL auf Basis von UUIDs generiert und mit einem Zugriffsschlüssel versehen. Diese Informationen können dann an die jeweilige Aufsichtsbehörde weitergegeben werden. Der Inhalt und die Aufbereitung der Reportdaten wurden detailliert abgestimmt, um zu gewährleisten, dass diese von den Behörden akzeptiert werden.

Testing und Verteilung

Um das Produkt kontinuierlich warten und weiterentwickeln zu können, ohne dabei Stabilität und Performance der Bestandsfunktionalität zu gefährden, wurden für alle API-Endpunkte Testszenarien entworfen und die benötigten Tests definiert. Auf diese Weise können im Rahmen von Black-Box-Tests sowohl die Funktion als auch die Performance automatisiert geprüft werden. Dabei werden gegen einen entsprechend präparierten Mandanten die Testszenarien ausgeführt und die Ergebnisse auf Protokoll- und Antwortebene validiert sowie gegen Performance-Budgets abgeglichen.

Die Tests werden bei Übergabe jeder neuen Version in das Versionskontrollsystem durchgeführt. Nur nach Bestehen aller Testszenarien lässt sich die jeweilige Version auf die Staging- oder Produktivumgebung veröffentlichen. So stehen verschiedene Versionen in verschiedenen Stadien bereit.

Alle Maßnahmen der Inbetriebnahme, wie Build, Testing und stagebasierte Verteilung werden im Rahmen der CI/CD-Funktionalität des Versionskontrollsystems konfiguriert, versioniert und ausgeführt.