ElsterOnline: Qualität statt Gimmicks

15.04.2007
Von Roland Krebs, Berthold Platzer, Johannes Rödl und Martin Varendorff
Erprobte Basistechnik und umfangreiche Test- und Kontrollverfahren helfen, das komplexe Steuerportal flexibel und auf Kurs zu halten.

Das ELSTER-Projekt der Finanzbehörden hat die sichere und elektronische Übermittlung und Verarbeitung sämtlicher Steuerdaten zum Ziel (siehe Kasten "Was ist ELSTER?"). Eine seiner Architekturkomponenten ist die Internet-Plattform "ElsterOnline", die als Schaltstelle (Authentifizierung und Bereitstellung von Formularen) zwischen den externen Anwendern und den zahlreichen ELSTER-Anwendungen und -Prozessen dient. Es.muss einen rechtsverbindlichen Dialog zwischen Bürgern beziehungsweise Unternehmen und staatlichen Organisationen sicherstellen und geht damit weit über die Anforderungen in kommerziellen Portalen hinaus.So sind neben der Steuergesetzgebung (Steuergeheimnis) auch die Vorgaben des Bundesdatenschutzgesetzes und des Bundesamtes für Sicherheit in der Datentechnik (BSI) genauestens zu erfüllen. Bereits heute müssen Unternehmen ihre Umsatzsteuer-Voranmeldung und Lohnsteuer-Anmeldung elektronisch an ELSTER übermitteln. Die obligatorische Nutzung setzt aber voraus, dass die Portaldienste frei zugänglich sind, also eine barrierefreie Präsentation und Interaktion mit ELSTER möglich ist.

Hier lesen Sie ...

  • worin die hohen Anforderungen an das ElsterOnline-Portal bestehen;

  • welche technische Basis gewählt wurde;

  • wie ein umfassendes Qualitäts-Management aufgebaut wurde.

Elster Online
Elster Online

Genau dies hatten aber viele Unternehmen beim Start des Portals Anfang 2005 bemängelt (siehe "Freud und Leid mit Elster"). So fehlten zunächst sichere Mechanismen zur Authentifizierung und die Server der Plattform gingen durch eine unerwartet hohe Netzlast in die Knie. Ende 2005 mussten daher die Infrastruktur erweitert sowie die Sicherheitsmechnismen überarbeitet werden. Seitdem ist es obligatorisch, vor der Datenübermittlung zunächst ein Sicherheitszertifikat von ELSTER anzufordern. Unternehmen können ihre Steuerangaben typischen Steuerprogrammen heraus verschicken, kleine Firmen und vor allem Privatnutzer können ihr Angaben auch direkt im Portal machen beziehungsweise sich lokal ein spezielles ELSTER-Programm installieren. Da man dem Nutzer keine technischen Vorschriften machen kann, muss die Portal-Plattform diverse Betriebssysteme (zum Beispiel Varianten der wichtigsten Windows- oder Unix-Systeme) und alle gängigen Web-Browser gleich gut unterstützen und mit akzeptablen Antwortzeiten auch bei hoher Last funktionieren. Kritisch sind in diesem Zusammenhang gesetzlich vorgegebene Abgabestichtage, die zu einem überproportional Nutzerandrang führen. Zudem müssen die Daten und die dazugehörigen Verarbeitungsfunktionen laut Gesetz in der Regel bis zu zehn Jahre lang aufbewahrt werden.

Um den Erfolg von ELSTER zu sichern, orientieren sich die Projektarbeiten an folgenden Prinzipien:

  • Pragmatisches, nutzenorientiertes Vorgehen in kontrollierbaren Schritten,

  • konsequentes Projekt- und Anforderungs-Management,

  • enge Zusammenarbeit von Projektleitung, internen Wissensträgern und externer Spezialisten in kleinen effizienten Teams,

  • Einsatz bewährter und zukunftsfähiger Technik und Produkte und ein

  • systematisches Qualitäts-Management. Vor allem Letzteres ist entscheidend für den Erfolg von ELSTER, denn wie bei öffentlichen föderalen Projekten üblich, gibt es viele Auftraggeber mit ebenso zahlreichen Wünschen. Zugleich lassen der Projektumfang und die über das Land verteilten Projektmitarbeiter nur eine virtuelle Zusammenarbeit zu. Daher entstand auf der Basis des Tools "Jira" von Atlassian eine Web-basierende Lösung zur Verwaltung von Fehlern und Anforderungen, die derzeit rund 300 Projektteilnehmer und Fachbereichsexperten nutzen. Allein für das letzte ELSTEROnline-Release wurden in Jira 1200 Vorgänge dokumentiert.

Rechtsverbindlichkeit und Sicherheit

Die über ELSTER ausgeführten rechtsverbindlichen Transaktionen beinhalten personenbezogene und höchstvertrauliche Steuerdaten, wofür die gesetzlichen Bestimmungen ein hohes Maß an Sicherheit für Verfahren und Daten vorschreiben. Integrität und Geheimhaltung müssen sowohl beim Transport als auch bei der Speicherung der Daten gewährleistet sein. Im Sicherheitskonzept des Projekts geht daher der Schutzbedarf so weit, dass weder Entwicklung, Qualitätssicherung noch Administration über einen Zugang zu den Steuerdaten im Produktivbetrieb verfügen dürfen. Dies erschwert eine Problem- und Fehleranalyse erheblich und machte es nötig, für die Fehlerbehandlung ein technisch identisches Referenzsystem mit einem vollständigen, in sich konsistenten und stets aktuellen Satz an Testdaten zur Verfügung zu stellen.

Zukunftssicherheit

Das ElsterOnline-Portal soll für viele Jahre eine Online-Kommunikation mit der Finanzverwaltung sicherstellen. Daher kommen nur bewährte, zukunftsfähige Techniken in Frage. Für die Projektbeteiligten hieß die Antwort Java 2 Enterprise Edition (J2EE). Unausgereifte oder proprietäre Ansätze wie Portlets oder Web-2.0-Techniken bleiben hingegen bewusst noch unberücksichtigt. Ebenso stand man dem großflächigen Einsatz homogener, aber proprietärer Produktplattformen skeptisch gegenüber. Reichen deren produktspezifische Funktionen (beispielsweise Standard-Security- oder Transaktions-Features des Portal-Servers) später nicht mehr aus, könnte ein Systemwechsel komplex und teuer zu stehen kommen.

Was ist ELSTER?

ELSTER (Elektronische Steuererklärung) ist ein gemeinsames Projekt der Steuerverwaltungen der 16 Bundesländer und des Bundesministeriums der Finanzen zur sicheren elektronischen Übermittlung von Steuerdaten.

Zu diesem Zweck wurde das ElsterOnline-Portal für die elektronisch unterstützten Fachverfahren und Dienstleistungen der Steuerverwaltung konzipiert (https://www.elsteronline.de/eportal). Unter Federführung des Bayerischen Landesamtes für Steuern wird das Projekt zusammen mit den Firmen Mgm technology partners aus München und Secunet Security Networks aus Essen umgesetzt.

Seit September 2005 können Steuerbürger (Unternehmen, Steuerberater, private Haushalte) Browser-gestützt Online-Formulare ausfüllen und an die Finanzverwaltung übermitteln. Aktuell werden sechs Formulare unter anderem zu den ELSTER-Fachverfahren Lohnsteuer und Umsatzsteuer angeboten. Dieses Angebot wird kontinuierlich erweitert. Außerdem sind Dienste wie die elektronische Steuerkontoabfrage (aktuell nur mit Signaturkarte möglich) oder sichere E-Mail an das Finanzamt geplant.

Neben ElsterOnline ist die elektronische Übermittlung der genannten Formulare auch über das kostenlose Elster-Formular sowie Steuerprogramme möglich. Die Sicherheit der Datenübermittlung wird durch digitale Verschlüsselungs- und Authentifizierungs-Zertifikate im X509-Format über das ELSTER-Trustcenter gewährleistet. Die Zertifikate werden bei Registrierung am ElsterOnline-Portal erzeugt und können von da an ELSTER-weit zur Authentisierung übermittelter Daten verwendet werden. Das Portal unterstützt Rechner unter Windows, Linux und MacOS.

Projekterfahrungen und weiterführende Details präsentieren Experten von mgm technology partners auf der CeBIT im Public Sector Parc in Halle 9, Stand C60.

Einfachheit statt Spielereien

Ferner wurde für ELSTER eine Schichtenarchitektur gewählt, die gerade so viele Freiheitsgrade aufweist, wie dies für einen zukunftsfähigen Ansatz notwendig ist. Nicht unmittelbar nutzungsrelevante Zwischenschichten wie zum Beispiel spezifische Integrationsschichten oder komplexitätssteigernde EAI- oder SOA-Plattformprodukte wurden vermieden. Die fünf für das Portal eingeführten Schichten entsprechen den heute üblichen Standards einer J2EE-Architektur mit GUI-Schicht, Struts-Framework, EJB-Service-Schicht, Datenzugriffsschicht mit Persistenz-Framework und rationaler Datenbank. Zur Integration des Portals mit den Backend-Systemen der Rechenzentren der 16 Länder werden die J2EE-Kommunikationsstandards in der EJB-Serviceschicht des Applikations-Servers eingesetzt. Als Kommunikationsdrehscheibe und Integrations-"Hub" dient die ELSTER-Basis-Infrastruktur in den ELSTER-Clearing-Stellen München und Düsseldorf. Bei der Umsetzung geht Einfachheit vor glänzenden Gimmicks und Robustheit vor Feature-Reichtum.

Statt weitschweifiger Architekturdebatten sollten sich Unternehmen zudem mehr um die vielen "kleinen" Designentscheidungen kümmern, weil diese dafür verantwortlich sind, ob komplexe Anwendungen produktiv und leicht wartbar bleiben. So sollte beispielsweise geklärt werden, wie sich eine akzeptable Fehlertoleranz der Anwendung im Umfeld einer individuellen Benutzer-Session erzielen lässt oder wie wartungsfreundliche und gleichzeitig laufzeiteffiziente Fehlerbehandlungsroutinen zu gestalten sind. Da es für solche Fragen häufig keine Patentrezepte gibt, muss dass Projektteam viel Erfahrung mitbringen.

Termingebundenheit

Die Funktionen des ElsterOnline-Portals werden regelmäßig dreimal pro Jahr erweitert. Die Zeitpunkte für fachliche Erweiterungen bestimmen hierbei nicht interne organisatorische oder technische Wünsche, sondern allein die gesetzlichen Anforderungen. Dies gilt beispielsweise für Formulare des jeweils nächsten Steuerjahres, die rechtzeitig mit den entsprechenden gesetzlichen Änderungen bereit stehen müssen. Damit dies gelingt, erfolgen im Projekt solche Anpassungen nach den Grundprinzipien des "Extreme Programming". Diese Methode ist bezüglich ihrer Effizienz in Fachkreisen nicht unumstritten. Da sie bei ELSTER jedoch einem eindeutigen Ziel dient, lässt sich ihr Nutzen pro Release klar nachweisen.

Hohe Testanforderungen

Um Entwicklungsfehler zu vermeiden oder zumindest früh zu entdecken, gibt es im ELSTER-Projekt eine Reihe regelmäßiger Prüfverfahren (siehe Kasten "Tests und Kontrollen"). Zusätzlich zu den üblichen Funktionstests, musste ein automatischer Test der grafischen Benutzeroberflächen (GUI) entwickelt werden. Hierbei sind 30 denkbare Client-Konfigurationen zu prüfen. Diese große Zahl erklärt sich dadurch, dass die Steuerverwaltung die Nutzung des ElsterOnline-Portals zwar zur Pflicht machen darf, aber Arbeitgebern keine Konfiguration vorschreiben kann. Eine Systemkonfiguration ergibt sich aus der Kombination von Betriebssystem (verschiedenen Windows-Versionen, Linux oder MacOS), eingesetztem Browser (Internet Explorer 5.5/6.x/7.x, Firefox 1.04, Safari 2), installiertem Java Plug-in (1.4.2, 5.0, 6.0) und spezifische Browser-Einstellungen (zum Beispiel Aktivierung von Javascript). Etwa 90 automatisierte Testläufe stellen sicher, dass alle in einem Release benötigten GUI-Elemente in den 30 Systemkonfigurationen vom Browser korrekt umgesetzt werden. Mit einer solchen Automatisierung von GUI-Tests beschritt das Projektteam technisches Neuland.

Tests und Kontrollen

Um die fachliche Korrektheit der Portalsoftware sicherzustellen, wurden eine Reihe von Prüfmechanismen eingeführt:

  • Coding-Standards als Muster/Handlungsanweisungen für die Implementierung. Diese werden in Positiv- und Negativlisten dokumentiert und regelmäßig geprüft und verbessert.

  • "Vier-Augen-Prinzip" in den Entwicklungsteams bei der Umsetzung fachlicher Anforderungen und zur Gewährleistung der Coding-Standards.

  • "Nightly Builds": Um eine möglichst frühe Rückmeldung über den Gesamtzustand der Applikation zu erhalten, wird die Anwendung schon in der Entwicklungsphase jede Nacht integriert und automatischen Regressionstests (Unit-Tests) unterworfen.

  • Testsystem mit Vorversionen für Fachexperten: Um Mängel in den Spezifikationen aufzudecken, wird jedes Portal-Release im aktuellen Entwicklungsstand den Fachexperten und der Betriebsgruppe (RZ) auf einem Testsystem bereits in der Entwicklungsphase zur Verfügung gestellt.

  • Integrierte Testinfrastruktur, die die korrekte Zusammenarbeit aller Komponenten im verteilten System sicherstellen soll. Hierzu gehören beispielsweise spezifische Testkonten und Testmerker für Verifikationsläufe im Produktivsystem.

Performance prüfen, Überlastung vermeiden

Das ElsterOnline-Portal soll im Vollausbau über 30 Millionen Haushalte und über fünf Millionen Unternehmen bedienen. Dies bedeutet eine enorme Zugriffs- und Verarbeitungslast insbesondere an Stichtagen für die Abgabefristen von Steuererklärungen. Daher existiert bereits seit dem ersten Portal-Release ein aktives Performance Engineering, das eine Überlastung des Systems verhindern soll. Dazu werden die Skalierbarkeit, Performanz und Stabilität der Portalsoftware laufend mit künstlich erzeugten Bestandstestdaten geprüft und die Ergebnisse beim Tuning und der Cluster-Konfiguration berücksichtigt. Als Besonderheit speichert die Testumgebung frühere Ergebnisse und kann diese in späteren Testläufen automatisch berücksichtigen. Dank des Testverfahrens lassen sich nicht nur die Skalierbarkeit und Hardware prüfen, sondern auch solche Plattformfehler frühzeitig aufspüren, die nur bei extremer Nebenläufigkeit oder im Cluster-Betrieb auftreten.

Dargestellt sind schematisch die diversen Aspekte, die bei der Qualitätssicherung von ElsterOnline regelmäßig zu beachten sind. Unternehmen mit umfangreichen Portalprojekten sollten diese ebenfalls adressieren.
Dargestellt sind schematisch die diversen Aspekte, die bei der Qualitätssicherung von ElsterOnline regelmäßig zu beachten sind. Unternehmen mit umfangreichen Portalprojekten sollten diese ebenfalls adressieren.

Grundlage für diese Messungen ist ein von den Beratern von Mgm als Freeware entwickeltes Lasttest-Framework. Es verwendet AOP-Messpunkte (AOP= Aspect Oriented Programming), mit sich denen alle Aspekte des Hochlastbetriebs einer J2EE-Anwendung flexibel testen lassen (siehe auch "von Aspektorientiert bis eXtrem"). Während eines typischerweise mehrstündigen Testlaufs mit derzeit bis zu 1000 parallelen Test-Clients werden mehr als hundert Parameter kontinuierlich auf dem Server gemessen und die Messwerte aggregiert und ausgewertet. Die Möglichkeit, Testklassen des Funktionstests auch im Lasttest ohne weitere Entwicklungsarbeit nutzen zu können, reduziert den Aufwand. Fachliche Testklassen müssen dabei nur einmal entwickelt und Änderungen in Folge-Releases nur an einer Stelle angepasst werden.

Migrationstest für jeden Release-Wechsel

Mit zunehmender Lebensdauer der Lösung werden Migrationstests zu einem immer wichtigeren und umfangreicheren Bestandteil der Qualitätssicherung. Insbesondere die schon angesprochene erwartete Langlebigkeit des Systems zwingt dazu, dass neue Funktionen weiterhin auch mit historischen Daten arbeiten können. Im Projekt wird daher stets geprüft, ob eine neue ElsterOnline-Version mit den Daten der vorherigen Version zurechtkommt. In der aktuellen Portalversion bedeutete dies, dass rund 500 Testkonten in allen relevanten technischen und fachlichen Zuständen der alten und neuen Version korrekt mit gleichem Ergebnis angelegt worden sind.