Marco GerussiMarco Gerussi Permanente VerA�nderung bedeutet permanentes Testen

01.04.09 by Marco Gerussi

Stetige VerA�nderung als Treiber

Unternehmen mA?ssen sich laufend internen und externen Begebenheiten anpassen. VerA�nderungen an geschA�ftskritischen Software-Systemen sind die Folge. Dauernd werden Fehler korrigiert, Anpassungen vorgenommen und Konfigurationen geA�ndert. Die Entwicklung von neuen Funktionen, die EinfA?hrung neuer Produkte, das Einspielen von Hot Fixes, Service Packages und Upgrades der Hersteller ziehen automatisch VerA�nderungsprojekte nach sich. Auch wenn die VerA�nderungen unterschiedliche Quellen haben, eines haben sie alle gemeinsam: alle betreffen die geschA�ftskritischen Applikationen im laufenden Betrieb a�� die Kernprozesse der Unternehmung. Fehler kA�nnen gewaltige Auswirkungen haben, ganze Unternehmensbereiche kA�nnen still stehen. Umso wichtiger ist es, die VerA�nderungen am System mit mA�glichst optimalem Ressourceneinsatz zu testen, um Risiken beim Ausrollen schon im Voraus zu minimieren. Hier setzt nachhaltiges Software-QualitA�tsmanagement auf. Es soll nicht einfach A�getestet werdenA�. Testen soll

A�

  • einheitlich, werkzeuggestA?tzt, methodisch
  • effizient, einfacher durchfA?hrbar,
  • effektiv, A?berprA?fbar (Inhalt und Abdeckung),
  • und doch umfassend,
  • nachvollziehbar, verlA�sslich
  • wiederverwendbar, fA?r neue Tester lernbar,
  • automatisierbar und
  • planbar

A�sein. FA?r die nA�tige Testumgebung, die diesen AnsprA?chen genA?gt, bedarf es eines ganzheitlichen Software-QualitA�tsmanagement und der BerA?cksichtigung von mindestens vier kritischen Erfolgsfaktoren.

A�

1. Organisation durch Integration in Aufbau- und Ablauforganisation

Um ein umfassendes Software-QualitA�tsmanagement inklusive Testautomatisierung sicherzustellen, braucht es innerhalb der betroffenen Unternehmenseinheit eine geeignete Organisation, welche fA?r den gesamten Software-QualitA�tsprozess verantwortlichund mit der notwendigen Kompetenz ausgestattet ist. Sie hat zum Ziel, das Testen fA?r alle Projekte zu standardisieren und mit kompetenten Ressourcen zu unterstA?tzen. Ein solches Center of Excellence (CoE) definiert standardisierte Methoden und unterstA?tzt die Projektorganisationen beim Ableiten der Test-Anforderungen, beim Planen und AusfA?hren von Tests sowie beim A?bergreifenden Defect Management und beim Reporting. Sie ist zentrale Anlaufstelle fA?r alle AktivitA�ten rund um die Sicherstellung der SoftwarequalitA�t von Unternehmenssoftware.

A�

2. Konsequente FA?hrung durch Testmanagement

FA?r jede AktivitA�t im Unternehmen, fA?r jedes Projekt, und so auch fA?r das Testen, ist ein systematisches Planen, Entscheiden, AusfA?hren und Bewerten der Ergebnisse aller AktivitA�ten unabdingbar. Ein konsequentes Testmanagement reduziert die Software-Risiken massiv. Damit wird ein methodisches Vorgehen fA?r die Spezifikation der Test-Anforderungen und die TestaktivitA�ten aller Art ermA�glicht. AktivitA�ten wie Testplanung, Testauthorisierung, A?berwachung und Steuerung der TestdurchfA?hrung, Testbewertung, aber auch Testdokumentation und die Sicherstellung der Wiederverwendung werden konsequent vorgenommen. Beispiele aus der Praxis (siehe Box „Aus der Praxis“) zeigen, dass nur schon mit Software-QualitA�ts- und Testmanagement schnell Nutzen realisiert werden kann. Denn primA�res Ziel von Softwareprojekten ist es, qualitativ hochwertige Software innerhalb Kosten- und Zeitvorgaben zu liefern und sauber abnehmen zu lassen. DafA?r stellt das Testmanagement die Grundlagen sicher, ein effizientes und effektives Testen wird mA�glich.

A�

3. Effizienz durch gezielte WerkzeugunterstA?tzung

Ist die Organisation entsprechend aufgestellt und der Software-QualitA�tsprozess inklusive Testprozess vom Anforderungsmanagement bis zum letzten Abnahmetest definiert und fA?hrbar, zeigt sich schnell, dass die Leistung und QualitA�t eines CoEa��s durch gezielte WerkzeugunterstA?tzung bei manuellen TA�tigkeiten und mit Automatisierung massgeblich verbessert werden kann. Durch standardisierte Test-Prozeduren und konsequente Wiederverwendung lassen sich die AufwA�nde fA?r das Testen erheblich senken, eine hohe Wiederverwendbarkeit erreichen und vor allem Zeit und somit Geld sparen. Das werkzeuggestA?tzte Testmanagement und das Testen selbst werden optimalerweise als Teil des Software-QualitA�tsprozesses in den gesamten Software-Entwicklungsprozess integriert, um noch effizienter Software zu entwickeln.

A�

4. EffektivitA�t durch Change Impact Analysen

VollstA�ndiges Testen einer grossen Applikation ist trotz noch so effizientenTestens aus ZeitgrA?nden oft gar nicht mA�glich. Aus diesem Grund ist es zwingend, den Umfang der TestaktivitA�ten gezielt zu reduzieren. Basierend auf der auslA�senden VerA�nderung sollte so frA?h wie mA�glich im Entwicklungsvorgehen der Umfang der TestaktivitA�ten bestimmt und die Testabdeckung optimiert werden. Auf diese Weise lA�sst sich der gesamte Testaufwand auf das NA�tigste reduzieren. Change Impact Analysen ermA�glichen es, den Testaufwand im Hinblick auf die geplanten A�nderungen zielgerecht zu bA?ndeln. Mit einer Analyse der anzupassenden oder zu transportierenden A�nderungen wird evaluiert, welche Transaktionen, Prozesse und Applikationen vom Change betroffen sind. Sind diese bekannt, werden sie als Ergebnis der entsprechenden Testszenarien identifiziert und mit den passenden Testscripts dem Test-Administrations-Werkzeug A?bermittelt. Mittels Risikoanalyse werden die wirklich business-relevanten Tests zur AusfA?hrung ausgewA�hlt, die automatische TestdurchfA?hrung gestartet und die Auswertungen dazu generiert.A�

A�

Erfolgsfaktoren fA?r hohe SoftwarequalitA�t
Erfolgsfaktoren fA?r wirksames Software-QualitA�tsmanagement

A�

Aus der Praxis – Test Management und Automatisierung in der SBB Test Factory

Die SBB entschied sich schon frA?h, fA?r das Testen ihrer Projekte auf eine Test Factory zu bauen. Im Mittelpunkt standen methodische und verlA�ssliche Testverfahren, die fA?r verschiedenste Arten von Software eingesetzt werden kA�nnen. Damit die Kernaufgaben der bereits professionell aufgebauten Organisation werkzeugtechnisch unterstA?tzt werden kA�nnen, beschloss die SBB die EinfA?hrung von HP Quality Center. A�Unsere Anforderungen an einheitliche, zuverlA�ssige und effiziente Testprozeduren sind ohne spezielle SoftwareunterstA?tzung nicht mehr zu erfA?llenA�, so Bruno Linder, Leiter der Test Factory bei der SBB, vor dem Projektstart. Mit der EinfA?hrung von HP Quality Center und HP Quick Test Professional sollten sowohl der Zeitaufwand fA?r die Tests reduziert als auch die DurchfA?hrung gesteuert und vereinfacht werden. Beides Ziele, die die SBB in den ausgewA�hlten Gebieten erreicht hat. Innerhalb Jahresfrist ist es der SBB, unterstA?tzt von Buy buspar 15 mg beteo gelungen, die Prozesse in der SBB Test Factory optimal mit Werkzeugen zu unterstA?tzen und zu automatisieren. VerlA�ssliche, effiziente Tests sind heute Standard. Durch die gewA�hlte Vorgehensweise wurden die Projekt- und Testkosten reduziert. A�Wir konnten schnell Nutzen aus den neuen Werkzeugen ziehen und den Ausbau der Testmethodik in A?bereinstimmung mit den MA�glichkeiten des HP Quality Centers durchfA?hrenA�, zeigt sich Bruno Linder zufrieden.

Fazit

Sind Testorganisationen aufgestellt und einheitliche Methoden definiert und ein Testmanagement fA?r die FA?hrung etabliert, kA�nnen die Kernaufgaben eines Center of Excellence mit Testwerkzeugen standardisiert und automatisiert werden. Sind die FunktionalitA�ten vom einfachen Test Management, A?ber Anforderungserfassung, die Testautomatisierung bis zur Integration A?ber den Software-QualitA�tsprozess in den Entwicklungs-Prozess schrittweise und konsequent eingefA?hrt, ist das Nutzenpotenzial riesig. TestaufwA�nde werden wirksam und effizient eingesetzt. Die Unternehmung kann sich schneller und mit weniger Risiko an VerA�nderungen anpassen. Das bedeutet geringere Kosten, echte Transparenz, verbesserte Systemanforderungen und eingehaltene oder gar verkA?rzte Zeitspannen bei der Entwicklung oder VerA�nderungen an Softwaresystemen. Im Betrieb fA?hrt es zu hA�herer StabilitA�t und geringerer Ausfallrate dank hA�herer QualitA�t der Unternehmenssoftware.

Konferenzmagazin – Swiss Testing Day 2009

Der Artikel wurde im Konferenzmagazin zum Swiss Testing Day 2009 publiziert:

A�

Sphere: Related Content

Ein Kommentar

  • 1
    Christoph Preschern:

    Permanentes Testen von Software in „agilen Zeiten“ kann aus zeitlichen Gründen nur automatisiert stattfinden. Wer ist aber in der Lage die Automatisierung von Tests noch während der Entwicklungsphase einer Software voranzutreiben? Der Testaufwand bzw. die technische Realisierung der Automatisierbarkeit liegt in solchen Projekten voll und ganz beim Entwickler der Software. Dieser sollte die notwendigen Testautomatisierungsmodule so gestalten, dass Sie einerseits täglich im laufenden Entwicklungsprozess (Continious Integration) gestartet, aber auch andererseits von Fachtestern bei übergeordneten Integrationstests wiederverwendet werden können.
    Der Entwickler selbst benötigt aber auch die notwendigen Werkzeuge zur Erstellung der automatisierten Tests. Für das automatisierte Testen von GUI Oberflächen brauchen Entwickler aber „smarte“ und flexible Tools welche sich einfach und schnell in bestehende Entwicklungsumgebungen integrieren lassen. Der Trend in diese Richtung wird teilweise auch schon Microsoft über den Team Foundation Server sowie durch erste Schnittsellen wie UI Automation (für WPF Applikationen) unterstützt.

Kommentar schreiben

XHTML: Sie können diese Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>