Modularisierung großer C++-Projekte mit einem Paketmanager am Beispiel Elster

Bei der Entwicklung der Steuersoftware Elster kam der Paketmanager Conan mit Erfolg zum Einsatz – ein Beispiel für die Modularisierung großer Softwareprojekte.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht
Lesezeit: 16 Min.
Von
  • Philipp Wähnert
Inhaltsverzeichnis

Dieser Artikel beschäftigt sich mit der Modularisierung großer Softwareprojekte am Beispiel des Projekts ERiC der Steuersoftware ELSTER. Conan hat hier die Aufgabe, eine große Menge voneinander unabhängiger Teilmodule zu paketieren, zu verteilen und zu integrieren. Die flexible Architektur von Conan ermöglicht es, diese Schritte effizient und mit vertretbarem Wartungsaufwand durchzuführen.

Das Projekt ELSTER (Elektronische Steuererklärung) ist die größte und zahlenmäßig erfolgreichste E-Government-Anwendung Deutschlands: Im Jahr 2020 haben mehr als 28 Millionen Steuerpflichtige ELSTER für die Einkommensteuererklärung genutzt, entsprechend steht die gesamte deutsche Steuerverwaltung hinter dem Projekt. Das Bayerische Landesamt für Steuern koordiniert es seit mehr als 25 Jahren.

Mehr zur Programmiersprache C++

Im ELSTER-Ökosystem ist die Clientbibliothek ERiC (Elster Rich Client) eine bedeutende Komponente. ERiC übernimmt die sichere Kommunikation mit den ELSTER-Servern, die Validierung und die PDF-Ausgabe der steuerfachlichen Daten auf dem Client. Eine wesentliche Herausforderung bei der Entwicklung der ERiC-Bibliothek ist, dass sie für viele verschiedene Betriebssysteme und Systemarchitekturen zur Verfügung stehen muss. Der Grund: Alle Hersteller von Steuersoftware sind dazu verpflichtet, diese Bibliothek zu integrieren, wenn sie ihre Daten im Rahmen von ELSTER elektronisch an die Finanzbehörden übermitteln wollen.