1Einleitung
1.1Vertrauen, Qualität, Sicherheit!
Der Abnahmetest nimmt im Softwareentwicklungsprozess eine besondere Stellung ein, das Bild auf dem Cover illustriert einige der grundlegenden Aspekte des Abnahmetests â Vertrauen (Händedruck), Qualität (Häkchen) und Sicherheit (Schild-Symbol). Der Abnahmetest ist eine vertrauensbildende MaĂnahme! Er soll beim Auftraggeber ausreichendes Vertrauen in die Qualität des Produkts erzeugen, sodass dieser das Produkt schlieĂlich vom Auftragnehmer abnimmt. Vertrauen gibt es aber meist nicht frei Haus, Vertrauen muss erarbeitet werden und sprichwĂśrtlich besser kontrolliert werden. Durch einen (mĂśglicherweise formalen) Nachweis der Qualität des Produkts entsteht die notwendige Sicherheit, das Produkt fĂźr seinen Einsatzzweck betreiben zu kĂśnnen und einen Mehrwert oder Nutzwert daraus zu ziehen. Vertrauen entsteht also durch den Nachweis von Qualität. Je hĂśher die Qualität des Produkts ist, desto hĂśher ist die Wahrscheinlichkeit, dass die Erwartungen des Auftraggebers erfĂźllt werden.
Abnahmetest bei der Entwicklung von GeschäftslÜsungen
Die Entwicklung von GeschäftslÜsungen erfordert komplementäres Wissen und Expertise aus unterschiedlichen Disziplinen sowie sich ergänzende Rollen, die eine Vielzahl verschiedener Aktivitäten ausfßhren. Informationssilos mßssen vermieden werden, denn je besser diese Disziplinen miteinander integriert sind und die Rollen zusammenarbeiten, desto hÜher ist die Wahrscheinlichkeit, dass qualitativ hÜherwertige Produkte entstehen. Zusammenarbeit wird nicht nur in modernen, agilen Softwareentwicklungsmodellen forciert, auch in den traditionellen (d. h. sequenziellen) Softwareentwicklungsmodellen unterstßtzen sinnvolle Kollaborationen den Projekterfolg.
Insbesondere der Abnahmetest ist ein gutes Beispiel dafĂźr, wie die jeweiligen Rollen aus den unterschiedlichen Disziplinen durch Zusammenarbeit einen Mehrwert fĂźr das Produkt und die Organisation schaffen kĂśnnen. Der Abnahmetest verbindet dabei vor allem die Rollen des Businessanalysten (oder des Product Owners) und des Testers. Eine wichtige Aktivität dieser Rollen unabhängig vom gelebten Softwareentwicklungsmodell ist u. a. die Spezifikation von Abnahmekriterien als UnterstĂźtzung der Validierung einer GeschäftslĂśsung. Abnahmekriterien sind Ăźblicherweise Bestandteile von Anforderungen, entweder explizit oder implizit. Durch Extraktion der Abnahmekriterien aus den Anforderungen werden letztere in eine feiner granulierte, somit weniger komplexe und besser testbare Form gebracht. Darauf aufbauend werden Testfälle entworfen, die diese Abnahmekriterien umsetzen. Anhand der Testfälle wird die GeschäftslĂśsung verifiziert bzw. validiert. Die Ableitung von Abnahmetests aus Abnahmekriterien ist eine in hohem MaĂe kollaborative Aktivität, an der Businessanalysten und Tester beteiligt sein sollten.
Kollaboration von Businessanalyst und Tester
Zur UnterstĂźtzung der Aus- und Weiterbildung in diesem Bereich hat das ISTQBÂŽ den Lehrplan ÂťISTQBÂŽ Foundation Level Specialist â Acceptance TestingÂŤ [ISTQB CTFL-AcT] entwickelt. Das Hauptziel des Lehrplans ist es, die Zusammenarbeit von Businessanalysten und Testern zu unterstĂźtzen und damit Informationssilos zwischen den Rollen zu vermeiden. Der Lehrplan richtet sich dabei an alle Personen, die in die Aktivitäten des Abnahmetests involviert sind. Dies beinhaltet nicht nur Businessanalysten, Product Owner und Tester, sondern auch weitere Rollen wie Testanalysten, Testingenieure, Testberater, Testmanager, Benutzerabnahmetester und Softwareentwickler.
1.2ISTQBÂŽ Certified Tester â das Zertifizierungsprogramm fĂźr Softwaretester
Der weltweite Standard fßr die Aus- und Weiterbildung im Bereich Softwarequalitätssicherung und Softwaretest ist heute das ISTQBŽ Certified Tester -Schema des International Software Testing Qualifications Board (ISTQB) [URL: ISTQB].
Das ÂťISTQBÂŽ Certified Tester ÂŤ-Ausbildungsschema gliedert sich zum Zeitpunkt der Drucklegung dieses Buches in die drei Säulen ÂťAgileÂŤ, ÂťCoreÂŤ und ÂťSpecialistÂŤ sowie die drei Ausbildungsstufen ÂťFoundationÂŤ, ÂťAdvancedÂŤ und ÂťExpertÂŤ (siehe Abb. 1â1).
Abb. 1â1
Ăbersicht des ÂťISTQBÂŽ/GTB Certified TesterÂŤ-Ausbildungsschemas [URL: GTB]
Der Inhalt dieses Buches deckt die prßfungsrelevanten sowie darßber hinausgehende Inhalte des Zertifikats Acceptance Testing ab, das auf der Stufe Foundation in der Säule Specialist angesiedelt ist. Das prßfungsrelevante Fachwissen kann im Selbststudium (z. B. mithilfe dieses Buches) und/oder durch Teilnahme an einem Seminar erworben werden.
In Bezug auf die verschiedenen im ÂťISTQBÂŽ Certified Tester Foundation Level ÂŤ-Lehrplan [ISTQB CTFL] definierten Ausprägungen von Abnahmetests werden im ÂťAcceptance TestingÂŤ-Lehrplan Benutzerabnahmetests (User Acceptance Testing â UAT), vertragliche und regulatorische Abnahmetests sowie Alpha- und Beta-Tests behandelt. Absichtlich nicht behandelt werden hingegen betriebliche Abnahmetests (Operational Acceptance Testing â OAT), da diese in der Regel von Teams durchgefĂźhrt werden, die das System betreiben, und nicht von Testern und Businessanalysten.
1.3Nutzen dieses Buches
Das vorliegende Buch soll den Leserinnen und Lesern folgenden Nutzen bringen:
- Eine umfassende, sowohl theoretische als auch praktische EinfĂźhrung in das Thema Abnahmetest bieten.
- Das Thema Abnahmetest auf der Grundlage des ISTQBÂŽ-Lehrplans aufarbeiten sowie alle prĂźfungsrelevanten Themen des Lehrplans vermitteln.
- Relevante Themen ßber den Lehrplan hinaus vertiefen und durch Exkurse und Praxisbeispiele ergänzen.
- Die praxisnahe Anwendung durch ein realistisches und durchgehendes Fallbeispiel illustrieren.
1.4KapitelĂźbersicht
Das Buch folgt im Wesentlichen der Kapitelstruktur des Lehrplans. Ausnahmen davon sind die Kapitel 4 und 5, die im Lehrplan genau andersherum angeordnet sind. Aus didaktischen GrĂźnden wurde von dieser Anordnung fĂźr das Buch abgewichen. Die einzelnen Kapitel gliedern sich inhaltlich wie folgt:
Kapitel 2 behandelt die grundlegende Bedeutung des Abnahmetests im Softwarelebenszyklus. Es werden die Beziehungen des Abnahmetests zur Businessanalyse veranschaulicht und wichtige Begriffe und Konzepte der Businessanalyse, die einen Einfluss auf den Abnahmetest haben, dargestellt.
In Kapitel 3 werden die Aktivitäten und Aufgaben bei der Erstellung und dem Entwurf von Abnahmekriterien dargestellt. Es werden unterschiedliche Testvorgehensweisen vorgestellt und veranschaulicht, wie erfahrungsbasierte Testverfahren den Abnahmetest unterstßtzen kÜnnen.
Kapitel 4 diskutiert und beschreibt die fĂźr den Benutzerabnahmetest wichtigsten nicht funktionalen Anforderungen und wie der Abnahmetest den Umgang mit diesen durch Abnahmekriterien unterstĂźtzt.
In Kapitel 5 werden zwei standardisierte Modellierungssprachen eingefßhrt, die fßr die Analyse und Spezifikation von Geschäftsprozessen und Geschäftsregeln eingesetzt werden kÜnnen: Business Process Model and Notation (BPMN) sowie Decision Model and Notation (DMN). Im Abnahmetest werden Modelle und Modellierungssprachen vor allem während der Testanalyse und dem Testentwurf eingesetzt. Businessanalysten und Tester sollten daher die elementaren Eigenschaften beider Modellierungssprachen kennen, um die Vorteile eines visuellen bzw. modellbasierten Abnahmetests nutzen zu kÜnnen.
Kapitel 6 erläutert, welche sozialen und kommunikativen Fähigkeiten fßr einen kollaborativen Abnahmetest wichtig sind und durch welche Aktivitäten und Werkzeuge der Abnahmetest unterstßtzt wird.
Im Anhang werden ergänzende Hinweise zum Lehrstoff, der PrĂźfung und den Lernzielen des Lehrplans gegeben. Im Glossar finden sich alle prĂźfungsrelevanten SchlĂźsselbegriffe sowie weitere wichtige Definitionen. AbschlieĂend finden sich noch das AbkĂźrzungs- und Quellenverzeichnis sowie ein Index.
1.5Fallbeispiel ÂťCA-CockpitÂŤ
Die in diesem Buch vorgestellten Konzepte und Vorgehensweisen beim Abnahmetest werden anhand eines durchgängigen Fallbeispiels veranschaulicht. Dem Fallbeispiel liegt das folgende, aus einem realen Praxisprojekt abgeleitete und vereinfachte Szenario zugrunde:
Ein Telekommunikationsunternehmen (ComAccept AG) betreibt ein Softwaresystem (CA-Cockpit) zum Verkauf von Handytarifen. Dieses Softwaresystem besteht zum einen aus einem Serviceportal, Ăźber das die Mitarbeiter der ComAccept AG die Produkte konfigurieren, Kunden betreuen und Buchungen verwalten kĂśnnen, zum anderen aus einem Kundenportal, Ăźber das die Kunden Handyverträge abschlieĂen kĂśnnen. Das Softwaresystem ist in die Systemlandschaft des Telekommunikationsunternehmens integriert und hat u. a. Schnittstellen zu einem Customer-Relationship-Management-(CRM-)System (siehe Abb. 1â2).
Abb. 1â2
SystemĂźbersicht C...