DevOps und der »Shift-Left -Trend in drei Schritten

Illustration: Absmeier, Tasos_Lekkas

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 Softwareentwicklung 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. Malcolm Isaac, Senior Solutions Marketing Manager bei Micro Focus, erklärt die drei wichtigsten Aspekte dieses Trends.

 

  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.

 

  1. 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 Entwicklungszeitachse 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.

 

  1. 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

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.

 


 

96 search results for „Testing“

QA und Testing im Jahr 2019: In fünf Schritten zur erfolgreichen Automatisierung

Aus dem neuesten World Quality Report (WQR) geht hervor, dass eine gute User Experience bei IT-Entscheidern auf der Prioritätenliste ganz oben steht [1]. Um diese zu erreichen, wird vermehrt mit Technologien wie künstlicher Intelligenz (KI) und Machine Learning (ML) experimentiert. Gerade Testing-Prozesse sollen durch Automatisierung effizienter gestaltet werden. Doch der WQR zeigt auch, dass 2017…

Geschäftlicher Erfolg mit Online-Testing: Bessere Kundenerlebnisse durch kontrollierte Digitalexperimente

Unternehmen, die geschäftlich erfolgreich sein wollen, müssen ihre Kundenbeziehungen anhand empirischer Daten gestalten. Wer nur auf sein Bauchgefühl hört oder wie gewohnt vorgeht, wird beim digitalen Wandel schnell abgehängt. Unternehmen sollten kontrollierte Digitalexperimente zur DNA ihres Geschäfts machen.   Manchmal haben kleine Dinge eine große Wirkung. Auf der führenden Mobilitätsplattform AutoScout24 ging es beispielsweise darum,…

Neue Softwareplattform revolutioniert den 34 Milliarden-Markt des Software-Testing

Tricentis und QASymphony fusionieren – Meilenstein im Continuous Testing.   Tricentis und QASymphony geben Ihre Fusion unter dem Namen Tricentis bekannt. Die marktführende Continuous-Testing-Plattform von Tricentis hat sich als De-facto-Standard etabliert und wird von Analysten weltweit anerkannt. QASymphony wird als die führende Test-Management-Lösung betrachtet. Das kombinierte Angebot bildet die modernste Plattform für Software-Testing und befeuert…

Agiles Web Testing und Monitoring durch automatisierte symptombasierte Fehlersuche

Wird das digitale Qualitätsmanagement durch Lean Testing revolutioniert? Leankoala aus Hamburg bietet mit seiner gleichnamigen Software eine Methode für das Testen und Monitoring von Websites, die auf dem Markt einzigartig ist. Die neue Lösung folgt dem sogenannten Lean-Testing-Ansatz, indem sie Websites auf relevante, geschäftskritische Eigenschaften durchsucht, statt alle möglichen Fehlerursachen zu überprüfen. Somit lassen sich…

Crowd Usability Testing: Optimierung aus der Nutzerperspektive

Conversion-Optimierung ist für Webshop-Betreiber unverzichtbar, qualitative Testverfahren sollten dabei die quantitativen Analysen ergänzen. Bisher waren jedoch gerade Usability-Tests aufwendig und für viele Unternehmen zu kostspielig. Neue Crowd-Testing-Verfahren, die flexibel und zu einem Bruchteil der Kosten umsetzbar sind, ermöglichen es nun, die Sicht der Nutzer nachhaltig in die Planung und Optimierung einzubeziehen.   Der Wettbewerbsdruck ist…

Continuous Testing: Unternehmen in Deutschland und weltweit haben Nachholbedarf

Nur jedes fünfte Unternehmen setzt auf automatisiertes Testing.   Obwohl 75 Prozent der Unternehmen weltweit Continuous Testing innerhalb ihrer IT-Umgebung als wichtig erachten, ist nur eine Minderheit der Befragten in der Lage, automatisierte Tests auch umzusetzen und damit die digitale Transformation weiter voranzutreiben. Das geht aus der weltweit durchgeführten Studie »Continuous Testing as a Digital…

Nur 18 Prozent der Firmen haben eine digitale Testing-Strategie

Während 18 Prozent der Unternehmen in Europa eine Testing-Strategie für digitale Anwendungen implementiert haben, müssen 82 Prozent sie entweder noch entwickeln oder implementieren. Das hat eine Studie gezeigt, die von Accenture beauftragt und von Pierre Audoin Consultants (PAC) durchgeführt wurde [1]. Die Studie »Digital Testing in Europe: Strategies, Challenges & Measuring Success« verdeutlicht, wie sehr…

Automobil-Branche: Software-Testing (k)eine Kernkompetenz der Hersteller

In fünf Jahren sei die Hälfte der Wertschöpfung im Auto digital, prognostizierte Audi-Chef Rupert Stadler auf dem Wirtschaftstag 2015 in Berlin. Software und Apps zu entwickeln gehört jedoch nicht zu den traditionellen Kernkompetenzen der Autohersteller. Um den Anforderungen einer digitalisierten Gesellschaft gerecht zu werden, führt für OEMs dennoch kein Weg daran vorbei. Hersteller haben daher…

Kunden in der digitalen Welt bleiben vielen Unternehmen fremd

Fast alle Unternehmen sprechen Kunden auf digitalem Weg an – aber nur zwei Drittel versuchen, die Wünsche durch Analyse von Nutzerdaten besser zu verstehen. Vor allem kleine Unternehmen sind zurückhaltend. Bitkom stellt erstmals Studie zum Einsatz von Digital Analytics & Optimization vor.   Praktisch alle Unternehmen versuchen, online ihre Kunden zu erreichen – aber jedes…

Digitale Transformation: Wie Technologien die Kundenbeziehung und das Wettbewerbsumfeld verändern

  Die Digitalisierung fordert von Unternehmen ein vollkommen neues Denken in Bezug auf ihre Geschäftsprozesse. Organisationen, die jahrzehntelang erfolgreich stationär Geschäfte gemacht haben, fällt diese Umstellung allerdings besonders schwer. Dies ist auch darauf zurückzuführen, dass sich Veränderungen im Marktgeschehen, die sich in der Regel im Lauf mehrerer Jahre vollzogen haben, durch digitale Prozesse nun um…

Das Verharren in alten Strukturen und unzureichende Security-Maßnahmen bremsen DevOps aus

Viele Unternehmen in Deutschland haben erkannt, dass die digitale Transformation mit den herkömmlichen Methoden der Softwareerstellung und Auslieferung nur unzureichend unterstützt werden kann, dennoch dominieren die klassischen, stark strukturierten und in sich geschlossenen Vorgehensweisen weiterhin. Sie bremsen die Forderungen der Fachabteilungen nach Agilität, Schnelligkeit und Flexibilität bei der Softwarebereitstellung aus. Das bringt erhebliche Risiken für…

Tipps zum Testen komplexer Microservice-Architekturen

Microservices bieten etliche Vorteile, für das Testing ergeben sich aber neue Herausforderungen, denn die Komplexität nimmt deutlich zu. Das Münchner IT-Unternehmen Consol zeigt, welche Herausforderungen bestehen und welche Maßnahmen ergriffen werden müssen, um ein effizientes Testen sicherzustellen.   Microservices entwickeln sich immer mehr zur State-of-the-Art-Systemarchitektur, da sie zahlreiche Vorteile bieten, beispielsweise hohe Agilität, Flexibilität und…