Article
Qualitätssicherung im Management von Softwareprojekten der klinischen Forschung
Search Medline for
Authors
Published: | September 13, 2012 |
---|
Outline
Text
Einleitung und Fragestellung: In der universitären klinischen Forschung entstehen schnell umfangreiche Softwareprojekte für projektspezifische Lösungen, die oft innerhalb kleiner Budgetrahmen realisiert werden müssen. Kernpunkte sind strukturierte Datenerfassung, -auswertung und Kommunikation mit bestehenden Informationssystemen. Um die Qualität der Software auf einem hohen Niveau halten zu können, ist der Einsatz von Systemen zur Qualitätssicherung notwendig. Strukturierte systematische Softwaretests und Ticketsysteme zum Bug-Management sind hierfür essentielle Komponenten.
In diesem Beitrag stellen wir an Hand des Study Management Tools des Clinical Trial Centers (CTC-A) Aachens [1] mit der Entwicklung einer Software-Testsuite unter JUnit [2] und dem Einsatz des Bug-Tracking und -Reporting Tools Trac [3] zwei entsprechende Verfahren vor und bewerten die so erreichte Qualitätsverbesserung in der Softwareentwicklung.
Material und Methoden: Das Study Management Tool ist eine Softwarelösung zum Management klinischer Studien, das innerhalb des Google Web Toolkits (GWT) [4] in Java entwickelt wurde. Erweiterungen des Funktionsumfanges führen immer wieder zu Fehlern (Bugs), die nur durch viel Aufwand in einer bislang manuellen, unstrukturierten Testphase erfasst werden können.
Automatische Tests lassen sich in Modultests, die Komponenten auf der rein technischen Ebene im Quellcode testen, und Akzeptanztest, die das Verhalten von Benutzern auf der Oberfläche des Systems nachahmen, unterscheiden. Bei der Definition von Testfällen wird die zu testende Software vollständig erfasst, ähnliche Komponenten identifiziert und kategorisiert. So können für die verschiedenen Kategorien generelle Testfälle designt werden, die sich in der Implementierung leicht auf alle Klassen der Kategorie übertragen lassen.
In unserer Anwendung wurden mit dem Eclipse Modelling Framework [5] und Xpand [6] automatisch Driver-Klassen für Oberflächenkomponenten generiert, mit denen die, in Webanwendungen schwer identifizierbare, Benutzerschnittstellen einfach und komfortabel angesprochen werden können. Je nach Modul und Funktion wurden generische Testklassen identifiziert, die die umfangreichen Ein- und Ausgabemöglichkeiten der Anwendung in fünf einfache Kategorien teilen: Login, Services, Reports, Overviews und Detailfenster.
Durch die für Webanwendungen typische asynchrone Kommunikation muss die Geschwindigkeit des Datenaustausches zwischen den MVC-Schichten berücksichtigt werden, was in der Testsuite durch in integrierten Messungen ermittelten Zeitkonstanten geschieht.
Trac ist ein Management-Tool für die Softwareentwicklung, mit der sich u.a. auftretende Bugs erfassen, und Lösungswege managen und dokumentieren lassen. Dabei werden Bugs als Tickets formuliert, Entwicklern zugewiesen und der Fortschritt protokolliert. Trac ermöglicht, Bilder (Screenshots) an das Ticket zu heften. Tickets können entweder aus dem Study Management Tool heraus, per Mail oder im Trac-System selbst angelegt werden.
Ergebnisse: Das Bug-Reporting Tool Trac und die Testsuite werden erfolgreich zur Qualitätssicherung des Study Management Tool eingesetzt. Im ersten Quartal 2012 wurden 15 neue Versionsupdates der Software in den laufenden Betrieb genommen, wobei neue Versionen durch die verkürzte Testphase deutlich schneller veröffentlicht werden konnten. Darüber hinaus hat sich die relative Anzahl neu auftretender Bugs deutlich verringert.
Diskussion: Beide Tools verkürzen den Optimierungskreislauf und verbessern die Qualität der Software. Die Testsuite sichert die Stabilität der Software und erleichtert das Ressourcenmanagement einzelner Entwicklungsschritte. Trac ermöglicht die vollständige Erfassung aller Bugs und protokolliert deren Lösungen. Beide Tools werden künftig auch in weiteren Softwareprojekten wie Register- und Studiendatenbanken eingesetzt.
Literatur
- 1.
- Deserno TM, Deserno V, Legewie V, Schafhausen J, Eisert A, Schmidt-Kotsas A, Kirstein S, Willems J, Spitzer K, Schulz JB. IT-Unterstützung für translationales Management klinischer Studien auf Basis des Google Web Toolkits. In: 56. Jahrestagung der Deutschen Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie (gmds), 6. Jahrestagung der Deutschen Gesellschaft für Epidemiologie (DGEpi); 2011 Sep 26-29; Mainz, Deutschland. Doc11gmds023. DOI: 10.3205/11gmds023
- 2.
- JUnit [Internet]. Available from: http://www.junit.org/
- 3.
- Trac [Internet]. Available from: http://trac.edgewall.org/
- 4.
- GWT [Internet]. Available from: http://code.google.com/intl/de/webtoolkit/
- 5.
- Eclipse Modelling Framework [Internet]. Available from: http://www.eclipse.org/emf/
- 6.
- Xpand [Internet]. Available from: http://www.eclipse.org/Xpand