Tool-Evaluierung - Software Quality Lab
Tool-Evaluierung - Software Quality Lab
Tool-Evaluierung - Software Quality Lab
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Seite 1 � 27.12.2006<br />
improve your quality<br />
Ausgabe 2006 / 3<br />
Erscheinungsart: ca. 4 x jährlich in elektronischer Form<br />
In dieser Ausgabe …<br />
� <strong>Tool</strong> <strong>Evaluierung</strong><br />
� Das <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> TEC - <strong>Tool</strong> Evaluation Center<br />
� Beispielhafte Vorstellung einiger Test-<strong>Tool</strong>s<br />
� Literatur und Zitate<br />
<strong>Tool</strong> <strong>Evaluierung</strong> …<br />
Wie kann eine <strong>Tool</strong>-<strong>Evaluierung</strong> effizient und auf einer fundierten Basis<br />
durchgeführt werden?<br />
Die <strong>Tool</strong>-<strong>Evaluierung</strong> besteht im Wesentliche aus folgenden Schritten:<br />
1. Definition der eigenen Anforderungen und Entscheidungsgrundlagen<br />
(z.B. in Form einer Checkliste oder eines ersten groben Lastenhefts)<br />
2. Schaffen eines Marktüberblicks von in Frage kommenden <strong>Tool</strong>s<br />
3. Gegebenenfalls grobe Vorauswahl von passenden <strong>Tool</strong>s (z.B. anhand der<br />
individuell definierten <strong>Tool</strong>-<strong>Evaluierung</strong>s-Checkliste)<br />
4. Anfordern oder Beschaffen der <strong>Tool</strong>s<br />
5. Installation und Konfiguration der <strong>Tool</strong>s<br />
6. Erstellen von passenden <strong>Evaluierung</strong>s-Szenarien und Beispielen<br />
7. Vergleich der <strong>Tool</strong>s und Erstellung einer Grundlage für die Entscheidungsträger<br />
(z.B. in Form einer SWOT- oder Nutzwert-Analyse)<br />
8. Erstellung einer detaillierten Anforderungsspezifikation<br />
9. Start des detaillierten Verhandlungs– und Einführungsprozesses/-projekts<br />
Im Rahmen der <strong>Tool</strong>-<br />
<strong>Evaluierung</strong> sind vielfältige<br />
Aspekte zu berücksichtigen.<br />
Abbildung 1 zeigt einige der<br />
wesentlichen Aspekte.<br />
Wie kann nun eine<br />
<strong>Tool</strong>-<strong>Evaluierung</strong> effizient<br />
und auf einer fundierten<br />
Basis durchgeführt werden?<br />
Dazu kann z.B. ein<br />
sogenanntes „<strong>Tool</strong> Evaluation<br />
Center“ herange-<br />
Unternehemens-<br />
Kultur<br />
Prozesse<br />
Integration,<br />
Schnittstellen<br />
zogen werden. Dies ist eine typischerweise ständig betriebene Umgebung in der<br />
die aktuellsten <strong>Tool</strong>s vorkonfiguriert und mit plausiblen Testbeispielen hinterlegt<br />
zur <strong>Evaluierung</strong> bereitgestellt werden.<br />
Dieses <strong>Tool</strong> <strong>Evaluierung</strong>s Center kann den <strong>Tool</strong>-Interessenten die Schritte<br />
2.-6. der <strong>Tool</strong>-<strong>Evaluierung</strong> abnehmen und die Schritte 7. bis 9. wesentlich erleichtern<br />
und kann damit enorm viel Zeit sparen, da diese Aktivitäten üblicherweise<br />
zumindest mehrere Tage, bei komplexeren <strong>Evaluierung</strong>en sogar viele<br />
Wochen an Arbeitszeit erfordert.<br />
Im nachfolgenden Beitrag wird beispielhaft das TEC - <strong>Tool</strong> Evaluation Center<br />
von <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> vorgestellt.<br />
<strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> GmbH<br />
A-4222 Langenstein / Linz Fliederstrasse 8 www.software-quality-lab.at<br />
� �<br />
Methoden<br />
TOOL<br />
Anforderungen<br />
Projekte<br />
Kosten/<br />
Nutzen<br />
Anwender<br />
Abb.1: Einige Aspekte im Rahmen der <strong>Tool</strong>-Auswahl<br />
Quelle: Bergsmann<br />
K<br />
<strong>Quality</strong><br />
nowledge<br />
Letter<br />
www.software-quality-lab.at<br />
<strong>Tool</strong>-<strong>Evaluierung</strong><br />
Wie treffen Sie die<br />
Entscheidung?<br />
In Gesprächen mit unseren Kunden und<br />
Interessenten kommen wir auch immer wieder<br />
auf das Thema <strong>Tool</strong>s zu sprechen.<br />
Dabei ist natürlich ein wesentlicher Erfolgsfaktor,<br />
wie man die passenden <strong>Tool</strong>s evaluiert<br />
und auswählt.<br />
Leider wird dieses doch vielfach auch strategisch<br />
wichtige Thema oft recht halbherzig<br />
angegangen.<br />
Die Gründe dafür sind vielfältig:<br />
� keine Zeit, da gerade viele andere wichtige<br />
Projekte laufen<br />
� keine qualifizierten Leute, die das beurteilen<br />
können<br />
� zu wenig Marktüberblick über die gängigen<br />
<strong>Tool</strong>s<br />
� …<br />
Um den Aufwand der <strong>Evaluierung</strong> zu minimieren,<br />
holt man sich oft auch einen billigen<br />
Studenten oder Praktikanten, der das dann<br />
erledigt und auf dessen Ergebnissen die<br />
strategische Entscheidung basiert.<br />
Dass diesen jungen Leuten oft der Überblick,<br />
die notwendige praktische Erfahrung sowie<br />
auch die strategisch/unternehmerische Sicht<br />
fehlt, wird dabei nicht bedacht.<br />
Außerdem wird oft zu wenig Zeit in die <strong>Evaluierung</strong><br />
investiert, sodass nach ein bisschen<br />
„Herumspielen“ diese wichtige Entscheidung<br />
auf Basis einer wackeligen Grundlage getroffen<br />
wird.<br />
Wie die <strong>Tool</strong>-Entscheidung auch effizienter<br />
und auf Basis einer fundierten <strong>Evaluierung</strong><br />
getroffen werden kann, lesen Sie in diesem<br />
Knowledge-Letter.<br />
Dipl.-Ing. Johannes Bergsmann<br />
Staatl. befugter und beeideter Ingenieurkonsulent für Informatik<br />
Der <strong>Quality</strong>-Knowledgeletter ist ein periodisches Informationsmedium<br />
von <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> und dessen Partnern mit den<br />
Schwerpunkten IT-Qualitätsmanagement, Projekt- und Prozess-<br />
Management.<br />
Inhalt: fachliche Beiträge und Schwerpunktthemen, Vorstellung<br />
neuer Produkte und Leistungen, neue wissenschaftliche Erkenntnisse,<br />
...<br />
Aktuelle Fach- und Forschungsbeiträge sind willkommen.<br />
Einsendungen an info@software-quality-lab.at .<br />
Weitere Infos zu diesem und anderen Themen finden Sie auf<br />
http://www.software-quality-lab.at .<br />
Telefon +43-(0)7237-4941-20 � FAX -11 � info@software-quality-lab.at<br />
Firmenbuch: Landesgericht Linz, FN 274343 x � UID: ATU62264668
Seite 2 � 27.12.2006<br />
improve your quality<br />
Längst genügt es nicht mehr, irgendwelche <strong>Tool</strong>s einzusetzen,<br />
um die Entwicklungsprozesse zu unterstützen.<br />
Sind die Werkzeuge nicht optimal auf die Prozesse abgestimmt,<br />
können die Folgekosten und die Folgewirkungen sehr<br />
hoch und möglicherweise sogar geschäftskritisch sein.<br />
Dabei sind nicht nur die Aufwände für Anpassung, Wartung<br />
und Updates zu berücksichtigen, sondern auch für Effizienzminderung<br />
oder gar Produktionsausfall. Deshalb müssen<br />
die Anforderungen systematisch erfasst und die betrachteten<br />
Produkte/Werkzeuge auf ihre Leistungsfähigkeit in Bezug auf<br />
die Anforderungen geprüft werden.<br />
Nicht selten werden bei Produkt-Vorführungen Funktionalitäten<br />
präsentiert, die nur teilweise, fehlerhaft oder noch gar<br />
nicht implementiert sind. Auch wird kaum ein Anbieter auf alternative<br />
Produkte anderer Hersteller aufmerksam machen.<br />
Vor der Auswahl einer <strong>Software</strong> sollten unter anderem<br />
folgende Fragen gestellt werden:<br />
� Welche Geschäftsprozesse sollen unterstützt werden?<br />
� Welche Anforderungen muss die <strong>Software</strong> dafür erfüllen?<br />
� Sind die Anforderungen vollständig und korrekt erfasst?<br />
� Sind die Bewertungskritierien dokumentiert und nachvollziehbar?<br />
� Haben Sie den Überblick über den Markt?<br />
� Wie vollständig und flexibel ist die angebotene <strong>Software</strong>?<br />
� Welche Schnittstellen hat die angebotene <strong>Software</strong>?<br />
� Inwieweit ist die angebotene <strong>Software</strong> kompatibel zu anderen<br />
Systemen?<br />
� Können die Anbieter gegebenenfalls Referenzen nachweisen?<br />
� Wer hat einen Vorteil von der Auswahl einer bestimmten<br />
oder keiner <strong>Software</strong>?<br />
� …<br />
Eine <strong>Evaluierung</strong> sollte idealer Weise nicht von einem <strong>Software</strong>-Anbieter<br />
durchgeführt werden, da er nicht unparteiisch<br />
ist. Wenn man sich für die Investition in eine neue <strong>Software</strong><br />
entscheidet, sollte die notwendige <strong>Evaluierung</strong> und Auswahl<br />
möglichst auch durch einen neutralen Experten unterstützt<br />
werden, der weder von der Auswahl einer speziellen <strong>Software</strong><br />
profitiert, noch davon, ob überhaupt eine <strong>Software</strong> ausgewählt<br />
wird.<br />
<strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> bietet daher mit dem TEC - <strong>Tool</strong> Evaluation<br />
Center eine herstellerunabhängige Unterstützung beim<br />
Auswahlprozess, damit Sie sich für die <strong>Software</strong>-Werkzeuge<br />
entscheiden, die Ihre Organisation und Ihre Prozesse optimal<br />
unterstützen.<br />
Dabei begleitet Sie das <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> TEC im gesamten<br />
Auswahl-Verfahren.<br />
<strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> GmbH<br />
A-4222 Langenstein / Linz Fliederstrasse 8 www.software-quality-lab.at<br />
� �<br />
Ziele des <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> TEC<br />
K<br />
<strong>Quality</strong><br />
nowledge<br />
Letter<br />
<strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> TEC - <strong>Tool</strong>-Evaluation-Center<br />
von Dipl.-Ing. Johannes Bergsmann<br />
www.software-quality-lab.at<br />
<strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> stellt eine spezielle Umgebung bereit, in der die wichtigsten Test-<strong>Tool</strong>s und Application-Life-Cycle-<br />
Werkzeuge für Kunden und Interessenten für <strong>Evaluierung</strong>en zur Verfügung stehen.<br />
Das <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> <strong>Tool</strong> Evaluation Center unterstützt Kunden und Interessenten bei der neutralen Auswahl von<br />
<strong>Tool</strong>s für Ihren Application-Life-Cycle.<br />
� Kunden und Interessenten wird der direkte Vergleich von<br />
Produkten und <strong>Tool</strong>s unterschiedlicher Anbieter ermöglicht.<br />
� Das mühsame Produkt-Anfordern, probeweise Installieren,<br />
hektische Ausprobieren, … kann vermeiden werden und<br />
eine objektive <strong>Evaluierung</strong> der Produkte wird ermöglicht.<br />
� Durch sehr breit angelegte, bereits vorbereitete <strong>Evaluierung</strong>s-Beispiele<br />
wird ein praxisgerechter Vergleich der Produkte<br />
ermöglicht.<br />
� Durch die Betreuung durch einen <strong>Tool</strong>-Spezialisten wird<br />
sicher gestellt, dass die Produkt-<strong>Evaluierung</strong> zielgerichtet<br />
und effizient verläuft.<br />
Nutzen für die Kunden und Interessenten<br />
� Es kann sehr viel Zeitaufwand durch den Wegfall der sonst<br />
üblichen Vorbereitungsarbeiten gespart werden.<br />
� Es können auf einfache Art und Weise mehrere Produkte<br />
im direkten Vergleich evaluiert werden.<br />
� Viele Interessenten wollen nicht vom Vertrieb des Herstellers<br />
„überredet“ werden, sondern wollen sich Produkte in<br />
Ruhe selbst ansehen und evaluieren.<br />
� Es stehen von allen relevanten Produkten bereits die vorkonfigurierten<br />
und mit Beispielen versehenen Voll-<br />
Versionen der Produkte zur Verfügung.<br />
� Es sind durchgängige und praxistaugliche gleiche Beispiele<br />
für jedes der Produkte vorbereitet, sodass ein objektiver<br />
Vergleich der Produkte möglich ist.<br />
� Optional wird der <strong>Tool</strong>-Interessenten auch beim Aufbereiten<br />
einer Entscheidungsgrundlage inkl. einer Kosten-/Nutzen-<br />
Bewertung der Systeme unterstützt.<br />
� 1x pro Jahr ist eine Produkt-<strong>Evaluierung</strong>s-Studie vorgesehen,<br />
in der alle Produkte, die im <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> TEC<br />
präsentiert werden, aus einer neutralen Sicht dargestellt<br />
werden. Diese Studie wird den <strong>Tool</strong>-Interessenten ebenfalls<br />
zur Verfügung gestellt.<br />
Rahmenbedingungen<br />
Um die Neutralität zwischen den <strong>Tool</strong>-Herstellern sowie die<br />
Aktualität der <strong>Tool</strong> in der <strong>Evaluierung</strong>sumgebung sicherzustellen,<br />
werden sowohl mit Herstellern als auch mit Kunden entsprechende<br />
Vereinbarungen getroffen.<br />
Weiters werden auch entsprechende Vereinbarungen getroffen,<br />
die eine Missbräuchliche Verwendung der <strong>Tool</strong>s ausserhalb<br />
der <strong>Evaluierung</strong>sumgebung sicherstellen.<br />
� <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> verpflichtet sich gegenüber Kunden<br />
(Fortsetzung auf Seite 3)<br />
Telefon +43-(0)7237-4941-20 � FAX -11 � info@software-quality-lab.at<br />
Firmenbuch: Landesgericht Linz, FN 274343 x � UID: ATU62264668
Seite 3 � 27.12.2006<br />
improve your quality<br />
(Fortsetzung von Seite 2)<br />
und Interessenten, von den Herstellern keinerlei Provisionen<br />
für die Präsentation der Produkte zu erhalten, auch<br />
wenn aus der Präsentation ein Verkauf des Herstellers resultiert.<br />
� <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> verpflichtet sich gegenüber den Herstellern,<br />
dass die Produkte ausschließlich für <strong>Evaluierung</strong>szwecke<br />
und nicht in konkreten Projekten verwendet werden.<br />
� Für die Hersteller ist die Teilnahme an den durch die Kunden/Interessenten<br />
durchgeführten <strong>Evaluierung</strong>en im <strong>Software</strong><br />
<strong>Quality</strong> <strong>Lab</strong> TEC nur auf ausdrücklichen Wunsch des<br />
Kunden möglich.<br />
� Grundsätzlich wird dem Interessenten nur ermöglicht, das<br />
Produkt innerhalb der <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> <strong>Evaluierung</strong>s-<br />
Umgebung zu testen. Es bestehet daher die Sicherheit für<br />
den Hersteller, dass der Interessent das Produkt (auch<br />
wenn es sich um die Voll-Version handelt) nur für die <strong>Evaluierung</strong><br />
verwendet. Die <strong>Evaluierung</strong>slizenz wird in keinem<br />
Fall bei einem Kunden oder Interessenten installiert. Dies<br />
ist nur über den direkten Kontakt zum Hersteller möglich.<br />
� Die Hersteller stellen in regelmäßigen Abständen<br />
(mindestens 1 x jährlich) die aktuellen Produkt-Versionen<br />
als Voll-Versionen (ev. mit eingeschränkter Benutzerzahl)<br />
für die <strong>Evaluierung</strong> zur Verfügung.<br />
� Die Hersteller können jederzeit Einblick in des TEC bzw.<br />
die Präsentation ihrer <strong>Tool</strong>s nehmen und können auch Marketing-Material<br />
im TEC auflegen,<br />
das den Kunden und<br />
Interessenten zur Entnahme<br />
zur Verfügung seht.<br />
� Weiters wird auf Wunsch der<br />
Kunden und Interessenten<br />
auch der direkte Kontakt zum<br />
<strong>Tool</strong>-Anbieter hergestellt, z.B.<br />
für eine weitere detailliertere<br />
Betreuung oder für die Erstellung<br />
von konkreten Angeboten<br />
<strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> GmbH<br />
A-4222 Langenstein / Linz Fliederstrasse 8 www.software-quality-lab.at<br />
� �<br />
Verfügbare <strong>Tool</strong>s<br />
K<br />
<strong>Quality</strong><br />
nowledge<br />
Letter<br />
www.software-quality-lab.at<br />
Nachfolgend sind einige Hersteller / <strong>Tool</strong>s, die im TEC vertreten<br />
sind in alphabetischer Reihenfolge angegeben:<br />
� Compuware<br />
� IBM / Rational<br />
� Mercury<br />
� Orcanos<br />
� Polarion<br />
� QA Systems<br />
� Telelogic<br />
� TPTP / Eclipse<br />
Der Schwerpunkt liegt zur Zeit auf <strong>Tool</strong>s in den Themenberiechen<br />
Anforderungsmanagement und Testen.<br />
Die <strong>Tool</strong>s werden jedoch laufend erweitert und im Endausbau<br />
ist geplant, unterschiedlichste <strong>Tool</strong>s für den kompletten<br />
Application-Life-Cycle zu präsentieren.<br />
<strong>Tool</strong>-Hersteller, die Interesse haben, Ihre <strong>Tool</strong>s im TEC zu<br />
präsentieren, sind jederzeit gerne dazu eingeladen.<br />
Nutzen und Kosten für Kunden und Interessenten<br />
Kunden und Interessenten sparen sich viele Tage oder<br />
sogar Wochen Aufwand durch die Nutzung des TEC.<br />
Zu bezahlen ist ein Beitrag für die Zeitdauer der Nutzung<br />
des TEC sowie gegebenenfalls weitere Betreuungsleistungen<br />
im Rahmen der <strong>Evaluierung</strong>.<br />
Preisauskünfte werden auf Anfrage gerne erteilt.<br />
Technisches Umfeld im TEC<br />
Basis für die <strong>Tool</strong>-<br />
<strong>Evaluierung</strong> bildet ein zentraler<br />
<strong>Evaluierung</strong>s-Server auf dem<br />
eine Virtualisierungssoftware<br />
installiert ist.<br />
Die <strong>Tool</strong>s der Anbieter werden<br />
Abb.2: Technische Grundstruktur des <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> TEC - <strong>Tool</strong> Evaluation Center, Quelle: Bergsmann<br />
jeweils in eigenen virtuellen Maschinen installiert und vorkonfiguriert.<br />
Wenn Sie mehr wissen wollen …<br />
Bei Interesse an mehreren zu evaluierenden <strong>Tool</strong>s werden<br />
die entsprechenden virtuellen Maschinen gestartet und der<br />
<strong>Tool</strong>-Interessent kann die jeweiligen Produkte dann nach Belieben<br />
auf verschiedenen Computern bzw. Bildschirmen nebeneinander<br />
oder auch auf einem einzelnen Bildschirm in mehreren<br />
Fenstern testen.<br />
Vereinbaren Sie einen Termin, um sich in einem persönlichen<br />
Gespräch zu informieren, wie Sie von der Nutzung des<br />
<strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> TEC - <strong>Tool</strong>-Evaluation-Center profitieren<br />
können.<br />
Die virtuellen Maschinen können auch über das Internet Dipl.-Ing. Johannes Bergsmann<br />
aufgerufen werden, sodass grundsätzlich auch eine Evaluie- johannes.bergsmann@software-quality-lab.at<br />
rung und Demonstration an beliebigen Orten möglich ist. +43-(0)664-1620220<br />
Telefon +43-(0)7237-4941-20 � FAX -11 � info@software-quality-lab.at<br />
Firmenbuch: Landesgericht Linz, FN 274343 x � UID: ATU62264668
Seite 4 � 27.12.2006<br />
Eclipse TPTP<br />
improve your quality<br />
Eclipse ist ein Open Source Framework für die Erstellung<br />
von Rich Client Applikationen. Unter Eclipse gibt es mehrere<br />
Top-Level Projekte, so auch Eclipse TPTP.<br />
TPTP steht für Test and Performance <strong>Tool</strong>s Project.<br />
Namhafte Unternehmen, wie Compuware, IBM, Intel, SAP<br />
(als strategischer Kunde) und Scapa Technologies arbeiten<br />
zusammen, um eine offene Plattform für verschiedenste Arten<br />
des Testens zu entwickeln. Diese Unternehmen bauen auf<br />
TPTP teilweise auch ihre eigenen, kommerziellen Produkte<br />
auf. Beispiele hierfür sind IBM Rational Functional Tester und<br />
IBM Manual Tester.<br />
Auf der Homepage www.eclipse.org/tptp/ wird das Ziel wie<br />
folgt beschrieben:<br />
The mission of the Eclipse Test & Performance <strong>Tool</strong>s Project<br />
is to build a generic, extensible, standards-based tool<br />
platform upon which software developers can create specialized,<br />
differentiated, and interoperable offerings for world class<br />
test and performance tools.<br />
Bei der Benutzung von Eclipse TPTP bemerkt man, dass<br />
die Hersteller gewisse Funktionalitäten hinten anstellen, um<br />
durch TPTP nicht Konkurrenz zu eigenen kommerziellen Produkten<br />
zu erzeugen. Ein Beispiel hierfür ist das Fehlen einer<br />
Anbindung an andere <strong>Software</strong>entwicklungsaktivitäten, wie<br />
etwa Werkzeugen zur Anforderungsanalyse. Ein weiteres<br />
Beispiel ist die oft karge Benutzeroberfläche.<br />
Unter der Fassade verbirgt sich jedoch eine mächtige<br />
Plattform. Die Datenmodelle entsprechen weit verbreiteten<br />
Standards. Der Agent Controller ermöglicht die Ausführung<br />
von Tests lokal, als auch remote auf verschiedensten Plattfor-<br />
<strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> GmbH<br />
A-4222 Langenstein / Linz Fliederstrasse 8 www.software-quality-lab.at<br />
� �<br />
Testautomatisierungswerkzeuge<br />
von Dipl.-Ing. Johannes Hochrainer und Dipl.-Ing. Johannes Bergsmann<br />
K<br />
<strong>Quality</strong><br />
nowledge<br />
Letter<br />
www.software-quality-lab.at<br />
Viele Firmen führen Tests ad hoc oder rein manuell aus. Testautomatisierungs-Werkzeuge bieten heute viele Möglichkeiten,<br />
manuelle Tests umfangreich zu unterstützen oder Tests völlig zu automatisieren. Somit können mehr Tests in kürzerer<br />
Zeit ausgeführt werden.<br />
In diesem Artikel wird beispielhaft ein kurzer Einblick in einige* Testautomatisierungs-Anbieter/Werkzeuge gegeben, um<br />
überblicksmäßig zu zeigen, welche Funktionalitäten diese Werkzeuge heute liefern. Der Fokus liegt dabei auf dem funktionalen<br />
Systemtest.<br />
* Diese und weitere Test-Werkzeuge werden in künftigen Newslettern oder Studien zum Thema Test-Aufomatisierung detaillierter vorgestellt.<br />
Abb.3: Automatisierte GUI Tests in TPTP<br />
men.<br />
Firmen, die langfristig selbst ein Testautomatisierungswerkzeug<br />
entwickeln wollen, finden in Eclipse TPTP ein sehr<br />
gutes Framework.<br />
TPTP besteht aus vier Teilen: TPTP Platform, Testing<br />
<strong>Tool</strong>s, Monitoring <strong>Tool</strong>s und Tracing und Profiling <strong>Tool</strong>s.<br />
TPTP Plattform stellt die gemeinsame Infrastruktur bereit,<br />
wie etwa Benutzeroberfläche, Datenmodelle, Protokolle (z.B.<br />
Kommunikation) und ein Remote Execution Framework.<br />
Besonders interessant ist der Agent Controller von TPTP.<br />
Es können Tests sowohl lokal, als auch auf anderen Systemen<br />
ausgeführt werden. Es existieren eigenständige Agenten<br />
für verschiedenste Plattformen, wie z.B. AIX, HP-UX, Linux,<br />
OS, Solaris und Windows. Diese Agenten laufen als eigene<br />
Prozesse auf dem Remote-System und werden von einem<br />
zentralen Computer gesteuert.<br />
Testing <strong>Tool</strong>s basieren auf der TPTP Plattform und bieten<br />
konkrete Werkzeuge für das Testen an. So z.B. JUnit, Werkzeuge<br />
für das manuelle Testen, URL Testing, und statische<br />
Codeanalyse.<br />
Monitoring <strong>Tool</strong>s werden verwendet, um Informationen<br />
über Systeme oder Applikationen zu sammeln, zu analysieren<br />
und aufzubereiten.<br />
Die Tracing und Profiling <strong>Tool</strong>s bieten Werkzeuge, um die<br />
Performance von Applikationen zu analysieren. Darunter fallen<br />
auch verteilte Java Anwendungen. Das Tracing von C/C++<br />
Anwendungen ist derzeit in Entwicklung.<br />
Bei den funktionalen Systemtests bietet TPTP Werkzeuge<br />
sowohl für die manuelle, als auch die automatisierte Testausführung:<br />
Manuelle Testausführung: TPTP<br />
beinhaltet einfache Editoren, um<br />
manuelle Testfälle zu definieren,<br />
auszuführen und zu analysieren.<br />
Testfälle werden als simpler Text<br />
spezifiziert und können durch<br />
Schleifen mehrere Male ausgeführt<br />
werden.<br />
Bei der Ausführung wird auf den<br />
Agent Controller zurückgegriffen.<br />
Egal, ob der Test lokal oder auf<br />
einem anderen Rechner ausgeführt<br />
wird – in beiden Fällen öffnet<br />
sich ein Fenster, das durch den<br />
manuellen Test leitet.<br />
Der Tester bekommt so Schritt für<br />
(Fortsetzung auf Seite 5)<br />
Telefon +43-(0)7237-4941-20 � FAX -11 � info@software-quality-lab.at<br />
Firmenbuch: Landesgericht Linz, FN 274343 x � UID: ATU62264668
Seite 5 � 27.12.2006<br />
improve your quality<br />
(Fortsetzung von Seite 4)<br />
Schritt Aufgaben zugeteilt und kann nach der Ausführung neben<br />
dem Erfolg des Testschrittes und Kommentaren auch<br />
Dateien abspeichern (Screenshots, Log-Files).<br />
Nach der Testausführung wird das Ergebnis graphisch und<br />
in einer Baumstruktur dargestellt.<br />
Es gibt auch eine Anbindung an das Bugzilla Web Interface,<br />
um gefundene Fehler zu dokumentieren.<br />
Für die Automatisierte Testausführung bietet Eclipse TPTP<br />
ein Capture&Replay Werkzeug.<br />
User Interface Ereignisse werden als XML aufgezeichnet<br />
und können danach wieder abgespielt werden. Diese Funktionalität<br />
beschränkt sich jedoch auf Applikationen, die auf der<br />
Oberflächen-Bibliothek von Eclipse aufgebaut sind.<br />
Referenzen auf Objekte werden nicht direkt in die Testfälle<br />
aufgenommen, sondern zentral in einem Register gespeichert.<br />
Ändert sich nun ein Objekt, so müssen nicht alle Testfälle<br />
geändert werden, sondern nur das zentrale Register.<br />
Weiters unterstützt TPTP auch Data-Driven Testing. Testfälle<br />
werden dabei mit Tabellen verbunden. Bei der Testausführung<br />
wird dann je Datensatz der Testfall einmal ausgeführt.<br />
Fazit<br />
Viele Werkzeuge von Eclipse TPTP sind sehr einfach<br />
gehalten. Unter der Fassade versteckt sich jedoch eine mächtige<br />
Plattform, auf der man seine eigenen Testwerkzeuge aufbauen<br />
kann.<br />
Mercury QuickTest Professional<br />
Mercury bietet für den funktionalen Systemtest Mercury<br />
QuickTest Professional an.<br />
Es erlaubt die Testautomatisierung von Windows Applikationen,<br />
Webseiten, ActiveX Controls und Visual Basic Applikationen.<br />
Zusätzlich gibt es noch Erweiterungen für das Testen von<br />
Anwendungen basierend auf Java, .NET, Oracle, SAP, Web<br />
Forms, Siebel, PeopleSoft, Web Services und Terminal Emulator<br />
Applikationen.<br />
Interessant ist, dass Mercury derzeit als einer der wenigen<br />
Anbieter auf Keyword-Driven Testing setzt. Testfälle werden<br />
dabei nicht als Ganzes automatisiert, sondern<br />
werden aus teils wieder verwendbaren<br />
Bausteinen zusammengesetzt. Diese Bausteine<br />
erscheinen in den Testfällen nicht als<br />
Code, sondern haben eine kurz intuitive Bezeichnung,<br />
womit auch Nichttechniker Testfälle<br />
lesen könne.<br />
Hinter einem Keyword (Mercury nennt sie<br />
Actions) steht Automatisierungscode. Die<br />
Actions in den Testfällen sagen somit, was<br />
zu machen ist.<br />
Der Automatisierungscode hingegen spezifiziert,<br />
wie ein Action mit dem System interagieren<br />
soll.<br />
Keyword-driven testing hat einen positiven<br />
Effekt auf die Wartbarkeit von Testfällen.<br />
Ändern sich Schnittstellen des zu testenden<br />
Systems, so muss man nicht die Testfälle selber<br />
ändern, sondern nur den Automatisierungscode hinter den<br />
<strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> GmbH<br />
A-4222 Langenstein / Linz Fliederstrasse 8 www.software-quality-lab.at<br />
� �<br />
K<br />
<strong>Quality</strong><br />
nowledge<br />
Letter<br />
www.software-quality-lab.at<br />
einzelnen Actions. Wird ein Action in mehreren Testfällen verwendet,<br />
vermindert sich auch der Änderungsaufwand.<br />
Ein Beispiel zu Keyword-Driven Testing:<br />
Beim Testen von vielen Systemen taucht immer wieder ein<br />
Testschritt zum Anmelden am System auf. Anstatt die einzelnen<br />
Interaktionen mit den Schnittstellen in jeden Testfall aufzunehmen<br />
(click here, enter text there, ….), erzeugt man eine<br />
Action mit der Bezeichnung login und spezifiziert die Inputparameter<br />
username und password. Erst der Automatisierungscode<br />
hinter dieser Action weiß, wie das Action login auszuführen<br />
ist. Ändert sich die Eingabemaske für den Login-Vorgang,<br />
so muss man nicht alle Testfälle, die den Login-Schritt beinhalten,<br />
ändern, sondern man ändert nur den Automatisierungscode<br />
an einer Stelle.<br />
Actions können auch geschachtelt werden und können<br />
Werte zurückliefern, die nachfolgenden Actions als Eingabewerte<br />
dienen. QuickTest unterstützt auch Keyword-Driven<br />
Testing und kennt Datentabellen für einzelne Actions, als<br />
auch für ganze Testfälle.<br />
Actions können mit der Capture&Replay Funktionalität von<br />
QuickTest erzeugt werden, oder ein Programmierer automatisiert<br />
sie manuell.<br />
QuickTest Professional arbeitet mit anderen Mercury Produkten<br />
zusammen, wie z.B. WinRunner, Business Process<br />
Testing, Mercury Performance Testing, den Business Availability<br />
Center Produkten und dem <strong>Quality</strong> Center.<br />
Letzteres kann als zentrale Servicestelle für verschiedenste<br />
Testarten verwendet werden (manuelle und automatisierte<br />
funktionale Tests, Performance Tests,…). <strong>Quality</strong> Center dient<br />
u.a. zur Verwaltung von zentralen Testdatenbanken, Ausführung<br />
und Analyse von Tests und zur Erzeugung von<br />
Fehlerberichten.<br />
Fazit<br />
Wartbarkeit und Widerverwendbarkeit ist ein wesentliches<br />
Erfolgskriterium für langfristige Testautomatisierungsprojekte.<br />
Die Erzeugung von wieder verwendbaren Actions bedarf<br />
zwar eines höheren Aufwands, doch vermindert man dadurch<br />
später den hohen Wartungsaufwand.<br />
Mercury geht mit QuickTest Professional weg von reinen<br />
Data-Driven Capture&Replay Werkzeugen hin zu Keyword-<br />
Driven Testing.<br />
Abb.4: Keyword-Driven Testing in Mercury QuickTest<br />
(Fortsetzung auf Seite 6)<br />
Telefon +43-(0)7237-4941-20 � FAX -11 � info@software-quality-lab.at<br />
Firmenbuch: Landesgericht Linz, FN 274343 x � UID: ATU62264668
Seite 6 � 27.12.2006<br />
improve your quality<br />
IBM Rational Functional Tester<br />
Rational Functional Tester basiert auf Eclipse TPTP und<br />
bietet ein umfassendes Caputre&Replay Werkzeug, um funktionale<br />
GUI-Tests für Java-, .NET-, HTML- und Windows-<br />
Applikationen zu automatisieren. Testscripts können sowohl in<br />
Java, als auch in VB.NET geschrieben werden. Im ersten Fall<br />
wird Rational Functional Tester als eine Eclipse Applikation<br />
ausgeliefert. Im Falle von VB.NET integriert sich Functional<br />
Tester in Microsoft Visual Studio.<br />
Abb.5: Testscript und Scriptexplorer von Rational Functional Tester<br />
IBM Rational Functional Tester bietet die Automatisierung<br />
von funktionalen Testfällen an. Für die Einbindung in andere<br />
<strong>Software</strong>aktivitäten wird mit folgenden Applikationen zusammengearbeitet:<br />
IBM Rational Test Manager: Dieser wird mit Rational<br />
Functional Tester ausgeliefert und spielt die zentrale Rolle bei<br />
der Verwaltung, Ausführung und Analyse von Testfällen.<br />
IBM Rational ClearQuest ist zuständig für Testverwaltung,<br />
Change-Management und Fehlerverwaltung.<br />
IBM Rational RequisitePro verbindet die Anforderungen<br />
mit den Testfällen.<br />
Testfälle werden nicht wie in TPTP als XML, sondern als<br />
Java oder VB.NET Code aufgezeichnet. Somit fällt es leichter<br />
den Code nach der Capture-Phase manuell aufzubereiten und<br />
zu erweitern.<br />
IBM Rational Functional Tester verwendet ein zentrales<br />
Register um Object-IDs zu verwalten. Erwähnenswert ist auch<br />
die Flexibilität auf Veränderungen in der zu testenden GUI.<br />
Ändern sich bestimmte Eigenschaften der GUI, so kann Functional<br />
Tester sie bis zu einem bestimmten Grad trotzdem zuordnen<br />
und den Test weiterführen. Außerdem wird der Tester<br />
beim Anpassen der Testfälle an veränderte Schnittstellen unterstützt.<br />
Auch Data-Driven Testing wird durch den Functional<br />
Tester unterstützt.<br />
Fazit<br />
IBM Rational Functional Tester bietet Capture&Replay für<br />
verschiedene System-Plattformen an und integriert sich in<br />
andere <strong>Software</strong>entwicklungsaktivitäten. Testscripts können<br />
mit speziellen Assistenten an geänderte Schnittstellen angepasst<br />
werden.<br />
<strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> GmbH<br />
A-4222 Langenstein / Linz Fliederstrasse 8 www.software-quality-lab.at<br />
� �<br />
IBM Rational Manual Tester<br />
K<br />
<strong>Quality</strong><br />
nowledge<br />
Letter<br />
www.software-quality-lab.at<br />
Nicht alle Testfälle eignen sich für die Automatisierung.<br />
Erfahrungen zeigen, dass ein guter Teil der Tests manuell<br />
ausgeführt wird.<br />
IBM bietet mit Rational Manual Tester auch ein Werkzeug<br />
für diese Testausführungsart an. Es basiert ebenfalls auf Eclipse<br />
TPTP und erweitert es mit besseren Editoren und erweiterten<br />
Funktionalitäten<br />
Oft scheitern manuelle Tests aufgrund von menschlichen<br />
Fehlern. Rational Manual Tester versucht dem auf zwei Seiten<br />
entgegenzuwirken. Zum einen ist Manual Tester beim Vergleich<br />
der erwarteten mit den tatsächlichen Testdaten behilflich.<br />
Dies geschieht indem der Tester Daten der getesteten<br />
<strong>Software</strong> in die Zwischenablage kopiert und dann von Manual<br />
Tester vergleichen lässt.<br />
Auf der anderen Seite unterstützt Manual Tester bei der<br />
Eingabe von Testdaten. So können Tippfehler für schwierige<br />
Eingabewerte vermindert werden.<br />
Zu den einzelnen Testschritten können Dateien, Bildschirmausschnitte,<br />
spezielle Dialoge, Fenster, oder der ganze<br />
Bildschirme abgespeichert werden. Sie können dann während<br />
der Testausführung als Referenz verwendet werden.<br />
Während des Tests begleitet ein Assistent durch die Testschritte.<br />
Das Fenster kann dabei auch transparent erscheinen,<br />
um die getestete <strong>Software</strong> besser zu überwachen.<br />
Wer bereits eine Vielzahl von Testfällen in Microsoft Word,<br />
oder Microsoft Excel spezifiziert hat, kann Importfunktionen<br />
benutzen, um diese in Rational Manual Tester wieder zu verwenden.<br />
Rational Manual Tester ist integriert in die anderen Werkzeuge<br />
der Rational Produktfamilie.<br />
Abb.6: Halbtransparenter Assistent begleitet durch die Testfälle<br />
Fazit<br />
Viele Firmen speichern manuelle Tests in gewöhnlichen<br />
Office-Dateien ab. IBM Rational Manual Tester bietet die Möglichkeit<br />
diese Dokumente zu importieren. Während der Tests<br />
leitet ein flexibler Assistent auf lokalen oder anderen Systemen<br />
durch die einzelnen Testschritte und erlaubt verschiedene<br />
Arten der Dokumentation des Testerfolges.<br />
Automatische Auswertungen und Anbindung an andere<br />
<strong>Software</strong>entwicklungsaktivitäten sind weitere Vorteile, die man<br />
mit manuellen Testfällen in Office-Dokumenten nur schwer<br />
realisieren kann.<br />
Telefon +43-(0)7237-4941-20 � FAX -11 � info@software-quality-lab.at<br />
Firmenbuch: Landesgericht Linz, FN 274343 x � UID: ATU62264668
Seite 7 � 27.12.2006<br />
improve your quality<br />
Compuware TestPartner<br />
Compuware bietet als Teil seiner Produktreihe QACenter<br />
auch ein Programm zur Automatisierung von funktionalem<br />
Systemtest an. Es trägt den Namen TestPartner und ist der<br />
von Grund auf neu entwickelte Nachfolger von QARun.<br />
TestPartner basiert vollständig auf Microsoft Visual Studio<br />
und bietet als Scriptsprache nun VBA. QARun verwendete<br />
noch die proprietäre Sprache AWL.<br />
Mit TestPartner lassen sich Applikationen testen, die auf<br />
Microsoft (Windows, .NET, ActiveX, COM), Java oder Webtechnologien<br />
basieren. Ferner können noch Programme basierend<br />
auf Navision, SAP und Siebel getestet werden.<br />
Abb.7 Compuware TestPartner<br />
Wie die meisten anderen Werkzeuge für den funktionalen<br />
Systemtest, bietet auch TestPartner Capture&Replay für automatisierte<br />
GUI-Tests und die Möglichkeit für Data-Driven<br />
Testing.<br />
Eine zentrale Datenbank und eine Benutzerverwaltung<br />
sorgt für die Zusammenarbeit mehrerer Tester. Verifikationen<br />
sind möglich auf statischen Text, Textmustern, Objekteigenschaften,<br />
Inhalte von Steuerelementen, Bitmaps und Reaktionszeiten.<br />
TestPartner ist Teil des QACenters und integriert sich in<br />
die anderen Produkte von Compuware:<br />
QARun: Es können QARun-Scripts vom Nachfolgeprodukt<br />
TestPartner aufgerufen werden.<br />
QADirector ist zuständig für die Verwaltung der Tests<br />
(Planung, Ausführung und Analyse). Es verbindet Systemanforderungen<br />
mit Testfällen und bietet als eines der wenigen<br />
Testwerkzeuge Risiko-basierte Testplanung an.<br />
Reconcile ist das Anforderungsverwaltungsprogramm von<br />
Compuware.<br />
TrackRecorder wird zur Fehlerverwaltung verwendet.<br />
File-AID/CS dient zur Verwaltung von Testdaten auf verschiedenen<br />
Systemen.<br />
Fazit<br />
Compuware hat mit TestPartner ein von Grund auf neu<br />
entwickeltes Produkt entwickelt.<br />
Es bietet Tests von Produkten basierend auf verschiedenen<br />
Platformen, Capture&Replay und Data-Driven Testing.<br />
Die Integration in die anderen Produkte von Compuware<br />
ist ebenfalls möglich, wodurch der ganze Lebenszyklus der<br />
<strong>Software</strong>entwicklung abgedeckt werden kann.<br />
<strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> GmbH<br />
A-4222 Langenstein / Linz Fliederstrasse 8 www.software-quality-lab.at<br />
� �<br />
Literatur und Links …<br />
K<br />
<strong>Quality</strong><br />
nowledge<br />
Letter<br />
www.software-quality-lab.at<br />
Die Seiten der in diesem Newsletter angeführten Produkte:<br />
� http://www.compuware.de/products/qacenter/index.htm<br />
� http://www.eclipse.org/tptp/<br />
� http://www-306.ibm.com/software/de/rational/quality.html<br />
� http://www.mercury.com/de/products/quality-center/<br />
Übersicht über viele Testtool und weitere interessante Infos:<br />
� http://www.testingfaqs.org/<br />
Studie des Heise-Verlags zum Thema Test-<strong>Tool</strong>s:<br />
� https://www.heise.de/kiosk/special/ixstudie/06/01/<br />
Preis € 390,-<br />
Leistungen …<br />
Im Rahmen der <strong>Software</strong>-<strong>Evaluierung</strong> und -Auswahl unterstützten<br />
die Experten von <strong>Software</strong> <strong>Quality</strong> <strong>Lab</strong> als neutrale<br />
Berater durch folgende Leistungen:<br />
� Definition der Anforderungen und Entscheidungsgrundlagen<br />
an die zu beschaffende <strong>Software</strong>.<br />
� Schaffen eines Marktüberblicks von in Frage kommenden<br />
<strong>Tool</strong>s<br />
� Vorauswahl von passenden <strong>Tool</strong>s (z.B. anhand von<br />
individuell definierten <strong>Tool</strong>-<strong>Evaluierung</strong>s-Checklisten)<br />
� <strong>Evaluierung</strong> der vorab ausgewählten <strong>Software</strong> im TEC -<br />
<strong>Tool</strong> Evaluation Center (voinstalliert, konfiguriert und mit<br />
passenden <strong>Evaluierung</strong>s-Szenarien und Beispielen<br />
hinterlegt)<br />
� Unterstützung beim Vergleich der <strong>Tool</strong>s und Erstellung<br />
einer Grundlage für die Entscheidungsträger (z.B. in<br />
Form einer SWOT- oder Nutzwert-Analyse)<br />
� Erstellung einer detaillierten Anforderungsspezifikation<br />
für die <strong>Tool</strong>-Beschaffung<br />
� Unterstützung beim Verhandlungs– und Einführungsprozesses/-projekt<br />
bis hin zum projektbegleitenden Qualitätsmanagement<br />
in <strong>Software</strong>-Einführungsprojekten.<br />
Zitate …<br />
„Qualität ist, wenn die Kunden zurückkommen und nicht die<br />
Geräte.“ Unbekannt<br />
„Es war mir immer ein unerträglicher Gedanke, es könne jemand<br />
bei der Prüfung eines meiner Erzeugnisse nachweisen,<br />
dass ich irgendwie Minderwertiges leiste. Deshalb habe ich<br />
stets versucht, nur Arbeit hinaus zu geben, die jeder sachlichen<br />
Prüfung standhielt.“ Robert Bosch, Stuttgart<br />
„Probleme werden am besten dadurch gelöst, indem man sie<br />
erkennt, bevor sie zu Problemen werden.“<br />
Erich Zahn, Aufsichtsrat Daimler-Benz AG<br />
Telefon +43-(0)7237-4941-20 � FAX -11 � info@software-quality-lab.at<br />
Firmenbuch: Landesgericht Linz, FN 274343 x � UID: ATU62264668