Effiziente Software-Entwicklung ohne Automatisierung unmöglich

Unternehmen sind darauf angewiesen schnell und zu vertretbaren Kosten permanent ihre Software anzupassen und zu verbessern. Dies erhöht den Druck auf die meist schlanken Entwicklerteams – die häufig schon am Limit sind. [...]

Jeder Schritt in einem so komplexen Prozess, der menschliches Zutun erfordert, kann die Produktivität beeinflussen oder zum Erliegen bringen. Soweit möglich, sollte daher in der Softwareentwicklung alles automatisiert werden. (c) Fotolia/Sikov
Jeder Schritt in einem so komplexen Prozess, der menschliches Zutun erfordert, kann die Produktivität beeinflussen oder zum Erliegen bringen. Soweit möglich, sollte daher in der Softwareentwicklung alles automatisiert werden. (c) Fotolia/Sikov

Applikationen bzw. Software und deren kontinuierliche Weiterentwicklung stehen bei einer wachsenden Zahl von Unternehmen zunehmend im Mittelpunkt – und das nicht nur bei IT-Unternehmen. Durch das Voranschreiten der Cloud-Technologien wird dieser Trend noch verstärkt. Unternehmen sind darauf angewiesen schnell und zu vertretbaren Kosten permanent ihre Software anzupassen und zu verbessern. Dies erhöht den Druck auf die meist schlanken Entwicklerteams – die häufig schon am Limit sind. Rubrik sieht den Ausweg in einer weitgehenden Automatisierung des Datenmanagements und der SoftwareTests. Dabei dient das Unternehmen selbst als aktuelles Praxisbeispiel.

Der normale Release-Zyklus für Rubriks Datenmanagement-Plattform CDM ist vierteljährlich. Solch schnelle Release-Zyklen bringen den manuellen Testaufwand an seine Grenzen und die Entwickler treiben die Testingenieure ständig vor sich her. Jeder Schritt in einem so komplexen Prozess, der menschliches Zutun erfordert, kann die Produktivität beeinflussen oder zum Erliegen bringen. Soweit möglich, sollte daher in der Softwareentwicklung alles automatisiert werden – und dies schließt das Testen mit ein. Kritische Teilprozesse gilt es Schritt für Schritt zu automatisieren, um Kontinuität zu erreichen.

Bei Rubrik werden so viele Tests wie möglich automatisiert. Wie bei jedem Softwareunternehmen ist es wichtig, dass die Produkte gründlich getestet werden, bevor sie in die anspruchsvollen Rechenzentrumsumgebungen der Kunden entlassen werden. Unter Berücksichtigung eines vierteljährlichen Release-Zyklus bleibt demnach nicht viel Zeit für Entwicklung, Qualitätssicherung und Tests. Die Testautomatisierung ermöglicht es jedoch, schnell und gründlich zu testen und dabei mehr Konsistenz zu gewährleisten. Dadurch wird Zeit frei für die Arbeit an neuen Testfällen oder für das Debuggen von fehlerhafter Software, während die wiederholten, automatisierten Tests fortgesetzt werden.

Rubrik stellt fest, dass eine intelligente Testautomatisierung folgende Vorteile bietet:

  • Konsistente Testumgebung durch Entfernen des Faktors Mensch
  • Erhöhte Produktivität und Zeitersparnis
  • Schnelle Reaktion auf wechselnde Geschäftsanforderungen
  • Schnellerer Release-Zyklus durch schnellere Validierung von Builds
  • Verbesserte Kundenzufriedenheit

Der Wechsel zu agiler Entwicklung hat viele Entwicklungsteams dazu veranlasst, eine Pyramiden-Teststrategie einzuführen, die die Automatisierung von Tests auf verschiedenen Ebenen erfordert. Der Unit-Test stellt die Basis und den größten Anteil dieser Pyramide dar, zusammen mit dem Komponententest. Als nächstes kommt die Integration, oder API, und zuletzt das Testen. Und schließlich stehen UI-Tests (User Interface) ganz oben.

Wenn man die Pyramide hochsteigt, so steigen auch die Kosten und die Gesamtlaufzeit der Tests. Auf der anderen Seite sind die Tests an der Unterseite einfacher, schneller und konzentrierter. UI-Tests sind hierbei als „manuell/exploratorisch“ gekennzeichnet. Diese erfolgen am Ende des Workflows, da sie eine subjektive Bewertung auf der Grundlage der Interaktion mit der Benutzeroberfläche erfordern.

Viele Unternehmen benötigen eine schlanke, einfache und reaktionsschnelle Benutzeroberfläche, so dass eine qualitativ hochwertige Interaktion mit dem Benutzer gewährleistet ist. Der hierfür nötige Test wird bis zum Ende aufbewahrt, um sicherzustellen, dass keine Zeit mit einem Build vergeudet wird, bei dem es nicht gelungen ist, Einheiten oder Komponenten zu testen.

Unabhängig davon, wie viele Tests durchgeführt werden, kann nicht exakt wiedergegeben werden, was die Kunden letztlich beim Einsatz der Software in der Praxis erleben. Aus diesem Grund trifft sich Rubrik ständig mit den Kunden und bittet sie um Feedback zu Benutzeroberfläche, aufgetretenen Problemen und neuen Funktionen. Basierend auf den gesammelten Informationen kann Rubrik seine Test-Suites ständig verbessern. Dies bedeutet, dass teilnehmende Kunden als Wohltäter für andere oder neue Kunden fungieren, während das Unternehmen die Benutzerfreundlichkeit weiter verbessert.

Testen ist ein wichtiger Teil der kontinuierlichen Softwareentwicklung. Es muss richtig und effektiv geschehen, aber es sollte auch ein rationalisierter Prozess sein, der das Geschäft vorantreibt und nicht eine Hürde darstellt, die alles verlangsamt. Zu den langfristigen Vorteilen der Testautomatisierung gehören Skalierbarkeit, Wiederverwendbarkeit des gemeinsamen Frameworks im gesamten Funktionsbereich, Agilität für kontinuierliche Verbesserungen und letztlich die Auslieferung von Software an zufriedenen Kunden.


Mehr Artikel

Gregor Schmid, Projektcenterleiter bei Kumavision, über die Digitalisierung im Mittelstand und die Chancen durch Künstliche Intelligenz. (c) timeline/Rudi Handl
Interview

„Die Zukunft ist modular, flexibel und KI-gestützt“

Im Gespräch mit der ITWELT.at verdeutlicht Gregor Schmid, Projektcenterleiter bei Kumavision, wie sehr sich die Anforderungen an ERP-Systeme und die digitale Transformation in den letzten Jahren verändert haben und verweist dabei auf den Trend zu modularen Lösungen, die Bedeutung der Cloud und die Rolle von Künstlicher Intelligenz (KI) in der Unternehmenspraxis. […]

News

Richtlinien für sichere KI-Entwicklung

Die „Guidelines for Secure Development and Deployment of AI Systems“ von Kaspersky behandeln zentrale Aspekte der Entwicklung, Bereitstellung und des Betriebs von KI-Systemen, einschließlich Design, bewährter Sicherheitspraktiken und Integration, ohne sich auf die Entwicklung grundlegender Modelle zu fokussieren. […]

News

Datensilos blockieren Abwehrkräfte von generativer KI

Damit KI eine Rolle in der Cyberabwehr spielen kann, ist sie auf leicht zugängliche Echtzeitdaten angewiesen. Das heißt, die zunehmende Leistungsfähigkeit von GenAI kann nur dann wirksam werden, wenn die KI Zugriff auf einwandfreie, validierte, standardisierte und vor allem hochverfügbare Daten in allen Anwendungen und Systemen sowie für alle Nutzer hat. Dies setzt allerdings voraus, dass Unternehmen in der Lage sind, ihre Datensilos aufzulösen. […]

2 Comments

  1. Hello,

    I am currently writing my Bachelor thesis and I would like to use this article.
    I have two questions:
    1. Who is the author? I don’t understand „Oliver Weiss/pi“. Is it just „Oliver Weiss“?
    2. could you send me a PDF version dated 31.12.2019 so that I can write this PDF in my bibliography?

    With kind regards
    Yannick Radke

Leave a Reply

Your email address will not be published.


*