Agiles Testmanagement trifft DevOps

Die Prozesse in der Softwareentwicklung stehen niemals still. Immer wieder tauchen neue Konzepte und Trends auf, die mehr Effizienz, höhere Qualität oder häufigere Releases bringen sollen.

Die Prozesse in der Softwareentwicklung stehen niemals still. Immer wieder tauchen neue Konzepte und Trends auf, die mehr Effizienz, höhere Qualität oder häufigere Releases bringen sollen. Im Laufe der Zeit haben zwei dieser Entwicklungen den Status des „Trends“ verlassen und sind zu einem festen Bestandteil vieler Projekte geworden. Sowohl die agile Entwicklung als auch DevOps sind fest in der modernen Softwareentwicklung verankert und stehen für eine neue Form der Zusammenarbeit.

Doch welche Vorteile bieten diese neuen Methoden tatsächlich? Um dies besser zu verstehen, schlüsseln wir zunächst den Begriff DevOps ein wenig auf und zeigen dann, warum agiles Testmanagement in diesem Zusammenhang eine wichtige Rolle spielt.

DevOps: Integration von der Entwicklung bis zum Vertrieb

DevOps: Integration von der Entwicklung bis zum Vertrieb

Der Begriff DevOps wird in der modernen Softwareentwicklung sehr häufig verwendet. Aber was bedeutet das eigentlich grundsätzlich? Auf diese Frage gibt es keine eindeutige Antwort, da es unterschiedliche Auslegungen und Definitionen gibt. Generell lässt sich jedoch sagen, dass DevOps als ein Konzept zur Prozessverbesserung betrachtet werden kann, das eine Veränderung der Unternehmenskultur darstellt. Gemeinsame Prozesse und einheitliche Instrumente sollen eine effektivere und effizientere Zusammenarbeit ermöglichen. Im Bereich der Softwareentwicklung bedeutet dies eine enge Vernetzung zwischen Planung, Entwicklung, Test und Vertrieb.

Aus dieser Definition lässt sich ableiten, dass auch die Qualitätssicherung von Anfang an ein integraler Bestandteil des Entwicklungsprozesses sein muss. Geeignete Testfälle sollten bereits in der Phase der Anforderungserstellung erstellt werden. Agile Methoden im Projektmanagement sorgen auch dafür, dass die Entwicklungsabteilung mit dem Anforderungsmanagement vertraut ist.

 

Der Weg zum Continuous Development

Der Weg zum Continuous Development

Einzelne Begriffe oder Prozesse, die dem Thema DevOps untergeordnet sind, sind Continuous-Integration, -Testing und -Delivery. Diese modernen Arbeitsmethoden in der Softwareentwicklung bauen aufeinander auf. Continuous Integration beschreibt einen Prozess, bei dem Komponenten kontinuierlich zu einer Anwendung zusammengefügt werden. Auch beim Testen werden kontinuierlich Testfälle in diesen Prozess integriert, was eine hohe Qualität der Software bereits während des Entwicklungsprozesses gewährleistet.

Das bedeutet, dass nicht nur jederzeit ein aktueller, sondern auch ein tatsächlich funktionierender Status verfügbar ist. Continuous Delivery schließlich beschreibt die Möglichkeit, dem Nutzer jederzeit eine aktuelle, fehlerfreie Version der Software zur Verfügung stellen zu können.

DevOps umfasst all diese Bereiche und steht für die Interaktion zwischen allen am Entwicklungsprozess beteiligten Abteilungen.

Agiles Testmanagement als Teil des Prozesses

Wie bereits erwähnt, spielt das agile Testen auch beim Thema DevOps eine entscheidende Rolle. Sowohl Tester als auch Entwickler sind auf schnelles und direktes Feedback angewiesen, um die Software jederzeit fehlerfrei und in der neuesten Version bereitstellen zu können. Eine gute Implementierung des Testprozesses in die „DevOps-Pipeline“ ist hierfür besonders wichtig. Es muss immer sichergestellt sein, dass die Deployments vor der Auslieferung alle Tests erfolgreich bestanden haben.

Voraussetzung dafür ist, dass neben einer guten Testabdeckung auch auf die Geschwindigkeit der Tests Wert gelegt wird. Vor allem automatisierte Tests spielen in diesem Zusammenhang eine wichtige Rolle. Auf manuelle Tests kann jedoch nicht ganz verzichtet werden, da nicht alle Tests automatisiert werden können. Daher ist es wichtig, die verschiedenen Testarten optimal zu kombinieren und in den Entwicklungsprozess zu integrieren. Ein ganzheitliches Testmanagement-Tool, das die verschiedenen Tests orchestrieren und die Ergebnisse zentral zusammenfassen kann, ist dafür ideal.

Agiles Testmanagement als Teil des Prozesses

Herausforderungen für die Qualitätssicherung

Zusammenfassend lässt sich sagen, dass das Testmanagement unter DevOps Ergebnisse liefern muss, wenn sie benötigt werden. Dies ist grundsätzlich nur möglich, wenn die Tests in einen agilen Entwicklungsprozess integriert sind und das Testmanagement selbst agilen Mustern folgt.

Neben der bereits erwähnten Integration in die DevOps-Pipeline und der Orchestrierung der verschiedenen Testtypen ist letztlich auch die Übersicht über das Projekt, also die Transparenz, sehr wichtig. Diese ist nur gegeben, wenn alle Daten zentral verwaltet werden und eine optimale Auswertung, Analyse und Steuerung des Projektes und der Qualitätssicherung erfolgen kann. Auch hier wird deutlich, dass ein ganzheitliches Werkzeug ein entscheidender Faktor für die agile Entwicklung ist.

Insgesamt zeigt sich, dass die Anforderungen an das gesamte Team mit Agilität und Methoden wie DevOps steigen, aber auch große Vorteile mit sich bringen. Während konservative Methoden wie das Wasserfallmodell nur selten neue Software-Releases zuließen, können Aktualisierungen jetzt in sehr kurzer Zeit ausgeliefert werden.

Zum Thema passende Artikel

Testmanagementlösungen sind nicht unbedingt eigenständige Lösungen. Einige können andere Tools, wie z. B. Jira, ergänzen.…

photo
Denis Matusovskiy
12 mins read

StatCounter reports that 64.53% of users worldwide use Chrome as their primary browser. It’s not…

photo
Olga Ryan
7 mins read

Testmanagement-Lösungen sind eine große Bereicherung für eine bessere Qualitätssicherung, aber Sie können noch mehr Nutzen…

photo
Denis Matusovskiy
12 mins read
Abonnieren sie den aqua-blog

Holen Sie sich die neuesten Beiträge direkt in Ihren Posteingang