Digitale Verwaltung: Open Source, Offene Standards und Softwarequalität

Die Ereignisse der vergangenen Jahre haben die Themen Digitalisierung und Digitale Bildung in fast allen Bereichen des täglichen Lebens enorm beschleunigt. Beispiele hierfür sind neue Bezahlverhalten (Kontaktlosen Bezahlen mit NFC-Funktion), Nutzung von Video-Konferenzen, Homeoffice, Homeschooling, etc.

Die deutsche Industrie sowie die digitale Verwaltung (E-Government) stellen in einer Rekordzeit kontinuierlich neue Online Dienste zur Verfügung. Das ist eine Chance für den Standort Deutschland und Made in Germany!

Softwarequalität beschränkt sich leider noch sehr häufig auf die Formel: Hauptsache, es läuft! Aber in Zeiten von Spotify, Google, Facebook und Co. sind die Erwartungen von Kund:innen und Bürger:innen in Bezug auf Funktionalität, Verfügbarkeit und Usability (Benutzbarkeit) enorm gestiegen.

Aktuelle Performance-Probleme bei der Erreichbarkeit von Impfzentren für die Terminbuchung, das Ausstellen des digitalen Impfnachweis durch die Apotheken, bei Lernplattformen und Schulportalen sowie bei Video-Konferenzen zeigen die Dringlichkeit des Themas.

 

Image
corona-testen-bild.jpeg
Bild: Corona Screenshot (Klicken zum Vergrößern) [Quelle: Qytera]


 

Manuell oder automatisiert testen?

Bei vielen Webprojekten hören wir oft folgende Aussagen:

  • Bei den häufigen, oft grundlegenden Änderungen lohnt sich die Testautomatisierung nicht.
  • Kommerzielle Tools sind viel zu teuer in Anschaffung und Softwarepflege bzw. Wartung.
  • Open Source kann nicht viel und ist viel zu kompliziert (“nur für Bastler”).
  • Wir haben nicht genügend Zeit für die Testautomatisierung, lasst uns einfach manuell und explorativ testen.

 

Image
slow-testing.png
Bild: Testing Bild. (Klicken zum Vergrößern) [Quelle: Qytera]


 

Testautomatisierung ist kein Ersatz des manuellen Tests! Durch Testautomatisierung wird Ihr Testprozess aber effektiver. Automatisierte Tests bieten die Möglichkeit, Tester:innen von repetitiven Aufgaben zu befreien. So kann Zeit und Geld gespart werden. Testautomatisierung hilft dabei, in immer kürzeren Zeiträumen eine Sicherung der Softwarequalität vorzunehmen. Denn oft reichen die kurzen Entwicklungszyklen nicht mehr aus, die Neuentwicklungen wie auch die bestehenden Bestandteile regressiv zu testen.

Der Test Automation Engineer

In dieser Rolle sind sowohl solides Wissen aus dem Testbereich wie auch Praxiserfahrung aus der Softwareentwicklung vertreten; genau das Wissen und Können, das für die Testautomatisierung benötigt wird!

Die Aufgaben befinden sich zwischen den Bereichen und erfordern Wissen aus beiden: ein Tester weiß, wie getestet wird, Testfälle geschrieben werden, Tests auszuwerten sind und eine Entwicklerin, wie gute Software programmiert wird. Also werden beide Eigenschaften benötigt, die im Test Automation Engineer vereint sind.

Qualität ist kein Zufall!

Viele Unternehmen und Behörden fehlt eine Teststrategie beim Testen der Online Dienste und es wird sehr häufig noch manuell getestet. Unternehmen wie Apple, Spotify und Google setzen auf Open Source Tools wie Selenium WebDriver bei der Automatisierung von Softwaretests. Seit 2018 ist die API ein offizieller W3C-Standard. Viele proprietäre Lösungen basieren wiederum auf Selenium. Innovation kann leider nicht in einem APP Store gekauft werden.

Um eine gute Softwarequalität zu bekommen, benötigen Sie einen strukturieren Testprozess und qualifizierte Software Tester.

Qualität ist kein Zufall!

 

Image
test-automation-pyramide-cut (1).png

Bild: Test Automation Pyramide. (Klicken zum Vergrößern) [Quelle: Qytera]

 

Die klassische Testpyramide (nach Mike Cohn) zeigt die sinnvollsten Bereiche der Testautomatisierung: Die Basis bieten wie üblich die Unittests. Diese werden sehr schnell durchgeführt und auch die Entwicklung ist durch die Simplizität der zugrundeliegenden Prozesse meist schnell gemacht. Die Integrationstests – im Bereich der Komponenten- oder Systemintegration – integrieren die neueste Programmierung erstmals automatisiert und dürfen deshalb auf keinen Fall vernachlässigt werden. Eine Amortisierung von automatisierten Systemtests lohnt sich vor allem bei agilen Projekten durch die häufige Durchführung aufgrund von Regressionstests, aber auch in klassisch geführten Projekten kann schon nach 3-4 Ausführungen ein Return on Investment (ROI) eintreten.

Nicht in der Testpyramide enthalten, aber auch sehr wichtig und teils sehr gut automatisiert testbar, sind die nicht- funktionalen Tests. Vor allem Last- und Performancetests können sehr gut automatisiert getestet werden (z.B. mit Apache JMeter).

Hier eine Live-Demo für Sie mit Selenium:

 

 

Warum Open Source so wichtig ist

Open Source ist nicht nur eine Beschreibung für Software, sondern verkörpert auch Zeitgeist, Spirit und Lebensgefühl.

Open Source bezeichnet kostenfreie Software, deren Quellcode nicht nur öffentlich ist, sondern auch von Dritten kopiert, geändert und genutzt werden kann. Open Source kann von unabhängige Stellen auditiert und kontrolliert werden. Somit werden Schwachstellen transparent und es zeigt sich, dass diese auch schnell gelöst werden.

Open Source stärkt somit die digitale Souveränität und Unabhängigkeit von Behörden und Unternehmen. So wird auch eine Abhängigkeit von Softwareherstellern verringert werden. Gerade in einer globalisierten Welt werden durch Übernahmen und Fusionen von heute auf morgen die Entwicklung von Softwareprodukten eingestellt oder in die Cloud verlagert.

Vorteile von Open Source für die digitale Verwaltung und Unternehmen

Flexibilität, Integrationsfähigkeit, Innovationsfähigkeit und Sicherheit sprechen für Open Source Software.

  • Sicherheit: Die Daten verbleiben in den Rechenzentren, in der IT-Infrastruktur der Ämter, in den Behörden und Unternehmen.
  • Skalierbarkeit: Rechenleistung und Speicher können schnell eingerichtet und jederzeit flexibel angepasst werden.
  • Kein Vendor Lock-In: Lösungen in bewährten Cloud Technologien wie Ansible und Terraform bieten digitale Souveränität und Unabhängigkeit.
  • Infrastructure as Code: Somit kann die Cloud-Plattform relativ schnell und sicher gewechselt werden (z.B. von Amazon AWS nach Microsoft Azure nach Open Telekom Cloud).

 

 

Anforderungen an IT-Dienstleister - Generalist oder Spezialist?

Was zeichnet einen IT-Dienstleister aus, der sich als Partner für ein Open Source Projekt anbietet? Die technische Expertise im Open Source Bereich ist unerlässlich

In der heutigen schnelllebigen Zeit ist es eine besondere Herausforderung für alle Unternehmen, die Qualität und Effizienz bei der Entwicklung von Softwaresystemen kontinuierlich einzuhalten und zu steigern. Hier spielt der Einsatz von Testautomatisierung eine immer größere Rolle, da durch die Automatisierung der Tests viel kostbare Zeit und Ressourcen eingespart werden können. Testabläufe werden effizienter, umfassender und die Qualität der Entwicklung steigt. Ein sehr gutes Beispiel, wie das gelingen kann, ist Google mit Android, welches auf Linux setzt.

Erfahrung

Achten Sie auf Bewertungen des IT-Dienstleisters im Internet und die Anzahl der veröffentlichen Achten Sie auf Bewertungen des IT-Dienstleisters im Internet und die Anzahl der veröffentlichen Blogbeiträge. In der IT-Branche gibt es viele Themen und Tools. Die meisten IT-Consulting-Firmen behaupten, die Besten in allem zu sein. Das trifft in der Realität jedoch nicht zu. Um sicher zu stellen, dass Sie es mit einem erfahrenen IT-Berater zu tun haben, müssen Sie unbedingt auf Zertifikate und Bewertungen achten. Legt das IT- Consulting viel Wert auf hohe Qualität, sollte die Expertise mit Zertifizierungen untermauert sein. Fragen Sie aktiv nach der Qualifikation in dem jeweiligen Gebiet Blogbeiträge.

Zusammenfassung

Wir sind der Meinung, dass die deutsche Wirtschaft sowie die Digitale Verwaltung mehr in Europäische IT-Lösungen investieren sollte, noch besser in Open Source Software. Open Source macht erst eine digitale Souveränität möglich und ist der Innovationsmotor für die digitale Transformation. Open Source ist die Zukunft!

 

Veröffentlicht am 21.Juli 2021

Aktualisiert am 19.November 2024

Wilson Campero

Geschäftsführer, Senior Testmanager

Wilson Campero ist IT-Unternehmer und Experte für Softwarequalität sowie ISTQB Certified Full Advanced Tester. Seit mehr als 20 Jahren ist das Testen von Software sein Spezialgebiet.

Finden Sie weitere interessante Artikel zum Thema: