Testen, testen, testen!

Nein, der Titel dieses Beitrags bezieht sich nicht auf die bei vielen Menschen nicht allzu beliebten COVID-Tests mit dem oft als unangenehm empfundenen Abstrich. Nein, wir bleiben natürlich unserem zentralen Thema Laborinformationssysteme / LIMS weiter treu.

Die meisten Laborinformationssystemen - natürlich auch unser LIMS "uniLIME" - werden ganz exakt an die Notwendigkeiten des Auftraggebers angepasst, um seine Abläufe so genau wie möglich abzubilden und damit eine optimale Nutzung zu erlauben. Andernfalls müsste das Labor seine Abläufe an die Vorgaben des LIMS anpassen, was dann den Nutzen des LIMS stark einschränken würde.

Nun sind aber solche Anpassungen wie alles im Bereich Softwareentwicklung davon betroffen, dass es bis dato nicht möglich ist, 100% fehlerfreie Programme zu erstellen. Vor dem produktiven Einsatz müssen die Änderungen daher ausführlich getestet werden. Im Normalfall läuft dieser Prozess zweistufig ab - einerseits direkt beim Hersteller/Entwickler und anderseits noch beim Anwender. Der zweite Teil ist unbedingt erforderlich, da man als Entwickler doch eine andere Sicht der Dinge hat und zum einen nie genau die exakte Arbeitsweise der Anwender kennen wird, zum anderen auch auf bestimmte Kombinationen nicht selbst kommen würde, die aber der Endbenutzer aus seinem anderen Wissensstand ausführen könnte und damit erst bestimmte Fehler auslösen.

Aus diesem Grund stellt man den Anwendern normalerweise neben der eigentlichen Produktivversion eine zusätzliche Testversion zur Verfügung, wo diese dann die Änderungen gründlich testen, bevor sie nach erfolgreichem Abschluss im produktiven System installiert werden. Dieses Testen dauert - je nach Umfang der Änderungen und der zeitlichen Möglichkeiten der Anwender - meist zwischen einigen Tagen und Wochen. Im Extremfall können aber auch Monate vergehen.

So weit die Theorie und zugleich meistens Vorgabe der Geschäftsführung bzw. IT-Abteilung. In der Praxis kommt es aber nicht selten vor, dass diese Testabläufe abgekürzt oder überhaupt ausgelassen werden. Häufig fehlt den Anwendern einfach die Zeit, da sie mit dem Tagesgeschäft schon mehr als ausgelastet sind. Oder eine gewünsche Programmanpassung ist sehr dringend, z.B. Voraussetzungen für einen kurzfristig an Land gezogenen eiligen, aber zugleich lukrativen Auftrag, und man kann einfach nicht den Testzeitraum abwarten. Hier muss man dann einfach "ins kalte Wasser springen" und sich darauf verlassen können, dass etwaige Fehler vom Hersteller/Entwickler des LIMS kurzfristig behoben werden - in unserem Fall ist dies bei uniLIME meist eine Sache von wenigen Stunden.

Komplizierter wird es aber, wenn eine sehr umfangreiche Programmänderung (die z.B. die Änderung des ganzen Datenmodells bedingt) korrekt und ausführlich getestet wird, aber inzwischen kleinere, aber sehr dringende Änderungen umzusetzen sind. Als Entwickler muss man dann zwei Programmversionen parallel führen, da man die kleine Änderung ja nicht in der - noch nicht vollständig getesteten und zum Produktivbetrieb freigegeben - Hauptversion durchführen kann. Man muss also diese Änderung doppelt programmieren, einerseits in der Version vor der großen Änderung und andererseit in der aktuellen (noch nicht freigegebenen) Hauptversion. Und wenn es ganz besonders kompliziert werden soll, kann man die kleine Änderung nicht einmal gleichartig in beiden Versionen durchführen, wenn sie nämlich von der großen Änderung abhängig ist ...

< Früherer Beitrag     Neuerer Beitrag >