gms | German Medical Science

GMDS 2012: 57. Jahrestagung der Deutschen Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie e. V. (GMDS)

Deutsche Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie

16. - 20.09.2012, Braunschweig

Qualitätssicherung im Management von Softwareprojekten der klinischen Forschung

Meeting Abstract

  • Daniel Haak - Institut für Medizinische Informatik, RWTH Aachen, Deutschland
  • Daniel Winkels - Institut für Medizinische Informatik, RWTH Aachen, Deutschland
  • Simon Kirstein - Institut für Medizinische Informatik, RWTH Aachen, Deutschland
  • Verena Deserno - RWTH Aachen, Studienzentrum der Medizinischen Fakultät am Universitätsklinikum Aachen, Deutschland
  • Thomas M. Deserno - Institut für Medizinische Informatik, RWTH Aachen, Deutschland

GMDS 2012. 57. Jahrestagung der Deutschen Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie e.V. (GMDS). Braunschweig, 16.-20.09.2012. Düsseldorf: German Medical Science GMS Publishing House; 2012. Doc12gmds040

doi: 10.3205/12gmds040, urn:nbn:de:0183-12gmds0404

Published: September 13, 2012

© 2012 Haak et al.
This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by-nc-nd/3.0/deed.en). You are free: to Share – to copy, distribute and transmit the work, provided the original author and source are credited.


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 External link
2.
JUnit [Internet]. Available from: http://www.junit.org/ External link
3.
Trac [Internet]. Available from: http://trac.edgewall.org/ External link
4.
GWT [Internet]. Available from: http://code.google.com/intl/de/webtoolkit/ External link
5.
Eclipse Modelling Framework [Internet]. Available from: http://www.eclipse.org/emf/ External link
6.
Xpand [Internet]. Available from: http://www.eclipse.org/Xpand External link