Chroma Experience

Smartarchivo — digitale Dokumentation in Nuklearmedizin und Radiochemie

Für rapp-iso aus Kappeln haben wir eine Systemlösung zur Digitalisierung von Dokumentations- und Verwaltungsprozessen konzipiert und realisiert. Die Anwender werden durch die Analyse und Bewertung der erhobenen Messwerte in die Lage versetzt, geltende Strahlenschutzrichtlinien, Industrienormen und gesetzliche Vorgaben zu erfüllen.

Um geltenden Auskunftsbestimmungen nachzukommen, werden regelmäßig Reports für Aufsichtsbehörden und ärztliche Stellen zur Verfügung gestellt.

Laborantin an einer elektronischen Untersuchungsanlage

Auftraggeber

rapp-iso GmbH

Geschäftsfelder

Beratung, Planung, Einkauf, Installation und Wartung von technischem Equipment in den Bereichen Radiologie, Strahlentherapie und Nuklearmedizin

Herausforderung

Ablösung der klassischen Dokumentation unter Berücksichtigung der Richtlinie Strahlenschutz in der Medizin gemäß der DIN 6855‑11

Lösung

Digitalisierung der klassischen Papier- und Office-Dokumentation von Betriebsvorkommnissen, Geräteprüfungen und Freimessungen; Konzeption und Realisierung einer webbasierten Plattform und mobiler Anwendungen unter Berücksichtigung geltender Gesetze und Richtlinien

Aktivitäten

Beratung, Architektur, UX-Design, UI-Design, Backend-Entwicklung, Entwicklung Web-Applikation, Entwicklung mobiler Anwendungen, Betrieb

Technologien

Propeller Web-Application-Framework, PostgreSQL, Native Android (Java), Newman, GitLab CI/CD, Web Components, Chart.js, Markdom

Projektzusammenfassung

Herausforderung

In der Nuklearmedizin muss regelmäßig geprüft werden, ob die eingesetzten Instrumente korrekt funktionieren, was anhand von Messungen eines radioaktiven Prüfstrahlers ermittelt wird. Die Prüfung und Dokumentation dieser Messergebnisse soll mithilfe einer digitalen Anwendung erfolgen und damit zeitaufwendige sowie fehleranfällige analoge Prozesse ablösen.

Vorgehen, Aktivitäten und Lösung

Um eine Produktvision entwickeln zu können, wurden zunächst fachliche und wirtschaftliche Perspektiven untersucht, deren Ergebnisse im Anschluss in die UX-Konzeption eingeflossen sind. Die so resultierenden Wireframes halfen uns dabei, gemeinsam mit dem Auftraggeber eine konkrete Vorstellung der zu realisierenden Lösung zu entwickeln. Die größte Hürde dabei war es, die physikalischen Zusammenhänge der verschiedenen Gerätetypen und Messverfahren zu verstehen und in eine homogene Modellierung und Implementierung zu überführen.

Ergebnis

Das entstandene Produkt „Smartarchivo“ bietet Einrichtungen mit nuklearmedizinischen und radiochemischen Instrumenten die Möglichkeit, verschiedene Prüfvorgänge diverser medizinischer Geräte mithilfe einer Tablet-Anwendung zu erfassen. Messpunkte werden hinterlegt und validiert – auch offline. In der angebundenen Web-Applikation werden die Daten sicher und hochverfügbar persistiert, versioniert und in Form von Reporten zur Verfügung gestellt.

Time to market

14 Wochen

Zusammenarbeit

4 Jahre

Major Releases

32

Commits

1.971

Laborantin an einem Versuchsaufbau
Laborantin an einem Versuchsaufbau
Laborantin an einem Versuchsaufbau
Laborantin an einem Versuchsaufbau
Torben Rapp
Torben Rapp Geschäftsführer und Medizinphysikexperte

Die Umsetzung einer Software zur Qualitätssicherung in der Nuklearmedizin wurde zusammen mit dem Team von Chroma Experience professionell realisiert. Was wir besonders schätzen, ist der persönliche und individuelle Kontakt.

Komplexe Materie

Problemstellung

Unser Auftraggeber bat uns, ihm bei der Konzeption und Realisierung einer Anwendung zur Erfüllung von Strahlenschutzauflagen und Sicherung des Qualitätsmanagements im Bereich nuklearmedizinischer und radiochemischer Geräte und Einrichtungen zur Seite zu stehen.

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

Prüfung von medizinischen Geräten

Im Umgang mit verschiedenen nuklearmedizinischen und radiochemischen 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 sogenannten Prüfstrahlers gemessen wird. Dieser gibt eine im Vorweg bekannte Strahlung ab, sodass 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‑11 (Konstanzprüfung nuklearmedizinischer Messsysteme) dokumentiert, ausgewertet, zugänglich gemacht und aufbewahrt werden. Dies geschah in der Vergangenheit mithilfe 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.

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.

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 Report-Empfä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 mithilfe von Single-Table-Inheritance in die Lage versetzt wurden, die benötigten Polymorphismen abzubilden.

Messergebnisse in grafischer Darstellung
Messergebnisse in tabellarischer Form

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 User Flows überführt und validiert. So konnten wir gewährleisten, dass sich das Grundkonzept auf alle Anwendungsszenarien ableiten lässt.

User Flow – Werterfassung

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 – Basisanwendung

User-Interface-Design

Dem Design-Konzept 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.

Atomare Design-Komponenten

Um den verschiedenen geräteimmanenten Bedienkonzepten der Tablet- und Web-Anwendung gerecht zu werden, weichen die beiden Komponenten-Bibliotheken deutlich voneinander ab. Die Bedienung mithilfe 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.

Tablet-Anwendung

Die Tablet-Anwendung wurde als native Android-Applikation realisiert. Dabei ist der Funktionsumfang so zugeschnitten, dass ein Anwender mithilfe des Tablets einfach und komfortabel Messwerte dokumentieren, Verfahrensanweisungen und Hinweise lesen sowie Betriebsbucheinträ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 zu geben, haben wir die komplexe Berechnungslogik zur Ermittlung der Reaktionsschwellen und Toleranzgrenzen für einzelne Arten von Messreihen sowohl in die serverseitige Anwendung als auch 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 Wertunterschreitung
Umgebungsmessung mit Normwert

Serverseitige Anwendung

Die serverseitige Anwendung wurde mithilfe 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.

Web-Anwendung – Basis-Interface

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 Autorisierungsprü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 mithilfe der Webapplikation 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.

Stefan Boy
Stefan Boy Smartarchivo Product Owner

Aus der anfänglich kleinen Software wurde durch kompetente Beratung und das Aufzeigen von Möglichkeiten ein richtig großes Projekt, dank dem wir heute unseren Kunden eine professionelle Software-Lösung anbieten können.
Wir können das Entwicklerteam jedem weiterempfehlen, der eine individuelle und an seine Bedürfnisse angepasste Lösung sucht.

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 für 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.

Projektmanagement
Paul Lewandowski
Requirements Engineering
Martin Brecht-Precht
Design-Lead
Martin Brecht-Precht
Technologie-Lead, Architektur
Torsten Krause
UX-Research, UX-Design
Florian Köppe
Backend-Entwicklung
Andrius Baliutis
Interface-Design
Ilona Maslioukovskagia
Frontend-Entwicklung
Michael Seelisch

Nächstes Projekt

Mann mit Armbanduhr in den Bergen
inotec Barcode Security GmbH Beratung ⟶ Architektur ⟶ UX-Design ⟶ UI-Design ⟶ Full-Stack-Entwicklung

inoVerify — Echtheit garantieren und Kundendaten gewinnen

Projekt ansehen