Zum Inhalt springen

Suchen...

Testen komplexer E-Government-Systeme

E-Government Systeme testen: Erhalte Einblicke in Testmethoden für Sicherheit und Benutzerfreundlichkeit. Perfekt für optimale E-Government Plattformen!

Aktualisiert: 7 Min. Lesezeit
Blaupausen-Zeichnung eines klassischen Säulengebäudes, dessen Mittelteil sich in Leiterbahnen auflöst, gekrönt von einem Schild mit Häkchen.

Um eine breite Akzeptanz von E-Government-Systemen zu schaffen, sind fehlerfreie Funktionalität, gute Benutzbarkeit, Sicherheit und Performanz unerlässlich. Doch woher weiß der Auftraggeber eines solchen Systems, ob die gelieferte Software tatsächlich alle gestellten Anforderungen erfüllt? Der folgende Beitrag beschreibt Herangehensweise und Nutzen systematischer Abnahmetests am Beispiel der E-Government-Plattform des Freistaates Sachsen.

2005 begann der Freistaat Sachsen im Zuge einer E-Government-Initiative den Aufbau einer zentralen Infrastruktur-Plattform für E-Government-Anwendungen. Diese enthält Komponenten, die für die Realisierung von E-Government-Prozessen benötigt werden. Durch einfache Integration der Basiskomponenten lassen sich neue E-Government-Anwendungen effektiv abbilden und für Anwender einfach zugänglich machen. Zu den Basiskomponenten der E-Government-Plattform gehören neben dem Lebenslagenportal Amt24, der Formularservice, das Geoportal Sachsenatlas, das Integrationsframework, ein zentrales Content-Management-System sowie Komponenten für den elektronischen Zahlungsverkehr und die elektronische Signatur und Verschlüsselung. Für die Verantwortlichen der E-Government-Plattform ist klar: Keine dieser Komponenten darf in den Produktivbetrieb gehen, bevor die Abnahmetests abgeschlossen und die Abnahmekriterien erreicht sind. Die Nützlichkeit von systematischen Tests hat sich immer wieder gezeigt, bei Individualsoftware ebenso wie bei Standardprodukten. Tausende Fehler wurden seit 2005 im Fehlermanagementsystem dokumentiert und behoben. Zehntausende Testfälle wurden durchgeführt. Das Fehlerspektrum reicht von kleinen Layoutproblemen bis zu schweren Fehlern, die im Produktivbetrieb fatal gewesen wären. Doch der Test deckte auch fehlerhafte oder unvollständige Anforderungen auf, die so noch vor Produktivsetzung z.B. durch Change Request bereinigt werden konnten.

Was beim strukturierten Test einer E-Government-Plattform zu beachten ist, wird im Folgenden am Testprozess erklärt.

1. Testplanung

Um spätere Überraschungen zu vermeiden, sollte die Planung des Tests gleichzeitig mit der Planung des Entwicklungsprojekts beginnen, wobei Budget, Besetzung und Zeitplanung speziell für das Testprojekt vorgesehen werden. Wesentlich für die Planung des Testaufwandes sind die Testziele. Bei besonders öffentlichkeitswirksamen Systemen stehen neben der korrekten Funktionalität Performanz und Benutzbarkeit im Vordergrund. Systeme, die kritische Funktionen erfüllen oder personenbezogene Daten verarbeiten, sind auf Sicherheitslücken zu prüfen. Die Integration von alten und neuen Fachsystemen macht einen umfassenden Test der Schnittstellen und der Datenübertragung unabdingbar.

Standards wie der Testprozess nach ISTQB, Softwarequalitätsmerkmale nach ISO 9126-1:2001 und Testdokumentation nach IEEE 829:2008 helfen bei der effektiven Testplanung.

2. Testvorbereitung

Zur Phase der Testvorbereitung gehören die Testspezifikation, die Bereitstellung von Testwerkzeugen und der Testumgebung sowie die Beschaffung oder Erstellung von Testdaten. Die Einrichtung eines speziellen Testcenters hat sich hierfür besonders bewährt. An vielen E-Government-Projekten sind Testspezialisten aus der IT und Tester aus unterschiedlichen Fachbereichen und Behörden beteiligt. Das Testcenter bietet ihnen nicht nur gemeinsame Arbeitsplätze sondern auch die Möglichkeit, sich zu methodischen und fachlichen Fragen auszutauschen und über die Linienorganisation hinweg effektiv zusammenzuarbeiten. Oft werden so bereits während der Testspezifikation viele Fragen zum Sollverhalten der zu testenden Anwendung auf kurzem Weg geklärt.

3. Testdurchführung

Bei den im öffentlichen Sektor üblichen Werkverträgen, muss die Abnahme der Leistungen oft in einem eng begrenzten Zeitrahmen stattfinden. Im Freistaat Sachsen hat es sich daher bewährt, bereits während der laufenden Entwicklung Meilensteine mit Zwischenversionen zu definieren. Ein Freigabetest der Zwischenversion gibt rechtzeitig Aufschluss über die Lieferqualität und ermöglicht es, gefundene Mängel bereits vor der Bereitstellung zur Abnahme zu beheben. Im Abnahmetest erfolgt dann lediglich ein Regressionstest aussagekräftiger Testfälle aus den Freigabetests.

Während Tester aus dem Fachbereich sich im Wesentlichen auf die Durchführbarkeit der wichtigsten Anwendungsfälle konzentrieren und ihre Erfahrung mit typischen Schwachstellen einbringen, prüfen Testspezialisten die Standardkonformität von Schnittstellen und sichern die Testabdeckung aller definierten Anforderungen ab.

4. Teststeuerung

Der Projektleiter muss über den Testfortschritt, Fehlerzahlen und auftretende Probleme regelmäßig informiert werden. So können z.B. bei Problemen mit der zwischenbehördlichen IT-Kommunikation rechtzeitig vor dem Produktivsetzungstermin Maßnahmen wie Netzwerkfreischaltungen oder Erhöhung von Serverkapazitäten eingeleitet werden. Da durch die Erfassung im Fehlermanagement die aktuellen Mängel jederzeit einsehbar sind, können Streitfragen über einzelne Mängelmeldungen (Fehler oder Feature? Änderungsanforderung?) zeitnah von der Projektleitung behandelt werden.

5. Testabschluss

Eine Beschreibung von Restrisiken und die Bewertung der gelieferten Software gegen die Abnahmekriterien bilden den Kern des Testberichts, den das Testteam an den Projektleiter liefert. Die Abnahmekriterien, die selbstverständlich Bestandteil des Werkvertrags mit dem Lieferanten sind, können hierbei verschiedene Formen annehmen. Für die E-Government-Plattform wird meist die zu erreichende Testabdeckung mit fehlerbasierten Metriken kombiniert.

Beispiel:

  • Es sind 90% aller als Hoch und Mittel priorisierten Testfälle auszuführen.
  • Es dürfen keine verhindernden und maximal 10% der gefundenen erschwerenden Mängel noch offen sein.

Auf Basis der Abnahmeempfehlung im Testbericht kann der Projektleiter nun über die Endabnahme und weitere Maßnahmen entscheiden.

Aus der Praxis

Als 2004 in Sachsen die E-Government-Plattform mit ihren ersten Komponenten ausgeschrieben wurde, war klar, dass hiermit ein Standard für nachfolgende Projekte geschaffen werden soll. Es wurde ein Testcenter eingerichtet, in dem Testspezialisten der Fa. ANECON gemeinsam mit Testern aus den Fachbereichen des Freistaates Sachsen funktionale Testfälle spezifizieren und durchführen. Zusätzlich werden Sicherheits- und Benutzbarkeitstests nach gängigen Standards durchgeführt, z.B. nach BITVBSIW3C oder OWASP. Auch Last- und Performanztests sind ein wesentlicher Bestandteil der Testprojekte, da sie auch der Bestimmung von Antwortzeiten für die Service Level Agreements mit dem Betrieb dienen.

Seit dem Beginn der Testaktivitäten im Freistaat Sachsen gilt für alle Projekte der Plattform, dass diese Testarten ebenso zu realisieren sind, wie eine Prüfung gegen die Vorgaben der Betriebsumgebung. Die Zusammenarbeit von Testspezialisten mit Testern aus dem Fachbereichen im Testcenter hat sich als einer der wesentlichen Erfolgsfaktoren bewährt, ebenso, wie die inzwischen selbstverständlich gewordenen Prozesse des Change-, Release- und Fehlermanagements. Der Aufwand lohnt, denn Hausforderungen wie die EU-Dienstleistungsrichtlinie und die steigenden Erwartungen der Anwender an E-Government erfordern einen immer größeren Funktionsumfang und eine immer stärkere Vernetzung der betroffenen IT-Systeme. Und deren Erfolg hängt stark an der Akzeptanz der Anwender, die ein fehlerfreies, sicheres und schnelles System erwarten.

Häufig gestellte Fragen

Warum reicht es nicht, Software erst kurz vor der Produktivsetzung zu testen?

Ein später Test lässt kaum Zeit, gefundene Mängel noch zu beheben. Sinnvoller ist, schon während der Entwicklung Meilensteine mit Zwischenversionen zu vereinbaren und diese in Freigabetests zu prüfen. Das zeigt früh, wie es um die Lieferqualität steht. Im eigentlichen Abnahmetest bleibt dann nur ein Regressionstest der aussagekräftigsten Testfälle aus den Freigabetests.

Wann sollte die Planung des Tests in einem Projekt beginnen?

Gleichzeitig mit der Planung des Entwicklungsprojekts. Budget, Personalbesetzung und Zeitplan werden dabei eigens für das Testprojekt vorgesehen, nicht nebenbei aus dem Entwicklungsbudget abgezweigt. Grundlage für den geschätzten Aufwand sind die Testziele: Sie entscheiden, ob neben der Funktionalität auch Performanz, Benutzbarkeit, Sicherheit oder Schnittstellen im Mittelpunkt stehen.

Welche Testziele stehen bei öffentlich sichtbaren Verwaltungsanwendungen im Vordergrund?

Neben der korrekten Funktionalität vor allem Performanz und Benutzbarkeit, weil diese Systeme in der Öffentlichkeit stehen. Verarbeitet ein System personenbezogene Daten oder erfüllt es kritische Funktionen, kommt die Prüfung auf Sicherheitslücken hinzu. Werden alte und neue Fachsysteme integriert, sind Schnittstellen und Datenübertragung umfassend zu testen.

Bringt systematisches Testen außer gefundenen Programmfehlern noch etwas?

Ja. In der sächsischen E-Government-Plattform deckten die Tests seit 2005 auch fehlerhafte und unvollständige Anforderungen auf, die sich vor der Produktivsetzung noch per Change Request bereinigen ließen. Das gefundene Fehlerspektrum reichte von kleinen Layoutproblemen bis zu schweren Fehlern, die im Produktivbetrieb fatal gewesen wären. Betroffen war Individualsoftware ebenso wie Standardprodukte.

Was spricht dafür, Tester an einem gemeinsamen Ort zusammenzuziehen?

Ein eigenes Testcenter bringt Testspezialisten aus der IT und Fachtester aus verschiedenen Bereichen und Behörden an gemeinsame Arbeitsplätze. Sie können sich zu methodischen und fachlichen Fragen austauschen und über die Linienorganisation hinweg arbeiten. In Sachsen klärten sich so schon während der Testspezifikation viele Fragen zum Sollverhalten der Anwendung auf kurzem Weg.

Wie teilen sich Fachbereichstester und Testspezialisten die Arbeit auf?

Tester aus dem Fachbereich konzentrieren sich auf die Durchführbarkeit der wichtigsten Anwendungsfälle und bringen ihre Erfahrung mit typischen Schwachstellen ein. Testspezialisten prüfen die Standardkonformität der Schnittstellen und sichern ab, dass alle definierten Anforderungen durch Testfälle abgedeckt sind. Beide Sichten ergänzen sich, keine ersetzt die andere.

Wie lassen sich Abnahmekriterien messbar formulieren?

Bewährt hat sich die Kombination aus einer geforderten Testabdeckung und fehlerbasierten Metriken. Für die sächsische E-Government-Plattform galt beispielsweise: 90 Prozent aller als hoch und mittel priorisierten Testfälle sind auszuführen, es darf kein verhindernder Mangel offen sein und höchstens 10 Prozent der gefundenen erschwerenden Mängel. Solche Kriterien gehören in den Werkvertrag mit dem Lieferanten.

Welchen Zweck erfüllt der Testbericht am Projektende?

Er liefert dem Projektleiter die Grundlage für die Entscheidung über die Endabnahme. Kern des Berichts sind eine Beschreibung der Restrisiken und die Bewertung der gelieferten Software gegen die vereinbarten Abnahmekriterien. Daraus leitet das Testteam eine Abnahmeempfehlung ab. Über weitere Maßnahmen entscheidet dann die Projektleitung, nicht das Testteam.

Diese Seite teilen

Ähnliche Beiträge