Ein Angebot von

DevOps und Softwaretests: Drei wesentliche Aspekte des „shift-left“-Trends

| Autor / Redakteur: Malcolm Isaacs * / Sebastian Gerstl

„Shift Left“: Softwaretests finden gerade in der iterativen Softwareentwicklung immer früher statt. Diese sogenannte Linksverschiebung lässt sich an Hand von drei Merkmalen erklären.
„Shift Left“: Softwaretests finden gerade in der iterativen Softwareentwicklung immer früher statt. Diese sogenannte Linksverschiebung lässt sich an Hand von drei Merkmalen erklären. (Bild: gemeinfrei / CC0)

In der agilen Softwareentwicklung fällt immer häufiger der Begriff „Shift Left“ oder „Linksverschiebung“: Am klassischen V-Modell der Entwicklung betrachtet, finden Tests auf einer immer früheren, weiter „links“ liegenden Stufe statt. Aber was zeichnet „Shift Left“ genau aus?

Wir leben in einer agilen Zeit. Das heißt unter anderem, dass Produkte immer schneller und dabei in immer besserer Qualität zur Verfügung stehen müssen. Konventionelle Entwicklungsmodelle sind für die Anforderungen des digitalen Zeitalters ungeeignet. Sie werden nach und nach von DevOps-Konzepten abgelöst, die sich durch zahlreiche Prozessoptimierungen auszeichnen.

Bei der Software-Entwicklung ist dabei ein sogenannter „shift-left“-Trend zu beobachten, also ein „Linksruck“. Es geht darum, im Entwicklungszyklus möglichst frühzeitig mit dem Testen zu beginnen und diesen Schritt auf der gedachten Zeitachse von rechts nach links zu verlegen.

1. Iterative Entwicklung

Früher entwickelte man Software schrittweise entlang einer Zeitachse, die von links nach rechts verlief. Nachdem die Software freigegeben war, musste das Operations-Team sicherstellen, dass alles funktioniert und die – in der Regel zahlreichen – Probleme beheben. Den meisten dürfte in diesem Kontext das Wasserfallmodell ein Begriff sein.

Heute verfolgt man bei der Entwicklung eine gänzlich andere Vorgehensweise: Die Produkte werden iterativ, also in Entwicklungszyklen, hergestellt. Ziel ist es, dem Nutzer so schnell wie möglich ein brauchbares Produkt zu liefern. Das bedeutet, dass man zunächst ein „Minimum Viable Product" (MVP), also eine rudimentäre, aber dennoch nutzbare Version des Produkts zur Verfügung stellt und das darauffolgende Kundenfeedback in die weitere Entwicklung einfließen lässt. Das Team entwickelt dann schrittweise zusätzliche Funktionalitäten, die sogenannten „Stories“, die nach dem gleichen Prinzip wie das MVP an die Kunden ausgeliefert werden, bis das Projekt abgeschlossen ist. Dabei ist ein hohes Maß an Kooperation zwischen Business Analysten, Product Ownern, Entwicklern, Testern und Kunden erforderlich.

2. Der Shift-Left und das Testen

Je später ein Fehler erkannt wird, desto teurer ist es, ihn zu beheben. Wenn ein Defekt sicherheitsrelevant ist oder gegen Vorschriften wie die Datenschutzgrundverordnung (DSGVO) verstößt, kann es zu hohen Geldstrafen kommen – von den Auswirkungen auf die Unternehmensreputation ganz zu schweigen. Wird er hingegen mehr oder weniger im Moment seiner Entstehung entdeckt, kann man ihn sofort beheben und damit spätere, mitunter schwerwiegende Komplikationen vermeiden. Man sollte den Testing-Prozess auf der Entwicklungs-Zeitachse also nach links verlagern, das heißt, früher mit dem Testen beginnen. Auch für die schnelle Bereitstellung eines brauchbaren MVP ist dieses Verfahren unabdingbar.

Im Grunde genommen ist der Begriff Shift-Left irreführend, denn gemeint ist damit nicht, dass sich das Testing in eine frühere Phase der Entwicklung verschiebt. Vielmehr geht es um das kontinuierliche Testen über den gesamten Lebenszyklus der Softwareentwicklung; das sogenannte Continous Testing, das den Schlüssel zu einer effektiven, kontinuierlichen Integration darstellt.

3. Automatisierte Tests

Um die Testzeiten zu verkürzen und eine möglichst gute Testabdeckung zu erzielen, müssen Tests automatisiert werden. Getestet werden mindestens die Disziplinen Funktion, Leistung und Sicherheit.

Doch trotz der zahlreichen Vorteile, die das dargestellte Konzept mit sich bringt, sind bislang laut dem World Quality Report 2018-19 nur 14 bis 18 Prozent der Testaktivitäten automatisiert. Dafür gibt es eine Reihe von Gründen. Die kontinuierliche Integration bedeutet, dass sich der Quellcode ständig ändert und viele automatisierte Tests nicht robust genug sind. Zweitens erfordert automatisiertes Testing zuverlässige Testumgebungen und Testdaten. Insbesondere Daten aus Produktionssystemen müssen Vorschriften wie der allgemeinen Datenschutzgrundverordnung (DSGVO) der EU entsprechen. In vielen Teams sind dafür bislang noch nicht die nötigen Skills vorhanden.

Fazit: Vorzüge des Shift-Left-Fokus in bei Softwaretests

Durch die schrittweise Einführung der Automatisierung in ihre Prozesse können Unternehmen im Laufe der Zeit eine Pipeline entwickeln, die in der Lage ist, zuverlässige und konsistente Testumgebungen und Testdaten bereitzustellen und automatisierte Tests über den gesamten Lebenszyklus hinweg durchzuführen. Durch den Shift-Left werden Fehler schneller gefunden, sind weniger kostspielig zu beheben und ermöglichen es den Teams, ihre Bemühungen auf den Geschäftswert zu konzentrieren, anstatt auf das Debugging.

‚Shift Left‘: Wie man Performance-Tests in der Software-Entwicklung vorverlegt

‚Shift Left‘: Wie man Performance-Tests in der Software-Entwicklung vorverlegt

14.02.19 - Tests werden immer früher in die unterschiedlichen Stadien der Software-Entwicklung eingebunden. Im Vergleich mit den Stufen klassischer Methoden findet eine „Linksverschiebung” statt. Wie aber verlegt man Tests sinnvoll vor, wenn man traditionelle Modelle gewohnt ist? lesen

* Malcolm Isaacs ist Senior Solutions Marketing Manager im Application Delivery Management (ADM)-Team von Micro Focus, mit einem besonderen Interesse an unternehmensweiten DevOps und Softwarequalität.

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45789292 / Agilität)