in Datenstrukturen und Prozessen Frank Ganske, MATHEMA ... - Iqnite
in Datenstrukturen und Prozessen Frank Ganske, MATHEMA ... - Iqnite
in Datenstrukturen und Prozessen Frank Ganske, MATHEMA ... - Iqnite
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Titel<br />
Akzeptanztests komplex – In <strong>Datenstrukturen</strong> <strong>und</strong> <strong>Prozessen</strong><br />
Referent(en)<br />
<strong>Frank</strong> <strong>Ganske</strong>, <strong>MATHEMA</strong> Software<br />
An wen richtet sich der Beitrag?<br />
Projektmanagement, Qualitätsmanagement, Testorganisation, Entwickler<br />
Stichwörter<br />
FitNesse, Personalwesen, Regression, GKV-Zertifikat<br />
Zusammenfassung<br />
1. Motivation<br />
Betriebswirtschaftliche Anwendungssoftware, <strong>in</strong>sbesondere Standardsoftware, verarbeitet sehr<br />
komplexe <strong>Datenstrukturen</strong> <strong>in</strong> sehr komplexen <strong>Prozessen</strong>. Gleichzeitig werden Teile des Systems,<br />
teils aufgr<strong>und</strong> gesetzlicher Anforderungen, permanent verändert. Der typische Lebenszyklus solcher<br />
Anwendungen umfasst Jahrzehnte. Wie realisiert man dafür mit vertretbarem Aufwand masch<strong>in</strong>elle<br />
Regressionstests, die umfassend <strong>und</strong> änderungstolerant s<strong>in</strong>d?<br />
2. H<strong>in</strong>tergr<strong>und</strong><br />
Konkretes Beispiel ist bei der deutschen Personalabrechnung im Bereich Sozialversicherung das<br />
DEÜV-Meldewesen [1]. Die ITSG liefert umfassende fachliche Testvorgaben [2], die alle aktuellen<br />
Anforderungen abdecken. Um die Systemuntersuchung abzuschließen, s<strong>in</strong>d Entwicklung <strong>und</strong><br />
Fachabteilung gefordert. Danach wurden Datensicherungen der Zertifizierung zur<br />
Regressionsprüfung der Meldungen genutzt. Dabei wird jedoch ke<strong>in</strong>e Erfassung getestet; zudem<br />
veralten die Daten. Nach wenigen Jahren existieren so viele neue Vorgaben, dass der Nutzen<br />
fraglich wird. Die ITSG liefert dafür permanente Testaufgaben, die neue Anforderungen prüfen.<br />
Trotzdem fehlt e<strong>in</strong> Regressionstest über das gesamte Verfahren.<br />
3. Lösung<br />
Neben dem manuellen Test, wurde e<strong>in</strong> Framework auf Basis von FitNesse umgesetzt, um die<br />
Testvorgaben automatisiert ausführen zu können. Alle Voraussetzungen werden im Test erstellt<br />
(neue Firma, neuer Mitarbeiter, Monatsabschluss...), bevor das erste Ergebnis geprüft wird.<br />
Es wird beschrieben, welche Schnittstelle gewählt wurde <strong>und</strong> warum.<br />
Drei Generationen Fixture-Programme wurden entwickelt:<br />
<br />
E<strong>in</strong> Fixture pro Funktion war viel zu aufwändig. Ergebnis war e<strong>in</strong> Kommunikationsframework,<br />
dessen Aufgaben <strong>und</strong> Umsetzung beschrieben werden.<br />
iqnite 2013 Deutschland, 23. – 25. April <strong>in</strong> Düsseldorf - 1 -
Das Fixture verarbeitet als XML serialisierte Kommunikationsdaten, die im FitNesse Wiki<br />
verwaltet werden. Es wird begründet, warum auch das noch nicht praktikabel war. Ergebnis<br />
war e<strong>in</strong> e<strong>in</strong>zelnes Fixture-Programm, das jede Serverfunktion aufrufen <strong>und</strong> auswerten kann.<br />
Die Lösung ist dynamische Instanzierung aller Strukturen zur Laufzeit. Deklariert wird nur,<br />
was von den Standardwerten abweicht. Diese Tests s<strong>in</strong>d unabhängig von allen Änderungen,<br />
die den Fall nicht direkt betreffen. Die Bereitstellung der umfangreichen H<strong>in</strong>tergr<strong>und</strong>daten<br />
wird beschrieben.<br />
Es wird erläutert, wie durchgängig natürlichsprachige Bezeichner (z. B. „1. Monat“) entsprechend der<br />
Client-Oberfläche erreicht werden können.<br />
Die Auswahl e<strong>in</strong>es der von FitNesse unterstützten Testsysteme wird begründet <strong>und</strong> erläutert, wie<br />
damit e<strong>in</strong>e fachliche Testsprache def<strong>in</strong>iert wird.<br />
4. Ergebnis<br />
Die spezifischen Eigenschaften des Tests s<strong>in</strong>d von der Beschreibung des allgeme<strong>in</strong>en Systems<br />
getrennt. Ändert sich das System, muss der Test nicht angepasst werden. Solche Tests konnten<br />
unverändert, über mehrere Release-Versionen, erfolgreich ausgeführt werden.<br />
5. Perspektive<br />
Die am Beispiel Personalabrechnung gezeigten Muster lassen sich auf andere Bereiche übertragen.<br />
Das Testsystem, die fachliche Domäne, die Schnittstelle s<strong>in</strong>d austauschbar. Nach e<strong>in</strong>em CORBA<br />
basierten System wurde bereits e<strong>in</strong>e allgeme<strong>in</strong>ere EJB-Lösung implementiert.<br />
6. Zusammenfassung<br />
Wenn e<strong>in</strong>e Zertifizierung mit hohem Aufwand verb<strong>und</strong>en ist, werden permanente Tests oft zu re<strong>in</strong>en<br />
Stichproben. Durch das gezeigte Vorgehen kann gesichert werden, dass der zertifizierte Zustand<br />
erhalten bleibt, wenn sich das System <strong>in</strong> Teilen ändert.<br />
[1] Geme<strong>in</strong>same Gr<strong>und</strong>sätze für die Datenerfassung <strong>und</strong> Datenübermittlung zur Sozialversicherung<br />
nach § 28b Absatz 2 SGB IV <strong>in</strong> der vom 01.06.2012 an geltenden Fassung (PDF-Datei, 1.109<br />
KB): http://www.aok-<br />
bus<strong>in</strong>ess.de/fileadm<strong>in</strong>/user_upload/global/Fachthemen/R<strong>und</strong>schreiben/2012/2012-03-<br />
15_GG28bSGBIV.pdf<br />
[2] Überblick über den Aufbau der Systemuntersuchung: http://www.gkvag.de/upload/Das_Verfahren_Ueberblick_521.pdf<br />
Biografie<br />
<strong>Frank</strong> <strong>Ganske</strong> (frank.ganske@mathema.de) ist Senior Developer bei der <strong>MATHEMA</strong> Software<br />
GmbH <strong>in</strong> Erlangen. Er entwickelt seit 1991 betriebswirtschaftliche Individual- <strong>und</strong> Standardsoftware,<br />
hat das DEÜV-Meldeverfahren ab 2005 als Entwickler umgesetzt <strong>und</strong> die ITSG Systemuntersuchung<br />
mit anschließendem QS-Prozess, sowie die Weiterentwicklung bis 2012 begleitet.<br />
iqnite 2013 Deutschland, 23. – 25. April <strong>in</strong> Düsseldorf - 2 -