openPR Recherche & Suche
Presseinformation

Testen in der agilen Softwareentwicklung - wichtig und möglich

21.04.201519:05 UhrIT, New Media & Software
Bild: Testen in der agilen Softwareentwicklung - wichtig und möglich
Foto: Beckmann & Partner CONSULT
Foto: Beckmann & Partner CONSULT

(openPR) Eine fehlerhafte Programmzeile, ein falscher Datentyp oder ein Vorzeichenfehler bei einer Berechnung - und schon werden teure Fehler riskiert. Ein Buchungsfehler im Juni 2014 kostete die Hessische Landesbank rund 900.000 Euro (Quelle: Die Welt vom 06.06.2014). Im Jahre 1999 führte eine nicht funktionierende elektronische Sperre bei der WestLB dazu, dass mehreren Kunden Beträge nach bargeldloser Zahlung doppelt in Rechnung gestellt wurden (Quelle: Spiegel online vom 28.07.1999). Einfache und durch Tests vermeidbare Fehler. Doch wie sehen Tests in einem Projekt aus, in dem agil Software entwickelt wird, und das keinem in Phasen strukturierten Plan folgt?



Herausforderung agile Softwareentwicklung im Zahlungsverkehr

Dieser Bericht handelt von den Herausforderungen und den Erfahrungen aus der agilen Softwareentwicklung im Zahlungsverkehr, denen ich mich als Projektmitarbeiter in einem komplexen Zahlungsverkehrsprojekt gegenübergestellt sah.

Diese Herausforderungen liegen nicht nur in der Entwicklung von gewollten oder geforderten Funktionalitäten, sondern auch in der Integration von vor- und nachgelagerten Geschäftsprozessen – und das zu jedem Zeitpunkt unter Sicherstellung der Funktionalität und Qualität. Um auf Kundenanforderungen, Auflagen der Bankenaufsicht, Änderungen an Schnittstellen oder Anpassungen an Prozesse flexibel reagieren zu können, kann die agile Softwareentwicklung eine Lösung sein.

Wird ein Projekt beispielsweise nach dem agilen Vorgehensmodell Scrum vorangetrieben, folgt die Entwicklung der Anwendung einem festen Rhythmus. In so genannten Sprints mit einer Dauer von wenigen Wochen wird eine vorher festgelegte Auswahl von Anforderungen umgesetzt. Am Ende des Sprints steht die Auslieferung fertiger Funktionalitäten.

Softwaretests bei agiler Softwareentwicklung

Eine besondere Betrachtung bei agiler Softwareentwicklung verdient der Test. Wie groß schneidet man die Testobjekte? Welche Testdaten werden verwendet? Kann der Test unabhängig von der Entwicklung laufen? Ist es möglich, eine vollständige Testabdeckung zu erreichen?

Zeitversetztes Testen von Sprints

Eine Möglichkeit, den Softwaretest in die agile Entwicklung zu integrieren, ist die Zeitversetzung des Tests um einen Sprint: Während neue Funktionalitäten in einem Sprint entwickelt werden, werden die Funktionalitäten des letzten Sprints getestet. Der Fokus liegt so auf genau definierbaren Testobjekten, die eine schnelle Resonanz der Tester ermöglichen.
Um die Testabdeckung zu erhöhen, können diese Sprint-Tests durch eine Kombination von Entwicklertest, Komponenten-Test, explorativem Test und Performance-Test - auf die ich im Folgenden eingehe - während der Entwicklung unterstützt werden.

Auf der Suche nach Fehlerwirkungen - Entwicklertests

Den ersten Weg auf der Suche nach Fehlerwirkungen stellen Entwicklertests dar. Auf Grund seiner eigenen Erfahrung und seiner Kenntnis des Codes testet der Entwickler seine entwickelten Programmfunktionen. Entwicklertests können vereinzelt manuell durch den Entwickler durchgeführt werden. Oder, bei einem Build der Anwendung, auch im Ganzen automatisiert durchgeführt werden.

Strukturieren und Vereinfachen - mit Komponenten-Tests

Strukturiert und vereinfacht wird das Testen durch Komponenten-Tests: Einzelne Funktionalitäten werden gruppiert und gesammelt getestet - zum Beispiel der Import einer Datei. Werden diese Komponenten-Tests automatisiert zu bestimmten Ereignissen durchgeführt, zum Beispiel zu einem Build der Anwendung, erhält man eine einfache und wenig zeitaufwändige Qualitätssicherung.

Weitere Möglichkeiten – Explorativer Test, Performance-Test, Parallel-Produktion

Eine zusätzliche Testaktivität ist der explorative Test – ein erfahrungsbasierter Test, der keinem Testplan folgt, sondern Funktionalitäten auf Grund eines „Bauchgefühls“ des Testers kontrolliert. Außerdem der Performance-Test, der das Verhalten der Anwendung unter Last überwacht. Neben diesen Testaktivitäten zeigt die Einrichtung einer Parallel-Produktion überzeugende Ergebnisse: Die in der Produktions-Umgebung verarbeiteten Daten werden anonymisiert in die Test-Umgebung eingeleitet und verarbeitet.

Vereinfachung der Tests durch Automatisierung - Systemtests

Erheblich minimieren lässt sich der Testaufwand durch automatisierte Systemtests: Ein festgelegter Fundus von Systemtests, die möglichst viele Funktionalitäten abdecken, werden täglich, auf dem aktuellen vom Entwickler freigegebenen Entwicklungsstand, ausgeführt. Dies hat einige Vorteile: Fehler werden so früh wie möglich entdeckt, wodurch der Entwickler noch nah am Kontext ist und eine Behebung des Fehlers kaum Aufwand bedeutet. Weiterhin wird die Aufdeckung von Fehlern über den gesamten Sprint verteilt, was zu einer moderaten Zusatzbelastung der Entwickler führt.

Bei diesen automatisierten Systemtests sind zwei wichtige Punkte zu beachten:
Erstens ist eine vorherige Dokumentation des Testfalls unabdingbar. Möglicherweise deckt ein Testfall längere Zeit keine Fehler auf. Um dann bei einem möglichen späteren Fehlschlag des Tests diesen nachvollziehen und Fehler identifizieren und beheben zu können, ist die Dokumentation Voraussetzung. Zweitens sollten Testfälle, die nicht primär die GUI einer Anwendung testen, auch möglichst unabhängig von dieser sein. Deshalb sollten schon bei der Entwicklung einer Anwendung Systemschnittstellen für Tests geschaffen werden. Denn sonst können Änderungen in Texten einer Web-Anwendung, zum Beispiel das Verschieben oder Umordnen von Buttons, einen Testfall zum Fehlschlag bringen, obwohl die fachliche Ausführung weiterhin korrekt war.

Die richtigen Testdaten machen den Unterschied

Bei allen beschriebenen Tests spielen die benutzten Testdaten eine wichtige Rolle. In der Regel werden manuell erstellte Testdaten verwendet. Diese kann man genau auf das Testobjekt zuschneiden und so klein wie möglich halten. In einigen Fällen ist es aber unabdingbar, selbst entwickelte oder proprietäre Tools zur Testdaten-Generierung zu nutzen. So erfordert beispielsweise jedes Projekt im Bereich des Zahlungsverkehrs mindestens einen Lasttest, bei dem die Anwendung mit dem zukünftig erwarteten Volumen konfrontiert wird. Hierbei ist eine manuelle Erstellung von Testdaten ausgeschlossen. Eine Alternative kann in Einzelfällen der Test mit anonymisierten Produktiv-Daten darstellen: Die in einer Produktions-Umgebung verarbeiteten Daten werden zusätzlich in die Testumgebung eingeleitet. So wird nicht nur das produktive Volumen mit wenig Aufwand simuliert, es wird zusätzlich auch eine breite Variabilität der Testdaten erzielt.

Um die oben beschriebenen Testaktivitäten durchzuführen, sind einige Voraussetzungen zu erfüllen: Neben der Einrichtung einer angemessenen Testumgebung mit der Möglichkeit der automatisierten Testdurchführung ist eine enge Zusammenarbeit zwischen Testern und Entwicklern notwendig. Vor allem bei der Implementierung der automatisierten Tests müssen die Tester von den Entwicklern unterstützt werden. Deshalb ist es sinnvoll, wenn die Tester Bestandteil des Projekt-Teams sind und an allen Projektaktivitäten - zum Beispiel bei Scrum: Daily Scrum, Sprintplanung - teilnehmen. So erfahren sie frühzeitig von neuen Funktionen in der Anwendung und können sofort mit der Entwicklung von Testfällen beginnen. Zudem können sie erwartete Aufwände kommunizieren, die durch Testaktivitäten entstehen.


Quellen & Verweise:

Späte Überweisung kostet Landesbank eine Million, Die Welt vom 06.06.2014,
http://www.welt.de/wirtschaft/article128803010/Spaete-Ueberweisung-kostet-Landesbank-eine-Million.html

Buchungspanne: "Chaos auf dem Konto", Spiegel online vom 28.07.1999,
http://www.spiegel.de/wirtschaft/buchungspanne-chaos-auf-dem-konto-a-33183.html

ISTQB®/GTB Standardglossar der Testbegriffe Deutsch/Englisch
http://www.german-testing-board.info/service/information/glossar.html

Diese Pressemeldung wurde auf openPR veröffentlicht.

Verantwortlich für diese Pressemeldung:

News-ID: 850003
 597

Kostenlose Online PR für alle

Jetzt Ihren Pressetext mit einem Klick auf openPR veröffentlichen

Jetzt gratis starten

Pressebericht „Testen in der agilen Softwareentwicklung - wichtig und möglich“ bearbeiten oder mit dem "Super-PR-Sparpaket" stark hervorheben, zielgerichtet an Journalisten & Top50 Online-Portale verbreiten:

PM löschen PM ändern
Disclaimer: Für den obigen Pressetext inkl. etwaiger Bilder/ Videos ist ausschließlich der im Text angegebene Kontakt verantwortlich. Der Webseitenanbieter distanziert sich ausdrücklich von den Inhalten Dritter und macht sich diese nicht zu eigen. Wenn Sie die obigen Informationen redaktionell nutzen möchten, so wenden Sie sich bitte an den obigen Pressekontakt. Bei einer Veröffentlichung bitten wir um ein Belegexemplar oder Quellenennung der URL.

Pressemitteilungen KOSTENLOS veröffentlichen und verbreiten mit openPR

Stellen Sie Ihre Medienmitteilung jetzt hier ein!

Jetzt gratis starten

Weitere Mitteilungen von Beckmann & Partner CONSULT

Bild: Gelebter Datenschutz - in der Bielefelder BeratungsmanufakturBild: Gelebter Datenschutz - in der Bielefelder Beratungsmanufaktur
Gelebter Datenschutz - in der Bielefelder Beratungsmanufaktur
Beckmann & Partner CONSULT agiert nach EU-Datenschutzgrundverordnung Seit Ende Mai 2018 ist die neue europäische Datenschutzgrundverordnung (DSGVO) in Kraft. Zu diesem Stichtag hat auch Beckmann & Partner CONSULT die Abläufe und die Verarbeitung personenbezogener Daten im eigenen Haus noch einmal überprüft und mithilfe ihres externen Datenschutzbeauftragten den neuen Richtlinien angepasst. Zudem wurden alle Mitarbeiter umfassend sensibilisiert und geschult. So werden sie auch weiterhin in ihren Projekten gesetzeskonform agieren und wertvolle…
Bild: Die Aufsicht treibt die Banken nach wie vor!Bild: Die Aufsicht treibt die Banken nach wie vor!
Die Aufsicht treibt die Banken nach wie vor!
Kundenbefragung zeigt das Spannungsverhältnis zwischen „sinnvoller“ Entwicklung und „notwendiger“ Pflicht in der Finanzbranche. Zum zweiten Mal hat die Beratungsmanufaktur Beckmann & Partner CONSULT Kunden und Wegbegleiter zur Teilnahme an einer Umfrage aufgerufen. Die Fragen drehten sich dabei um den Markt, die Beratung und natürlich den Kunden selbst: Was bewegt den Kunden? Wie kann Beckmann & Partner CONSULT eine optimale Beratung liefern? Was sind die besonderen Bedürfnisse und Wünsche? Ziel war es, ein Gespür für die Anliegen der Kunden…

Das könnte Sie auch interessieren:

Qualitätssicherung/ Straffung der Softwareentwicklung - die Webinar-Reihe für Application Lifecycle Management
Qualitätssicherung/ Straffung der Softwareentwicklung - die Webinar-Reihe für Application Lifecycle Management
… Dezember 2012 bietet diese Webinar-Reihe von Minerva SoftCare GmbH allen IT-Verantwortlichen die Möglichkeit, sich praxisnah über aktuelle Themen und innovative Strategien der Softwareentwicklung zu informieren. Dazu Herr Michael Vetter Geschäftsführer der Minerva SoftCare GmbH: ,,Heute ist es unumgänglich das breite Spektrum an eingesetzten Applikationen …
Micro Focus SilkTest 2011 erweitert die Möglichkeiten der Test-Automatisierung
Micro Focus SilkTest 2011 erweitert die Möglichkeiten der Test-Automatisierung
… Benutzern die Arbeit mit SilkTest, sondern erleichtert auch der Administration die Kontrolle über die Desktop-Umgebung. Angesichts der Verkürzung der Produktlebenszyklen muss die Softwareentwicklung neue Verfahren bereitstellen, um den Anforderungen des Business gerecht zu werden. Produkt-Releases folgen heute dicht aufeinander und mit weniger Ressourcen …
Bild: QS und Compliance – auch im agilen VorgehenBild: QS und Compliance – auch im agilen Vorgehen
QS und Compliance – auch im agilen Vorgehen
Möhrendorf, 5. Oktober 2015 – Schnelligkeit, Flexibilität, Feedbackstärke: Agile Softwareentwicklung bietet viele Vorteile. Gleiches gilt für das agile Testen. Worauf es bei der agilen Qualitätssicherung ankommt und wie agile Teams dabei auch externe Nachweis- und Compliance-Anforderungen meistern, schildert imbus-Vorstandsmitglied Tilo Linz in zwei …
Reply revolutioniert die Softwareentwicklung durch generative KI mit ‚KICODE Reply'
Reply revolutioniert die Softwareentwicklung durch generative KI mit ‚KICODE Reply'
Reply stellt mit KICODE Reply ein neues Framework für generative KI-basierte Softwareentwicklung vor. Durch die Integration generativer KI-Modelle ermöglicht das Reply Framework einen neuen Ansatz. Reply stellt das Framework KICODE Reply für generative KI-basierte Softwareentwicklung vor. Durch die Integration generativer KI-Modelle ermöglicht das …
Bild: AMBO SOFTWARE auf der CeBIT 2010 in Hannover, DeutschlandBild: AMBO SOFTWARE auf der CeBIT 2010 in Hannover, Deutschland
AMBO SOFTWARE auf der CeBIT 2010 in Hannover, Deutschland
In diesem Jahr ist der rumänische Dienstleister AMBO, der im Bereich Softwareentwicklung Outsourcing und Entwicklung individueller Softwarelösungen tätig ist, wieder mit einem Messestand in Halle 4, Stand B56, vertreten. Der Besucher der Leitmesse der IT-Branche kann sich über das umfassende Dienstleistungsangebot von AMBO informieren: Softwareentwicklung …
Bild: Münchener Konferenz Embedded Testing bietet Expertenwissen für SoftwaretesterBild: Münchener Konferenz Embedded Testing bietet Expertenwissen für Softwaretester
Münchener Konferenz Embedded Testing bietet Expertenwissen für Softwaretester
… verschiedene Werkzeuge auf dem Markt. Royd Lüdtke, Direktor für statische Analysetools bei Verifysoft, ist anerkannter Spezialist für Testwerkzeuge für die sicherheitskritische Softwareentwicklung. In seinem Vortrag "Wegweiser zur Auswahl eines Werkzeugs zur statischen Codeanalyse" gibt er wertvolle Hilfestellungen für Firmen, die statische Codeanalyse …
Bild: HEC GmbH auf den 7. Bremer IT-SicherheitstagenBild: HEC GmbH auf den 7. Bremer IT-Sicherheitstagen
HEC GmbH auf den 7. Bremer IT-Sicherheitstagen
… by Design“ findet am 07. September der 7. Bremer IT-Sicherheitstag statt. Auf zahlreichen Vorträgen wird anhand praxisnaher Beispiele die sichere Softwareentwicklung vorgestellt. Experten diskutieren über die akuten Bedrohungen, konkrete Maßnahmen durch gezielte, auf Sicherheit ausgelegte Softwareentwicklung, sowie die rechtlichen Rahmenbedingungen für …
Bild: Dell unterstützt ARM-Server-EcosystemBild: Dell unterstützt ARM-Server-Ecosystem
Dell unterstützt ARM-Server-Ecosystem
… besteht nun darin, die Weiterentwicklung dieses Partnersystems zu unterstützen. Dell verfolgt mit der jetzt gestarteten Initiative das Ziel, die Softwareentwicklung auf kompakten und hochperformanten Server-Pilotsystemen zu fördern – zusätzlich unterstützt durch einen einfachen Remote-Zugang zu Entwicklungsclustern. Dells "Copper"-ARM-Server-Programm …
Sechs Tipps für Agiles Testen
Sechs Tipps für Agiles Testen
Ismaning, 28. Juni 2010 - In der Agilen Softwareentwicklung spielt frühes und häufiges Testen eine zentrale Rolle. Micro Focus gibt Tipps, wie Entwickler und Tester in Agilen Umgebungen effizienter testen können. Agile Methoden gewinnen in der Softwareentwicklung mehr und mehr an Bedeutung. Unternehmen schätzen dabei die flexible, äußerst effiziente …
Bild: AMBO SOFTWARE auf der CeBIT 2011 in Hannover, DeutschlandBild: AMBO SOFTWARE auf der CeBIT 2011 in Hannover, Deutschland
AMBO SOFTWARE auf der CeBIT 2011 in Hannover, Deutschland
… auf der CeBIT 2011 seine Kompetenz rund um das Thema Nearshoring. Auf dem Messestand in Halle 5, Stand B48 stellt die Firma AMBO SOFTWARE aus. AMBO bietet Softwareentwicklung von der Anforderungsspezifikation über Analyse und Entwurf bis zum Testen, zur Installation und Wartung an. AMBO setzt auf die Werte: Qualität, Professionalität und der Mensch …
Sie lesen gerade: Testen in der agilen Softwareentwicklung - wichtig und möglich