Startseite bisherige Projekte Tools/Snippets Bücherempfehlungen Publikationen Impressum Datenschutzerklärung
MLVAplus.net

Der große Erfolg der MIRU-VNTRplus Anwendung machte eine Verallgemeinerung der Anwendung für weitere Erreger und Typisierungsarten wünschenswert. Diesen Wunsch habe ich in der MLVAplus.net Anwendung umgesetzt, die ich in den Jahren 2008-2011 während meiner Zeit als PostDoc am Universitätsklinikum Münster selbständig entwickelt habe.

Neben einer Unterstützung für eine Vielzahl von Typisierungsdaten können verschiedene Nutzer angelegt werden. Ein Rechtemanagement erlaubt es, den Zugriff auf bestimmte Daten auf einen bestimmten Benutzerkreis einzuschränken. Über die Weboberfläche kann die Administration der Datenbanken, der Benutzerkonten und der Zugriffskontrolle übersichtlich durchgeführt werden.


Technik

Die Umsetzung erfolgte mittels Java und JavaServer Faces (JSF, Apache MyFaces). Wo es sinnvoll ist (z.B. für Bilder), kommen Servlets und JavaServer Pages (JSP) zum Einsatz. Zur intuitiven Gestaltung der Benutzeroberfläche werden AJAX-Komponenten für JSF (JBoss RichFaces 3) und JavaScript verwendet.

Zur Konfiguration werden XML-Dateien verwendet, die durch Java Architecture for XML Binding (JAXB) serialisiert werden. Zur Speicherung der Typisierungsdaten können verschiedene CSV-Dateien und SQL-Datenbanken verwendet werden (MySQL und PostgreSQL).

Es wurde berücksichtigt, dass große Mengen von Daten verwaltet werden können. MLVAplus.net kann problemlos mit Typisierungsinformationen für mehr als 100000 Isolate verwendet werden. Zeitaufwendige Berechnungen oder Datenbankvergleiche können dabei als Hintergrundprozess durchgeführt werden.

Die eigentliche Präsentationsschicht ist von der Logikschicht losgelöst. Die Präsentationsschicht kann über eine Schnittstelle mit der Logikschicht kommunizieren und wird als Observer über Veränderungen in den Daten informiert. Der Zugriff auf Benutzerdaten und Typisierungsdaten geschieht über das Entwurfsmuster Data Access Objects (DAO), welches eine sehr schöne Abstraktion bietet.

Beispielcode

internet Link RefreshingXMLDirLister - Eine parametrisierte Klasse, die versucht alle Dateien in einem Verzeichnis durch JAXB zu deserialisieren und als Liste zurückliefert. Der Inhalt des Verzeichnisses wird periodisch überprüft, um Veränderungen festzustellen. Im Falle von Veränderungen wird die Liste aktualisiert, und ein PropertyChangeListener wird abgefeuert.

Veröffentlichungen

Die Anwendung wurde auf dem Jahrestreffen der Amerikanischen Gesellschaft für Mikrobiologie (ASM) im Jahr 2010 in San Diego vorgestellt. internet Link Poster (engl.)

Screenshots

Einige Screenshots. Zum Vergrößern bitte anklicken.


Anzeige der Typisierungsdaten

Verwaltung der Datenquellen
und Zugriffskontrolle

Minimum Spanning Tree für die MLVA-Daten


Links

Die Homepage von MLVAplus (früher http://www.mlvaplus.net) ist mittlerweile leider offline.
Impressum - Datenschutzerklärung