Addison Wesley - SAP R3 Systeme Effizient Testen+
Addison Wesley - SAP R3 Systeme Effizient Testen+
Addison Wesley - SAP R3 Systeme Effizient Testen+
Edition SAP®
Liane Will, Christiane Hienger, Frank Straßenburg, Rocco Himmer
Administration des SAP-Systems R/3
2. Auflage zum Release 3.x, 1997, ISBN 3-8273-1136-5
Erich Dräger
Projektmanagement mit SAP R/3
1. Auflage, 1998, ISBN 3-8273-1334-1
Rüdiger Buck-Emden
Die Technologie des SAP-Systems R/3
4. Auflage zum Release 4.0/4.5, 1998, ISBN 3-8273-1379-1
Thomas Teufel, Jürgen Röhricht, Peter Willems
SAP R/3-Prozeßanalyse mit Knowledge-Maps
1. Auflage, 1999, ISBN 3-8273-1388-0
Bernd Matzke
ABAP/4
3., erweiterte Auflage, 1999, ISBN 3-8273-1553-0
Gerhard Oberniedermaier
Vertriebslogistik mit SAP R/3
1. Auflage, 2000, ISBN 3-8273-1610-3
Michael Ullrich
SAP R/3 Der schnelle Einstieg
1. Auflage, 2000, ISBN 3-8273-1646-4
®
Sandini Bib
Gerhard Oberniedermaier
Marcus Geiß
effizient testen
ADDISON-WESLEY
An imprint of Pearson Education
München • Boston • San Francisco • Harlow, England
Don Mills, Ontario • Sydney • Mexico City
Madrid • Amsterdam
Sandini Bib
Sämtliche in diesem Buch abgedruckten Abbildungen und Bildschirmabzüge unterliegen dem Urheber-
recht © der SAP AG, Neurottstraße 16, D-69190 Walldorf.
SAP®, R/2®, R/3®, RIVA®, ABAP®, SAPaccess®, SAPmail®, SAPoffice®, SAP-EDI®, SAP Business Workflow®,
SAP EarlyWatch®, SAP ArchiveLink®, R/3 Retail®, ALE/WEB®, SAPTRONIC® sind eingetragene Warenzei-
chen der SAP AG.
Andere Produktnamen werden nur zur Identifikation der Produkte verwendet und können eingetragene
Marken der entsprechenden Hersteller sein.
Die Informationen in diesem Produkt werden ohne Rücksicht auf einen eventuellen Patentschutz veröf-
fentlicht.
Warennamen werden ohne Gewährleistung der freien Verwendbarkeit benutzt.
Bei der Zusammenstellung von Texten und Abbildungen wurde mit größter Sorgfalt vorgegangen.
Trotzdem können Fehler nicht vollständig ausgeschlossen werden.
Verlag, Herausgeber und Autoren können für fehlerhafte Angaben und deren Folgen weder eine juristi-
sche Verantwortung noch irgendeine Haftung übernehmen.
Für Verbesserungsvorschläge und Hinweise auf Fehler sind Verlag und Herausgeber dankbar.
Alle Rechte vorbehalten, auch die der fotomechanischen Wiedergabe und der Speicherung in elektroni-
schen Medien.
Die gewerbliche Nutzung der in diesem Produkt gezeigten Modelle und Arbeiten ist nicht zulässig.
Fast alle Hardware- und Softwarebezeichnungen, die in diesem Buch erwähnt werden, sind gleichzeitig
auch eingetragene Warenzeichen oder sollten als solche betrachtet werden.
Umwelthinweis:
Dieses Produkt wurde auf chlorfrei gebleichtem Papier gedruckt.
Die Einschrumpffolie – zum Schutz vor Verschmutzung – ist aus umweltverträglichem und recyclingfähi-
gem PE-Material.
10 9 8 7 6 5 4 3 2 1
02 01 00
ISBN 3-8273-1561-1
Printed in Germany
Sandini Bib
Inhaltsverzeichnis
Geleitwort 9
Vorwort zur zweiten Auflage 13
Vorwort zur ersten Auflage 15
Einleitung 19
Kapitel 1
Einführung in das Testen von Software 27
1.1 Grundlagen der Softwareentwicklung 29
1.2 Vorgehensmodelle der Softwareentwicklung 32
1.3 Qualitätssicherung durch Tests im Rahmen des
Software-Life-Cycle 39
1.4 Debugging 45
1.5 CASE-Werkzeuge 46
1.6 Standardsoftware 52
Kapitel 2
Testumgebung in SAP R/3-Systemen 57
2.1 ABAP/4 Development Workbench 57
Kapitel 3
Das Testwerkzeug CATT – Computer Aided Test Tool 67
3.1 CATT-Historie 67
3.2 Genereller Überblick 68
Kapitel 4
CATT als integrales Element der R/3-Einführung 73
4.1 Das traditionelle SAP-Vorgehensmodell 75
4.2 Der ASAP-Ansatz 97
4.3 Das DSDM-basierte Vorgehensmodell 103
4.4 Fazit 125
5
Sandini Bib
Inhaltsverzeichnis
Kapitel 5
Allgemeine Funktionen von CATT 127
5.1 Einbindung von CATT in die Infrastruktur der R/3-Umgebung 127
5.2 Remote Start 128
5.3 Berechtigungsprüfung 129
5.4 Aufzeichnungsfunktionalität 131
5.5 Expertenmodus 131
5.6 Neuheiten in R/3-Release 4.0 132
5.7 Neuheiten in R/3-Releases 4.5 A bis einschließlich 4.6 B 132
5.8 Zusammenfassung der Ziele von CATT 136
Kapitel 6
Aufbau des CATT-Tools 139
6.1 Testbaustein (optional) 139
6.2 Protokoll 141
6.3 Varianten 145
Kapitel 7
Funktionen des CATT-Tools 157
7.1 Allgemeine Funktionen 158
7.2 Spezielle Funktionen von CATT 159
7.3 Parameter 172
7.4 Variablen 174
7.5 Startbild (Einzelstart) 179
7.6 Varianten 181
7.7 CATT im Repository-Informationssystem 182
Kapitel 8
Einführung in die Bedienung von CATT 183
8.1 Voraussetzungen 183
8.2 Beispiel 183
8.3 Einfacher CATT 184
8.4 Komplexer CATT-Ablauf 209
8.5 Pflege von Customizing–Tabellen über Dynpros
bzw. Transaktionen 231
8.6 Sonstige Funktionen 240
8.7 Remote Start 243
8.8 Problembehandlungen 245
8.9 Protokoll anzeigen 247
Kapitel 9
CATT-Management 249
9.1 Massenstart 249
9.2 Einzelstart 250
9.3 Selektion 250
9.4 CATT-Statistik 254
9.5 CATT-Rangfolge-Pflege 261
9.6 CATT-Transportvorbereitung 263
9.7 Übersicht 264
6
Sandini Bib
Kapitel 10
Verwaltung von CATT-Testfällen 269
10.1 Testkatalog 270
10.2 Testplan 275
10.3 Testpaket 277
10.4 Testdurchführung 277
10.5 Statusanalysen durchführen 278
10.6 Testpaket zuordnen 280
10.7 Neuerung in R/3 Release 4.5 281
Kapitel 11
Fallstudie zum praxisnahen Einsatz von CATT 283
11.1 Testplanung 283
Kapitel 12
Testabläufe zu Geschäftsprozessen des Referenzmodells 319
12.1 Absatzplanung 319
12.2 Kosten-/Erlösartenbearbeitung 321
12.3 Kreditorenstammbearbeitung 322
12.4 Debitorenstammbearbeitung 323
12.5 Bestellanforderungsbearbeitung 324
12.6 Materialstammbearbeitung 325
12.7 Kundenkontraktbearbeitung 326
12.8 Fakturabearbeitung 327
12.9 Materialstücklistenbearbeitung 328
12.10 Arbeitsplatzbearbeitung 329
Kapitel 13
Mercury Testtools 331
13.1 Mercury Interactive Inc. – Das Unternehmen 331
13.2 Testlösungen von Mercury – Executive Summary 332
Anhang A 359
A.1 R/3-Einführung: Traditionelles Vorgehensmodell 359
Anhang B 367
B.1 Aufgabenbeschreibung der ASAP-Phasen 367
Anhang C 385
C.1 Kernprozesse im IDES-Schulungssystem 385
Anhang D 387
Inhaltsverzeichnis
7
Sandini Bib
Sandini Bib
Geleitwort
9
Sandini Bib
Geleitwort
10
Sandini Bib
Rainer Linnhoff
ICM Group GmbH
International Consulting Group Munich
Geleitwort
11
Sandini Bib
Sandini Bib
Vorwort zur
zweiten Auflage
13
Sandini Bib
Vorwort zur zweiten Auflage
werden als auch in Zukunft dazu prädestiniert sind, Kosten und Zeit zu sparen,
größtmögliche Unterstützung bietet.
Bei der Realisierung dieser Neuauflage haben wir viel Unterstützung erfahren.
Dafür möchten wir uns sehr herzlich bedanken. Unser besonderer Dank gilt
Herrn Manfred Eierle, Geschäfsführer der Mercury Interactive GmbH, für sei-
nen wertvollen Beitrag. Für die vielen Hinweise, Meinungen und Ratschläge
danken wir unseren Lesern. Über die große Resonanz haben wir uns sehr ge-
freut. Dem Addison-Wesley Verlag sei für die kooperative Zusammenarbeit
ebenfalls gedankt.
August 2000
Gerhard Oberniedermaier und Marcus Geiß
14
Sandini Bib
Vorwort zur
ersten Auflage
15
Sandini Bib
Vorwort zur ersten Auflage
Selbstverständlich bin ich allen Lesern jederzeit für Hinweise und Vorschläge
bezüglich des Inhalts und der Struktur dieses Buches dankbar. Der Leser sei
hiermit ausdrücklich ermutigt, sowohl konstruktive Kritik als auch Verbesse-
rungsvorschläge zur vorliegenden ersten Auflage dieses Buches an mich zu sen-
den. Als federführender Autor werde ich mich intensiv darum bemühen, diesen
Vorschlägen Rechnung zu tragen.
Als Kontaktadresse dient hierzu folgende E-Mail-Adresse:
[email protected]
Anfragen für die Realisierung von entsprechenden R/3-Projekten können auf
diesem Wege natürlich auch gerne an mich herangetragen werden.
Allen, die zum erfolgreichen Abschluss dieses Buchprojektes beigetragen ha-
ben, möchte ich an dieser Stelle herzlichen Dank aussprechen.
Großer Dank gebührt in diesem Zusammenhang der Geschäftsführung der
ICM, Herrn Rainer Linnhoff und Herrn Matthias Mauser, für die hervorragende
Unterstützung bei der Realisierung dieses Buchprojektes. Dem Buchprojekt
wurde seitens meines Arbeitgebers großes Interesse und große Aufgeschlossen-
heit entgegengebracht.
Ich möchte mich vor allem auch bei meinem Mitautor Herrn Marcus Geiß für
die sehr gute und produktive Zusammenarbeit bedanken. Er unterstützte mich
konstruktiv bei der Erstellung der Kapitel 1, 4 und 12 dieses Buches.
Dem Team von Addison Wesley Longman, welches das Buchprojekt von der er-
sten bis zur letzten Seite konstruktiv begleitet hat, danke ich an dieser Stelle
ebenfalls ganz herzlich. Insbesondere möchte ich hier dem Lektor, Herrn Tomas
Wehren, für die sehr gute und erfreuliche Zusammenarbeit meinen großen
Dank aussprechen.
Mein ganz besonderer Dank allerdings gilt meiner Familie, insbesondere mei-
ner Mutter, die mich jederzeit in guten und wie schwierigen Situationen in toller
Art und Weise unterstützte.
Für ihre ganz besonders liebenswerte Art, mich trotz aller zeitlichen Entbehrun-
gen, die mein Beruf und auch die Erarbeitung dieses Buches mit sich brachten,
immer wieder neu zu inspirieren und auch zu motivieren sei abschließend vor
allem aber Kathrin, meiner großen Liebe, sehr herzlich gedankt. Sie schuf den
Ruhepol, der mich immer wieder neue Kraft und neuen Elan tanken ließ.
16
Sandini Bib
17
Sandini Bib
Sandini Bib
Einleitung
19
Sandini Bib
Einleitung
können. Dabei werden vom Unternehmen auch und vor allem an die Informa-
tionstechnologie sehr hohe Ansprüche gestellt.
John J. Donovan, Professor des MIT (USA), Business Reengineering with Infor-
mation Technology, vertritt in diesem Zusammenhang folgende Auffassung:
Um auf dem Markt einen strategischen Vorteil gegenüber den zahlreichen Wett-
bewerbern zu erlangen und außergewöhnliche Ergebnisse zu erzielen, muss ein
Unternehmen über eine solide Softwarearchitektur für alle betriebswirtschaftli-
chen Anwendungen verfügen. Diese Architektur ist eine dreistufige, auf Stan-
dards basierende Client/Server-Lösung.
Das bedeutet im Klartext Folgendes: Zum einen müssen wichtige Informatio-
nen bei Bedarf sofort zentral und anwendungsübergreifend verfügbar sein; das
heißt, zu jeder Zeit, von jeder Stelle aus muss der Zugriff auf diese Daten in
Echtzeit möglich sein. Es nutzt nichts, wenn die Daten nicht den jetzigen Stand,
sondern den der letzten Woche widerspiegeln.
Prozesse, die bislang zeitlich aufeinanderfolgten, müssen nun parallel ablaufen.
Um maximale Produktivität zu erreichen, ist es erforderlich, dass die entspre-
chenden Daten automatisch in den verschiedensten Anwendungsbereichen ver-
fügbar, also anwendungsübergreifend auf einer zentralen Datenbank hinterlegt
sind. Datenredundanz wird damit ausgeschlossen, und eventuelle Fehlerquel-
len werden dadurch vermieden. Die Anforderungen an ein zukunftstaugliches
ERP-System (Enterprise Ressource Planning-System) verlangen darüber hin-
aus, dass sämtliche Geschäftsvorgänge in einem Unternehmen prozessorientiert
dargestellt und strukturiert werden können.
Diese zwingend erforderlichen Funktionalitäten eines Softwaresystems erhö-
hen die Anforderungen an die heutige Softewareentwicklung enorm. Die mo-
derne Softwareentwicklung verlangt aufgrund der hohen Anforderungen an
Funktionalität, Integration und Verteilung die Durchführung großer Entwick-
lungsprojekte. Die Anforderungen des Marktes hinsichtlich der Produktqualität
wachsen dabei ständig. Immer mehr Unternehmen sind darum bemüht, nach
bestimmten Qualitätsnormen wie z.B. der DIN ISO 9000 zertifiziert zu sein, und
hoffen so, sich gegenüber der übrigen Konkurrenz am Markt hervorheben zu
können. In Bezug auf die Qualität in der Softwareentwicklung ist in Europa die
Qualitätsnorm DIN ISO 9000-3 besonders bedeutend. Qualität im Rahmen der
Entwicklung von Software wird heutzutage also zunehmend zu einem entschei-
denden Faktor.
Software hoher Qualität mit niedrigen Kosten zu entwickeln ist somit sowohl
für den Entwickler als auch für den Anwender eine herausfordernde Tätigkeit,
die letztlich durch das systematische Vorgehen geprägt wird. Zur Unterstüt-
zung der Entwicklung, der Implementierung und auch der anschließenden
Wartung und – im Idealfall – permanenten Optimierung der Software gibt es
computergestützte Werkzeuge. Für sie gilt: »Der Fortschritt des Menschen do-
kumentiert sich wesentlich in der Entwicklung und Anwendung seiner Werk-
zeuge. Je ausgereifter, komplexer und auch handhabbarer seine Werkzeuge
20
Sandini Bib
sind, desto produktiver und hochwertiger werden die Ergebnisse seiner Arbeit
und desto höher wird letztlich damit auch die Qualität seiner Softwareprodukte
sein.« [/Frick95/ 320]
Dieses elementare Statement muss insbesondere auch für die Entwicklung, An-
passung und Wartung einer betriebswirtschaftlichen Standardanwendungs-
software gelten, da hier ebenfalls höchste Anforderungen an Produktivität,
Qualität und Funktionalität der Software gestellt werden. Deshalb sollten unter
anderem im Rahmen eines betriebswirtschaftlichen Standardanwendungssoft-
warepaketes auch entsprechende Werkzeuge zur Verfügung gestellt werden –
sowohl für die Softwareentwicklung beim Hersteller als auch für die schnelle
und effiziente Einführung, Anpassung, Modifizierung und Wartung beim spä-
teren Endkunden.
Das Softwarehaus SAP AG mit Sitz in Walldorf bietet mit der betriebswirt-
schaftlichen Standardsoftware R/3 ein weltweit eingesetztes betriebswirtschaft-
liches Standardsoftwaresystem an, welches alle bisher beschriebenen Anforde-
rungen in hervorragender Art und Weise erfüllt.
Bei der R/3-Software handelt es sich um ein mehrstufiges Client-Server-System
mit umfassender betriebswirtschaftlicher Funktionalität, das sich durch unter-
nehmensweite Integration auszeichnet, wodurch ein einheitlicher Datenzugriff,
Flexibilität und Produktivität auf höchsten Niveau gewährleistet sind.
Mithilfe dieses Softwarepaketes können sich sowohl Unternehmen der verschie-
densten Branchen als auch öffentliche Verwaltungen, Behörden, Krankenhäuser
usw. kontinuierlich den sich permanent ändernden betriebswirtschaftlichen An-
forderungen des Marktes anpassen und somit ihre Wettbewerbsposition verstär-
ken oder sogar ausbauen. Heute ist das R/3-System zu einem De-facto-Standard-
system sowohl für große, multinational operierende Unternehmen als auch für
kleinere, national engagierte Betriebe geworden.
Das R/3-System ist heute weltweit mittlerweile ca. 21.000mal installiert. Diese
Zahl wird in Zukunft noch sehr stark ansteigen. Denn der Weltmarkt für be-
triebliche Standardsoftware wächst nach Meinung vieler Marktexperten weiter
mit bis zu 35 % pro Jahr. Außerdem erklärte Dietmar Hopp, Mitbegründer und
ehemaliger Vorstandsvorsitzender der SAP AG, in einem Interview: »R/3 wird
sehr langfristig auf dem Markt sein. Die SAP AG entwickelt es ständig weiter.
Ein R/4 ist nicht in Sicht.« [/Börse Online97/ 40]
Das kräftige Wachstum ist auf die weltweit ungebrochen hohe Nachfrage nach
standardisierter Anwendungssoftware zur Unterstützung betrieblicher Abläufe
zurückzuführen. Die Einführung des EURO sowie die Jahrtausendwende sor-
gen darüber hinaus für erhebliche Investitionen der Unternehmen im Hard-
Einleitung
und Softwarebereich, von denen die SAP AG auch in Zukunft noch in erhebli-
cherem Maße profitieren wird. Auf die EURO-Einführung sowie den Jahrtau-
sendwechsel sind die SAP-Systeme bestens vorbereitet. Auch die strikte Aus-
richtung der Produkte an die Kundenanforderungen sowie die Fähigkeit der
21
Sandini Bib
Einleitung
22
Sandini Bib
23
Sandini Bib
Einleitung
die Einsatzmöglichkeiten bezogen auf Projektphasen, die Vorteile von CATT so-
wie die Umsetzung von CATT im R/3-Einführungsprojekt im Mittelpunkt.
Das vorliegende Buch ist wie folgt aufgebaut:
In Kapitel 1 dieses Buches werden kurz beschrieben:
◗ Die Grundlagen der Softwareentwicklung
◗ Die Phasen des Softwareentwicklungsprozesses
◗ Das Testen von Software und die dabei verwendeten CASE-Werkzeuge
Dies soll den Lesern, welche noch über keine genaueren Kenntnisse in diesen
Themengebieten verfügen, einen umfassenden Überblick gewähren. Dieses Ka-
pitel zeigt überdies, wie das SAP-eigene CASE-Werkzeug CATT in die einzel-
nen Phasen des Softwareentwicklungs- und Testprozesses eingebunden wer-
den kann.
Kapitel 2 bietet einen Überblick über:
◗ Die Historie des CATT-Tools
◗ Die Definition
◗ Die CATT-Funktionen
◗ Die Einschränkungen der Funktionen
In Kapitel 3 wird der Aufbau der im R/3-System, Modul Basis, enthaltenen Ent-
wicklungsumgebung ABAP/4 Development Workbench erläutert.
Kapitel 4 veranschaulicht, wie das Testwerkzeug CATT bei der Einführung von
R/3 in den einzelnen Phasen
◗ des traditionellen Vorgehensmodells,
◗ der ASAP-Einführungsmethode und
◗ des neuentwickelten DSDM-basierten Vorgehensmodells
◗ effektiv genutzt werden kann. Die einzelnen mit CATT automatisierbaren
Arbeitspakete werden dabei detailliert beschrieben. Auch auf phasenüber-
greifende Einsatzmöglichkeiten wird im Detail eingegangen.
Im Anschluß daran werden in Kapitel 5 die allgemeinen Funktionalitäten des in
der ABAP/4 Development Workbench integrierten Computer Aided Test Tools
aufgezeigt.
In Kapitel 6 wird unter anderem auch die Zusammensetzung des Tools, dessen
modulares Konzept und die Verwendung von Variablen und Parametern dar-
gestellt.
24
Sandini Bib
25
Sandini Bib
Einleitung
26
Sandini Bib
1
Vorliegendes Buch soll nach Meinung der Autoren im Wesentlichen folgende
Zielgruppen ansprechen:
◗ SAP-Programmierer
◗ SAP-Applikationsberater und -experten
Jede dieser Zielgruppen verfügt über fachspezifisches R/3-Know-how. So sind
dem SAP-Programmierer u.a. die Thematik der Softwareentwicklung und des
Testens von Software sehr vertraut. Das R/3-spezifische Modulwissen ist je-
doch meist weniger stark ausgeprägt.
Die Applikationsexperten hingegen kennen sich bestens mit der SAP R/3-Soft-
ware aus und verfügen beispielsweise über spezielles Wissen darüber, welche
Geschäftsprozesse und Funktionen mit dem SAP R/3-System abgebildet wer-
den können bzw. wann Modifikationen notwendig sind. In der Regel verfügen
die Applikationsexperten aber selten über ein detailliertes Wissen hinsichtlich
der Softwareentwicklung oder der verschiedenen Testmethoden.
Die Basis für die Benutzung der SAP-eigenen Werkzeuge zum Testen der SAP
R/3-Software, d.h. zum Testen der im R/3-System (einschließlich Erweiterun-
gen und Modifikationen) abgebildeten Geschäftsprozesse und -funktionen,
muss aber eine grundlegende Ausbildung in allen der folgenden Bereiche sein:
Bereich 1: Grundlagen der Softwareentwicklung sowie ausgeprägtes Wissen be-
züglich des Testens von Softwaresystemen. Die grundlegenden Begriffe zu die-
sen Themenbereichen werden in Kapitel 1 dieses Buches erläutert.
Bereich 2: Grundlegendes Wissen bezüglich der Eigenschaften und Besonderhei-
ten des SAP R/3-Systems, was sowohl die Geschäftsprozesse und -funktionen
angeht als auch Wissen bezüglich des Einführungsprozesses des SAP R/3-Sys-
tems, d.h. Know-how im Bereich der verschiedenen Vorgehensmodelle zur
Durchführung von R/3-Projekten. Diese Thematik wird, einschließlich der Fra-
27
Sandini Bib
Einführung
28
Sandini Bib
29
Sandini Bib
1.1 Grundlagen der Softwareentwicklung
◗ Implementierung
◗ Systemtest, Abnahme und Wartung
◗ Software-Life-Cycle
1.1.1 Analyse
Die Phase »Analyse« beschäftigt sich mit der Fragestellung »Was soll das An-
wendungssystem leisten?«. Im ersten Schritt befasst sich die Analysephase mit
einer Aufnahme des Ist-Zustandes des Anwendungsgebietes, welches von dem
zu entwickelnden Anwendungssystem abgedeckt werden soll. Insbesondere
werden hier die Schwachstellen analysiert und bewertet. Im zweiten Schritt
wird ein Sollkonzept entwickelt, in dem die Anforderungen der Anwender an
das künftige System festgehalten werden. Basierend darauf sowie auf der
Schwachstellenanalyse erstellt man nun den Fachentwurf, welcher den Leis-
tungsumfang des neuen Anwendungssystems detailliert beschreibt. Hinsicht-
lich der technischen Realisierung wird zunächst ein grobes Systemkonzept an-
gefertigt. Am Ende dieser Phase wird dann entschieden, ob das geplante System
überhaupt realisiert werden soll. Diesem Zweck dienend werden Kosten- bzw.
Nutzen-Analysen anhand von Wirtschaftlichkeitsvergleichen durchgeführt.
1.1.2 Definition
Die wesentlichen Aufgaben der Definitionsphase liegen in der Erstellung der
Produktdefinition, der Festlegung der Leistungsmerkmale und der Benutzer-
interaktion, der Hierarchisierung der Komponenten, der Definition von Daten,
Funktionen und Algorithmen sowie der verbindlichen Beschreibung von Qua-
litätsmerkmalen und ihren Ausprägungen. Kennzeichen dieser Phase ist also
die Umsetzung des Anwendungsgebietes in die Leistungscharakteristik eines
Softwaresystems. Sie ist von starker Methodenanwendung und dem Einsatz
von CASE-Tools geprägt. CASE-Tools sind computergestützte Hilfswerkzeuge
bei der ingenieurmäßigen Softwareentwicklung; auch das Computer Aided
Test Tool (CATT) lässt sich den CASE-Tools zuordnen.
Das Ergebnis dieser Phase ist ein konsistentes, vollständiges und eindeutiges
Anforderungsprofil sowie das Vorhandensein von Dokumenten, in denen die
relevanten Prozesse sowie die Kontroll- und Datenstrukturen beschrieben sind.
[/Frick95/38]
30
Sandini Bib
1.1.3 Entwurf
Diese Phase trägt die Überschrift: »Wie ist es zu tun?«. Hier werden wichtige
Entscheidungen getroffen. Aus dem Sollkonzept der Analysephase muss der ei-
gentliche Systementwurf in detaillierter datenverarbeitungstechnischer Sicht
abgeleitet werden. In diesem Entwurf sind vor allem die Datenstrukturen und
die Arbeitsabläufe festzulegen. Anschließend werden die Vorgaben für die Pro-
grammentwicklung, also die Programmspezifikationen, definiert. Basierend auf
dieser Programmspezifikationen wird letztlich ein Programmentwurf formu-
liert. [/Stahlknecht95/238]
1.1.4 Implementierung
In dieser Phase erfolgt die Umsetzung des in der Entwurfsphase dargestellten
abstrakten Programmentwurfs in ein Computerprogramm durch Codierung in
einer Programmiersprache. [/Beims95/13] Kritische Teile des Programms soll-
ten zuvor einem sogenannten symbolischen Test unterzogen werden. Nach Ab-
schluss der Programmierung prüfen Übersetzungsprogramme wie z.B. Assem-
bler oder Compiler das Programm auf syntaktische, d.h. formale Fehler und
teilweise auch auf semantische, d.h. logische Fehler. In engem Zusammenhang
mit der Programmierung stehen der Modultest und der Integrationstest, mit de-
nen nacheinander semantische Fehler im Programm oder in den vorangegange-
nen Entwurfsschritten eliminiert werden sollen. Die Begriffe symbolischer Test,
Modultest und Integrationstest werden nachfolgend explizit behandelt. Auch
bei diesen Tests werden die sogenannten CASE-Tools als Testwerkzeuge einge-
setzt. Ergebnis der Implementierungsphase sind zunächst die einzelnen fertig-
31
Sandini Bib
1.2 Vorgehensmodelle der Softwareentwicklung
1.1.6 Software-Life-Cycle
Man kann also abschließend sagen, dass in den ersten drei Entwicklungsphasen
das künftige Softwareprodukt auf verschiedenen Abstraktionsniveaus beschrie-
ben wird. In der vierten Phase entsteht dann das System als solches und in der
fünften kann es in Betrieb genommen werden. Dieses Konzept geht davon aus,
dass für jede Phase das Ergebnis, welches nach Abschluss der jeweiligen Phase
vorliegen soll, bereits im Vorfeld klar definiert ist. Eine Phase kann nur dann be-
gonnen werden, wenn die vorhergehende vollständig abgeschlossen ist. Die
Vorgehensweise ist also streng sequentiell. Man spricht hier vom klassischen
Software-Life-Cycle-Modell. »Untersuchungen von Boehm haben gezeigt, dass
diese sequentielle life-cycle-orientierte Vorgehensweise die am weitesten ver-
breitete Softwareentwicklungsmethode ist« [/Pomberger96/22].
Mit dem Begriff Software-Life-Cycle-Modell verbindet man die Vorstellung von
einer Zeitspanne, in der ein Softwareprodukt entwickelt und eingesetzt wird,
bis zum Ende seiner Benutzung.
1.2.1 Wasserfallmodell
Der Begriff Wasserfallmodell charakterisiert die Phasen des Softwarelebenszyklus
(Software-Life-Cycle), indem er eine bildliche Vorstellung von der schrittwei-
sen, nicht umkehrbaren Vorgehensweise beim Entwurf, der Entwicklung und
Implementierung von Software vermittelt [/Thome96/170]. Hier werden Rück-
kopplungen zwischen den einzelnen Entwicklungsschritten mit der Restriktion,
32
Sandini Bib
1.2.2 Prototyping
Das Prototyping ist, kurz gesagt, eine Vorgehensweise der Softwareentwick-
lung, bei der zunächst eine Vorabversion, also ein Prototyp, des geplanten An-
wendungssystems erstellt wird. Man verwendet diesen Prototyp entweder nur
als »Wegwerfprototyp« zur Sammlung von Erfahrungen (rapid prototyping),
oder er wird schrittweise bis zum endgültigen System verbessert (evolutionary
prototyping) [/Schneider97/675]. Bezogen auf das vorstehend beschriebene
Phasenschema der Softwareentwicklung unterscheidet man darüber hinaus
noch zwischen dem explorativen und dem experimentellen Prototyping. Das ex-
plorative Prototyping konzentriert sich auf den Fachentwurf, d.h. auf die Funktio-
nalität des jeweiligen Anwendungssystems. Mit Alternativen der technischen
Realisierung z.B. Schnittstellen zwischen Programmen befasst sich das experi-
mentelle Prototyping.
33
Sandini Bib
1.2 Vorgehensmodelle der Softwareentwicklung
DSDM steht für Dynamic Systems Development Method und beschreibt ein nicht
geschütztes dynamisches Vorgehensmodell, welches ein Gerüst zur Verfügung
stellt, mit dem Softwaresysteme entwickelt und gewartet werden können, die
strengen Zeitvorgaben unterworfen sind.
Dieses Modell wurde vom gleichnamigen DSDM-Konsortium entwickelt und
beruht auf den Erfahrungen der verschiedener Mitglieder des Konsortiums.
Dem DSDM-Konsortium gehören mittlerweile über 1000 Mitglieder an, wie bei-
spielsweise IBM, Hewlett Packard, Siemens plc, Cap Gemini, Coopers Ley-
brand, Ernst&Young. Dem interessierten Leser, der mehr über DSDM erfahren
möchte, seien sowohl das DSDM-Handbuch [/DSDM97/] als auch das Buch
»DSDM – The Method in Practice« von Jennifer Stapleton [/Stapleton97/] emp-
fohlen.
Der Hauptanwendungszweck der Dynamic Systems Development Method ist
ein strukturiertes und kontrolliertes Vorgehen bei Softwareentwicklungsprojek-
ten. Insbesondere sollen mit DSDM sogenannte RAD-Projekte (Rapid Applica-
tion Development-Projekte) durchgeführt werden. Der Begriff des RAD geht
auf James Martin zurück und findet Verwendung in dessen gleichnamigen
Buch [/Martin91/]. Das wesentliche Charakteristikum von RAD-Projekten ist
die Beachtung streng vorgegebener Zeitfenster bzw. die hohe Entwicklungsge-
schwindigkeit, so dass RAD-Projekte häufig mit dem Ruf zu kämpfen haben, sie
seien »quick and dirty« oder RAD-Projekte seien »the licence to hack«. Dieses
negative RAD-Image resultiert aus einem scheinbar unstrukturierten und plan-
losem Vorgehen in RAD-Projekten. Die Dynamic Systems Development Me-
thod stellt nun ein Vorgehensmodell zur Verfügung, das geeignet ist, RAD-Pro-
jekte zu strukturieren und zu planen, und kann so dem negativen RAD-Image
entgegenwirken.
Die Dynamic Systems Development Method unterteilt sich in fünf Phasen. Wie
die einzelnen Phasen aussehen bzw. wie durch das Modell navigiert werden
kann, wird in der folgenden Abbildung 1.1 dargestellt.
34
Sandini Bib
Machbarkeit
Geschäftsstudie
Funktionale
Modell Implementierung
Iteration
Design &
Build Iteration
Abbildung 1.1
Das DSDM-Modell
35
Sandini Bib
1.2 Vorgehensmodelle der Softwareentwicklung
36
Sandini Bib
37
Sandini Bib
1.2 Vorgehensmodelle der Softwareentwicklung
◗ Testen
◗ Risikoanalyse
◗ Qualitätssicherung
Diese phasenübergreifenden Aktivitäten sind für DSDM von besonderer Bedeu-
tung, so dass die Darstellung des vollständigen dynamischen Vorgehensmodells
darauf abzielt, diese Aktivitäten als Fundament mit in die Abbildung einzubezie-
hen. Das vollständige DSDM-Vorgehensmodell ist in Abbildung 1.2 zu sehen.
Machbarkeit
Geschäftsstudie
Funktionale
Modell Implementierung
Iteration
Design &
Build Iteration
Projektmanagement
Teamstrukturen
Benutzerbeteiligung
Prototyping-Management
Fähigkeiten und Verantwortung
Schätzen
Risikoanalyse
Änderungskontrolle
Konfigurationsmangement
Entwicklungsumgebung
Methoden
Testen
Qualitätsmanagement
regelmäßige Auslieferung
Abbildung 1.2
DSDM inkl. der fundamentalen phasenübergreifenden Aktivitäten
38
Sandini Bib
Eine weitere wichtige Fragestellung ist, ob bzw. wie DSDM angewendet werden
kann, um Qualitätsnormen zu erfüllen. Ein sehr hilfreiches Werk bei der Beant-
wortung dieser Frage ist die Ausarbeitung vom British Standards Institution
(BSI) »The Dynamic Systems Development Method & TickIT«.
Das BSI beschreibt in dieser Ausarbeitung einen detaillierten Leitfaden, der dar-
stellt, wie DSDM-Softwareentwicklungsprojekte durchzuführen sind, damit die
Anforderungen der ISO 9001 erfüllt werden [/BSI97/]. Das Ergebnis dieser
Ausführungen ist also, dass DSDM die Anforderungen der ISO 9000 erfüllt.
DSDM basiert einerseits auf der Idee, die Anforderungsanalyse und -realisie-
rung unmittelbar nacheinander durchzuführen (also anders als in wasserfall-
basierten Modellen), und andererseits auf dem Ansatz des iterativen Prototy-
pings, welches durch ein Prototypen-Management gesteuert wird. Hierbei stel-
len die Prototypen im Sinne von DSDM keine »Wegwerf-Prototypen« dar, son-
dern werden als Teil des zu entwickelnden Produktes realisiert. Dieses
Vorgehen zielt darauf ab, dass der spätere Endbenutzer schon sehr früh in das
Projekt einbezogen wird, also die Entwicklung des Softwareproduktes mitver-
folgt. Als Vorteile, die sich aus diesem Vorgehen ergeben, nennt das DSDM-
Konsortium die folgenden Punkte [/DSDM97/15]:
◗ Der Endbenutzer identifiziert sich mit dem System.
◗ Die Kooperation aller Beteiligten mindert mögliche Widerstände bei der Im-
plementierung.
◗ Die Gefahr, die Bedürfnisse des Endbenutzers zu verfehlen, wird reduziert.
◗ Der Endbenutzer erlangt ein besseres Verständnis des Systems. Er weiß, was,
warum und wie gemacht wurde.
39
Sandini Bib
1.3 Qualitätssicherung durch Tests im Rahmen des Software-Life-Cycle
40
Sandini Bib
Neueste Ansätze versuchen heute, Fehler bereits vor und auch während der
Entwicklung der Programme so weit wie möglich zu vermeiden.
Ziel des Testens ist es, alle im Testobjekt vorhandenen Fehler zu erkennen und
zu lokalisieren. Testen verfolgt also die Zielsetzung, möglichst viele Fehler zu
entdecken, um der Restfehlerzahl Null so nahe wie möglich zukommen. Natür-
lich sind die Ziele des Testens auch vom Nutzer der Testergebnisse abhängig,
der Entwickler, Anwender, Qualitätssicherungsbeauftragter oder auch Mana-
ger sein kann.
Als Fehler bezeichnet man jede Abweichung des Verhaltens von dem in der An-
forderungsdefinition des Programmes festgelegten Verhalten. Testen ist also
eine das Softwareentwicklungsprojekt begleitende Maßnahme zur Software-
qualitätssicherung nach Qualitätsnormen wie z.B. DIN ISO 9000-3.
An die Qualität des Testens sind entsprechend obiger Norm die Anforderungen
zu stellen, dass
◗ Tests wiederholbar, nachvollziehbar und vollständig sind,
◗ sie klare Ziele erfüllen,
◗ sie wie Softwareprodukte vollständig und lesbar dokumentiert sind,
◗ sie geplant, vorbereitet und der Qualitätssicherung unterworfen sind.
Diese Anforderungen werden durch die SAP-Testwerkzeuge CATT und Test-
workbench in idealer Weise erfüllt:
◗ CATT ermöglicht es dem Anwender, Tests wiederholbar zu gestalten. Sie
werden mit Hilfe des CATT-eigenen Testprotokolls vollständig dokumen-
tiert und sind somit für jeden Benutzer Schritt für Schritt nachvollziehbar.
41
Sandini Bib
1.3 Qualitätssicherung durch Tests im Rahmen des Software-Life-Cycle
1.3.2 Testarten
Symbolischer Test
Der symbolische Test kann als Vorstufe des Testens angesehen werden. Hier
wird zunächst rein formal geprüft, ob der Code des Programms den Vorgaben
entspricht. Das Programm als solches wird hier noch nicht gestartet. Die einzel-
nen Teile des Programms bzw. das vollständige Programm werden manuell mit
wenigen Testdaten durchgespielt. Leider wird der symbolische Test häufig ver-
nachlässigt. Dies hat zur Folge, dass mit dem eigentlichen computergestützten
Testen meist zu früh, d.h. bevor ein ausgereiftes Programm besteht, begonnen
wird [/Stahlknecht95/304].
Modultest
Der Modultest stellt die erste, unterste Stufe des computergestützten Testens bei
der Softwareentwicklung dar. Zuerst werden hierbei alle elementaren Bausteine
als Fundament eines Programmsystems getestet und dann erst ihre Integration.
Es werden also alle Funktionen, die selbst keine anderen Programmbausteine
benötigen, getestet, dann erst ihre Integration zu einem Modul. Die Minimalfor-
derung für den Test eines Softwaremoduls muss dabei sein, dass mindestens
alle Programmzweige einmal durchlaufen werden und das Modul gemäß seiner
Spezifikation reagiert [/Frick95/41]. Man bezeichnet den Modultest auch als
Einzeltest.
Der Modultest testet, ob das einzelne SAP R/3-Modul richtig arbeitet. So wer-
den die einzelnen Transaktionen eines Moduls einem Test unterzogen. Alle bei
einem R/3-Einführungsprojekt durchzuführenden Modultests können mit dem
Computer Aided Test Tool automatisiert und wiederholt durchgeführt werden.
Jeder dieser CATT-gestützten Modultests wird anhand eines Testprotokolls,
welches im R/3-System archiviert wird, genau dokumentiert. Der Modultest
kann unter Zuhilfenahme der Testworkbench geplant und strukturiert werden.
Integrationstest
Nach dem Modultest folgt in der nächsthöheren Stufe der Integrationstest, auch
Komponententest genannt, welcher die Integration mehrerer, bereits getesteter
Module zu einem Subsystem einem Test unterzieht (man bezeichnet dies auch
als »inkrementelle Integration« [/Stahlknecht95/305]), bis letztlich die Integra-
tion der Subsysteme, d.h. das Gesamtsystem, getestet werden kann.
Beim Integrationstest im Zuge eines R/3-Einführungsprojektes wird z.B. über-
prüft, ob die verschiedenen Geschäftsprozesse über die Modulgrenzen hinweg
mit SAP R/3 fehlerfrei abgebildet werden können. In diesem Kontext kann z.B.
ermittelt werden, ob die Schnittstellen zwischen den einzelnen Modulen richtig
arbeiten und die Daten fehlerfrei von einem Modul zum anderen weitergegeben
42
Sandini Bib
Programmtest
Modul- und Integrationstest bilden zusammen den sogenannten Programmtest.
Dieser ist ausschließlich Aufgabe der Entwickler. Nach Durchführung des Pro-
grammtests wird die Fachabteilung in das Testgeschehen involviert. Nun be-
ginnt das Testen im weiteren Sinne, da sich die Tests jetzt nicht mehr nur auf
einzelne Programme beziehen, sondern auf das vollständige Anwendungs-
system [/Stahlknecht95/305].
Systemtest
In dieser Testphase wird das Zusammenspiel zwischen den Subsystemen getes-
43
Sandini Bib
1.3 Qualitätssicherung durch Tests im Rahmen des Software-Life-Cycle
◗ Stresstest:
Durch diese Aktivität soll sichergestellt werden, dass die konfigurierte Pro-
duktivumgebung für den Produktivbetrieb aller notwendigen Geschäftspro-
zesse realisierbar ist und dem Anwender die Möglichkeit bietet, vor Anlauf
der Produktion potentielle Verbesserungsmöglichkeiten der Systemperfor-
mance zu erkennen. Der abschließende Testplan legt die zu verarbeitenden
Transaktionen, die Datenmengen und die geforderten Performance-Levels
fest.
◗ Systemadministrationstest:
Zweck dieser Aufgabe ist es, die für die Produktivumgebung definierten Sys-
temadministrationsprozeduren mehrmals zu testen, bis die gewünschten Er-
gebnisse erzielt werden. Hier testet man die im SAP-Systemhandbuch
angegebenen Aktivitäten eines Systemverwalters, wie die Verwaltung der
Jobplanung, Korrektur- und Transportverwaltung, Reaktion auf R/3-Sy-
stem-Alerts und -Protokolle.
◗ Disaster-Recovery-Test:
Ziel dieser Testaktivität ist es, den Disaster-Recovery-Plan und die Prozedu-
ren für die Produktivumgebung mehrmals zu testen. Wurden diese Services
einem anderen Unternehmen in Auftrag gegeben, sollte man bei dieser Ge-
legenheit deren Service und Effektivität testen. Sicherzustellen ist, dass die
gesamte technische Infrastruktur reproduzierbar ist. Auch Netzwerk, Sys-
temhardware, Leistung, Druckergebnis, Benutzerkonfiguration usw. müs-
sen hier getestet werden.
◗ Backup- und Restore-Verfahren:
Zweck dieser Aufgabe ist es, die Verfahren für Backup und Restore in der
Produktivumgebung mehrmals zu testen, bis die gewünschten Ergebnisse
erzielt werden; dazu gehören verschiedene Tests von Datenzerstörungssze-
narien (beispielsweise Hardwarefehler wie Festplattenfehler oder CPU-Feh-
ler) sowie von Anwenderfehlern wie versehentliches Löschen von Daten.
Abnahmetest
Den Abschluss des Testverfahrens bei der Softwareentwicklung bildet der Ab-
nahmetest. Er wird häufig auch als Einsatztest bezeichnet. Dieser Test hat die
Aufgabe, nachzuweisen, dass die im Pflichtenheft aufgeführten Anforderungen
erfüllt sind. Die dort festgelegten Testfälle werden dabei dem Abnahmetest zu-
grunde gelegt. Am Abnahmetest sind nicht nur die Fachabteilung, sondern
auch alle vor- und nachgeschalteten Stellen beteiligt. Im Rahmen der Abnahme-
tests ist der Beweis für die Korrektheit des Anwendungssystems zu erbringen.
Damit wird das Anwendungssystem validiert.
44
Sandini Bib
Regressionstest
Der Regressionstest überprüft, ob nach einem Releasewechsel dieselbe Funktio-
nalität zur Verfügung steht wie zuvor. Hier kann CATT ebenfalls effektiv einge-
setzt werden.
1.4 Debugging
In enger Verbindung zum Testen steht das Debugging. Deshalb sei es an dieser
Stelle der Vollständigkeit halber noch erwähnt.
Während das Testen hilft, Fehler aufzudecken, ist das Debugging eine Tätigkeit
zum Auffinden und zur Behebung von Fehlerursachen [/Stahlknecht95/305].
Testen und Debugging sind also unterschiedliche, aber sich ergänzende Aktivi-
täten. Man unterscheidet drei Methoden des Debugging:
◗ Induktion
◗ Deduktion
◗ Rückverfolgung
1.4.1 Induktion
Hier werden Informationen über die Fehlersymptome gesammelt, und zwar so
viel wie möglich, und anschließend einer Auswertung unterzogen. Im nächsten
Schritt werden eine oder mehrere Hypothesen über die Fehlerursache aufge-
stellt. Diese Hypothesen vergleicht man mit den beobachteten Informationen.
1.4.2 Deduktion
Hier werden sämtliche hypothetisch möglichen Ursachen der aufgedeckten
Fehler sukzessive auf ihre Richtigkeit hin überprüft, wobei diese Hypothesen
Schritt für Schritt bis auf eine letzte verworfen werden. Die Fehlerkorrektur
wird anschließend anhand der Übereinstimmung von hypothetischer Ursache
und Fehlersymptom vorgenommen.
1.4.3 Rückverfolgung
Bei der Rückverfolgung wird der Quellcode des Programms, ausgehend von
der Fehlerstelle, in rückwärtiger Richtung untersucht, bis die Fehlerquelle iden-
tifiziert werden kann [/Trauboth93/197].
45
Sandini Bib
1.5 CASE-Werkzeuge
1.5 CASE-Werkzeuge
46
Sandini Bib
1.5.2 CASE-Plattform
Die CASE-Plattform, wie z.B. die SAP-ABAP/4 Development Workbench, bil-
det dabei den einheitlichen Integrationsrahmen, in den einzelne CASE-Werk-
zeuge nach Bedarf eingefügt werden können. [/Frick95/321] Weil die CASE-
Plattform Basisdienstleistungen zur Verfügung stellt, werden die einzelnen
CASE-Werkzeuge von diesen Dienstleistungen entlastet, d.h., diese Dienstleis-
tungen müssen selbst nicht noch einmal angeboten werden.
47
Sandini Bib
1.5 CASE-Werkzeuge
Mit den CASE-Plattformen realisiert man das Ziel, den Entwicklern eine einheit-
liche Benutzerschnittstelle für unterschiedliche Werkzeuge zur Verfügung zu
stellen. Darüber hinaus wird durch eine gemeinsame Verwaltung der Daten
echte Datenintegrität erreicht. Dann ist es nämlich möglich, dass verschiedene
Werkzeuge mit einem gemeinsamen Datenbestand arbeiten. Man bezeichnet
diese gemeinsame Datenbank als Repository oder Objekt-Management-System.
Somit wird es ermöglicht, dass Tool A nach Beendigung seiner Aufgabe Ergeb-
nisse zur Verfügung stellt, welche dem Tool B als Entwicklungsbasis dienen.
Die Endergebnisse des Tools B werden dann von Tool C weiterverarbeitet usw.
Schließlich ist zu den CASE-Plattformen noch zu sagen, dass es keinen allge-
meingültigen Standard für diese Plattformen gibt. Man kann also nicht davon
ausgehen, dass die CASE-Tools unterschiedlicher Hersteller auf einer CASE-
Plattform lauffähig sind.
1.5.3 CASE-Umgebung
»Eine CASE-Umgebung, auch Software-Entwicklungsumgebung genannt, be-
steht, zumindest konzeptionell, aus einer CASE-Plattform und mehreren darin
integrierten CASE-Werkzeugen. Sie ist eine organisatorische und computer-
unterstützte Arbeitsumgebung, die möglichst viele Tätigkeiten der Softwareer-
stellung (Entwicklung, Qualitätssicherung, Management) integriert unter-
stützt.« [/Balzert98/592]
Seit Anfang der 80er Jahre werden von Hard- und Softwareherstellern unter
dem Kürzel CASE eine Vielzahl von Programmen zur Unterstützung des Soft-
wareentwicklungsprozesses angeboten, so z.B. CATT.
CASE-Werkzeuge können in verschiedenen Werkzeugkategorien zusammen-
gefasst werden, je nachdem welche Schwerpunkte die Werkzeuge oder Werk-
zeugkombinationen bieten. Dabei lassen sich folgende Werkzeugkategorien un-
terscheiden:
◗ Upper CASE
◗ Lower CASE und
◗ I-CASE.
1.5.4 CASE-Werkzeugkategorien
Upper CASE
Dies ist die Bezeichnung für Werkzeuge, die eine »höhere« konzeptionelle Ana-
lyse- und Design-, aber auch Planungsmethode unterstützen. [/Himmler94/9]
Upper-CASE-Tools sind also Werkzeuge, welche in den ersten Phasen einer
Softwareentwicklung hilfreich sind. [/Balzert98/594]
48
Sandini Bib
Nach Bieberstein dienen diese Tools der Automatisierung von Analyse und Ent-
wurf. [/Bieberstein93/23] Diese Werkzeuge bieten grafische Unterstützung für
Organigramme, Datenflußpläne, Entscheidungstabellen sowie für die verschie-
denen Darstellungsmethoden im Rahmen dieser frühen Softwareentwicklungs-
phasen. [/Stahlknecht95/309] Die Upper-CASE-Tools sollen in den immer
komplexer werdenden Softwaresystemen die teuersten Fehler, also die Fehler in
der Analyse und Entwurfsphase, vermeiden helfen.
Upper-CASE-Werkzeuge werden heute im Allgemeinen mit dem Begriff CASE
in Verbindung gebracht und bilden den Kern für integrierte Entwicklungsum-
gebungen. Man nennt sie auch Frontend-CASE-Tools.
Lower CASE
Hier handelt es sich um eine niedrigere, maschinennahe werkzeugunterstützte
Implementierungsmethode. Entwicklungswerkzeuge, die in den späten Phasen
der Softwareentwicklung (Implementierung, Test, Einführung, Wartung und
Pflege) zum Einsatz kommen, werden in Anlehnung an einen von oben nach
unten dargestellten sequentiellen Phasenplan als niedere CASE-Werkzeuge be-
zeichnet. [/Schneider97/178] Diese Tools unterstützen das Editieren, Kompilie-
ren, Laden/Binden und Testen. Man spricht hier auch von Lower-CASE-Tools
oder Backend-CASE-Tools. [/Himmler94/138]
I-CASE
Auf dem Softwaremarkt sind bislang kaum Werkzeuge vorhanden, die den
gesamten Prozess der Softwareentwicklung vollständig abdecken. Deshalb
49
Sandini Bib
1.5 CASE-Werkzeuge
Technische Ziele
Mithilfe der CASE-Werkzeuge sollen die Fehlermöglichkeiten bei der Software-
entwicklung verringert sowie eine ausreichende Portabilität gewährleistet wer-
den. Man setzt Generatoren ein, um Arbeitsschritte zu eliminieren. Konsistenz-
und Redundanzüberprüfungen werden durch eingesetzte Methoden ermög-
licht. Darüber hinaus soll die Qualität der Dokumentation verbessert und die
Wiederverwendbarkeit erleichtert werden.
Wirtschaftliche Ziele
Die CASE-Tools sollen helfen, die Produktivität der Softwareentwicklung zu er-
höhen, den Wartungsaufwand zu senken, die Personenabhängigkeit zu verrin-
gern und auch die Flexibilität zu erhöhen. Dies soll Änderungen auch kurz vor
der Markteinführung noch ermöglichen.
Organisatorische Ziele
Mit dem Einsatz von CASE-Tools soll bei der Durchführung eines Softwareent-
wicklungsprojektes die Projektkoordination verbessert und die Flexibilität des
Personaleinsatzes erhöht werden.
Psychologische Ziele
Die Reduzierung von Routinetätigkeiten und die Förderung von kreativem Ar-
beiten lassen sich als psychologische Ziele des CASE-Einsatzes klassifizieren.
Fazit
Generelles Ziel von CASE und damit auch von CATT muss es sein, den Ent-
wickler nicht mit zusätzlichen Tätigkeiten zu belasten, sondern ihm die Routi-
netätigkeiten so weit wie möglich abzunehmen. Der Softwareentwickler soll
sich auf die kreativen Aspekte seiner Tätigkeit konzentrieren. Besonders zu be-
tonen ist, dass CASE nicht dazu führen darf, dass Softwareerstellung in »Soft-
ware-Bürokratie« ausartet. Der Verwaltungsaufwand muss wesentlich geringer
sein, als wenn man Software ohne CASE erstellt. [/Balzert98/597]
Daraus kann man also folgendes ableiten: »Unterm Strich soll mit CASE bzw.
mit CASE-Tools die Softwareentwicklung wirtschaftlicher und flexibler ge-
macht werden. Dabei soll der gesamte Entwicklungsprozess durchgängig abge-
wickelt und automatisiert werden – von der Planung bis zur Implementierung.«
[/Himmler94/9] CASE-Werkzeuge sollen also helfen. die gewünschten Ergeb-
nisse kostengünstiger und mit höherer Qualität zu erhalten.
50
Sandini Bib
1.5.7 Kritik
Man sollte aber bedenken: CASE ist kein Allheilmittel, sondern eine notwendi-
ge, aber nicht hinreichende Voraussetzung für erfolgreiche Softwareentwick-
lung. Denn »CASE löst nicht die Probleme einer Softwareerstellung. Ein guter
Softwareingenieur wird mit CASE schneller bessere Software erstellen. Ein
schlechter Softwareingenieur wird mit CASE in kürzerer Zeit noch mehr
schlechte Software erstellen.« [/Balzert98/597] Computergestützte Werkzeuge
allein reichen nicht aus, um dann »automatisch« Software hoher Qualität zu
51
Sandini Bib
1.6 Standardsoftware
1.6 Standardsoftware
1.6.1 Definition
Der Einsatz von Standardsoftware nimmt in den heutigen Unternehmen aller
Branchen und Größenordnungen kontinuierlich zu. Es handelt sich bei Stan-
dardsoftware um fertige Programmpakete, die aus einer Vielzahl von Program-
men bestehen und zusammen ein abgeschlossenes betriebliches Anwendungs-
gebiet abdecken. Diese Programmpakete wurden so entwickelt, dass sie einer
größeren Zahl von Anwendern für deren Aufgabenstellung genügen. Daraus
ergeben sich erhebliche Kostenvorteile und eine höhere Qualitätssicherheit.
1.6.2 Eigenschaften
Nach Stahlknecht weisen diese Programmpakete folgende Eigenschaften auf:
»Das Programmpaket übernimmt ein eindeutig definiertes betriebliches An-
wendungsgebiet, beispielsweise Fakturierung, Anlagenrechnung oder Perso-
nalabrechnung. Das Programmpaket bzw. die einzelnen Programme haben ei-
nen Festpreis für die Grundversion. Die Anpassung an die individuellen
betrieblichen Anforderungen wird nach Aufwand berechnet.«
Standardsoftware ist definitionsgemäß weitgehend branchenunabhängig. Auch
anwendungsorientierte Programme können in Form von Standardsoftware auf-
treten, werden dann jedoch meist als Standardanwendungssoftware bezeichnet.
Anwendungssoftware, welche auf die Anforderungen bestimmter Branchen zu-
geschnitten ist, wird als Branchensoftware bezeichnet. Man kann in diesem Kon-
text auch von sogenannten Branchenmodellen sprechen (auch »preconfigured
systems« genannt). Da bei den Merkmalen und im Auswahlprozess zwischen
Branchen- und Standardsoftware keine grundsätzlichen Unterschiede bestehen,
wird allgemein nur von Standardsoftware gesprochen. Standardsoftware für
branchenneutrale Anwendungen wird meist in Form modular aufgebauter, in-
tegrierter Pakete angeboten, wobei die einzelnen Module den betriebswirt-
schaftlichen Arbeitsgebieten Rechnungswesen, Logistik und Personalwirtschaft
entsprechen. [/Stahlknecht95/240]
1.6.3 Customizing
Die Standardsoftwareprogramme müssen in der Regel noch an die speziellen
Anforderungen des Unternehmens angepaßt werden. Für die Anpassung von
Standardsoftware an die betrieblichen Anforderungen, auch Customizing (engl.
»auf Maß anfertigen; Anpassung einer Standardsoftware auf die speziellen An-
forderungen des Kunden« [/Thome96/166]) genannt, gibt es im Wesentlichen
drei Möglichkeiten:
52
Sandini Bib
◗ Parametrisierung
◗ Konfigurierung
◗ Individualprogrammierung
Parametrisierung
Hier werden die gewünschten Funktionen des Programms durch das Setzen
von Parametern initialisiert. Als Voraussetzung wird hierfür benötigt, dass alle
erdenklichen Programmfunktionen in der Standardsoftware vorhanden sind.
Konfigurierung
Lediglich die gewünschten Programmbausteine werden bei der Konfigurierung
(wird auch als Modularisierung bezeichnet) in das Software-Paket aufgenom-
men. Die Generierung erfolgt per Computer durch Auswahl aus den vorhande-
nen Bausteinen.
Individualprogrammierung
Dies bedeutet, dass für die erforderlichen Anpassungen Software individuell er-
stellt wird. Die so modifizierte Standardsoftware wird den Kundenanforderun-
gen am besten gerecht, ist allerdings auch am teuersten.
Eine Alternative zur Adaption der Standardsoftware ist die Anpassung der Ab-
lauforganisation, z.B. durch eine Reorganisation der Geschäftsprozesse, die
auch eine Veränderung der Aufbauorganisation bewirken kann. In gleichzeiti-
gen Anpassungen sowohl der Standardsoftware als auch der betrieblichen Or-
53
Sandini Bib
1.6 Standardsoftware
Integration
Das R/3-System weist eine umfassende Funktionalität auf. Das Finanzwesen
beispielsweise profitiert von den Funktionen anderer Anwendungsbereiche wie
Einkauf, Vertrieb oder Personalwesen, von denen es seine Buchungsdaten be-
zieht. Die Integration der Anwendungen gewährleistet die Durchgängigkeit al-
ler Funktionen im System und damit auch im Unternehmen.
Internationalität
Mit dem R/3-System können Unternehmen, sowohl international tätige als
auch multinationale Konzerne, auf einem gemeinsamen Rechner die betriebli-
chen Abläufe unterschiedlicher Landesgesellschaften durchführen und länder-
übergreifende Vorgänge in einem System abwickeln.
54
Sandini Bib
Benutzeroberfläche
Die Benutzeroberfläche des R/3-Systems entspricht größtenteils der von MS-
Windows. Dies führt, verglichen mit dem R/2-System, welches noch nicht über
eine derartige Oberfläche verfügte, zu erheblich größerem Benutzerkomfort.
Modularer Aufbau
Das R/3-System ist in einzelne Module unterteilt. Jedes dieser Module besteht
seinerseits wieder aus einzelnen Komponenten und Subkomponenten. Die ver-
schiedenen R/3-Module können einzeln erworben werden; allerdings ist hier-
bei darauf zu achten, dass bestimmte Komponenten alleine nicht lauffähig sind.
55
Sandini Bib
Sandini Bib
Testumgebung in
SAP R/3-Systemen
2
2.1 ABAP/4 Development Workbench
57
Sandini Bib
2.1 ABAP/4 Development Workbench
ABAP
Die ABAP/4 Development Workbench basiert auf der Programmiersprache
ABAP. ABAP steht für Advanced Business Application Programming.
58
Sandini Bib
ABAP/4-Repository
Im R/3-Repository werden alle Entwicklungsobjekte wie z.B. ABAP-Module,
Screens, ABAP-Dictionary-Objekte, Datenmodelle und Berechtigungen zentral
abgelegt. Über das Informationssystem des Repositorys erhält der Entwickler
umfassende Auswertungsmöglichkeiten z.B. über die Verwendung von Daten.
Eine offene Repository-Schnittstelle stellt die Verarbeitung aller Repository-Ob-
jekte auch mit SAP-fremden Tools sicher.
ABAP/4-Dictionary
Das in die ABAP/4 Development Workbench integrierte ABAP/4-Dictionary
ist für den Entwickler die zentrale Informationsablage für Anwendungs- und
Sys-temdaten. Es ist ein so genanntes »aktives« Dictionary und ist als solches
vollständig mit den übrigen Entwicklungswerkzeugen in die Umgebung inte-
griert. D.h., es verwaltet zentral und aktiv alle anwendungsbezogenen be-
schreibenden Metadaten wie u.a. Tabellendefinitionen, interne Strukturen,
Felder und Bildschirmdaten. Informationen, die im ABAP/4-Dictionary ein-
gegeben werden, sind sofort im ganzen System verfügbar. Entsprechend den
im ABAP/4-Dictionary vorgenommenen Änderungen werden Daten im ge-
59
Sandini Bib
2.1 ABAP/4 Development Workbench
Im Programm wird nur die Tabelle SCARR (mit der Anweisung TABLES:
SCARR.) deklariert. Alle Informationen zu dieser Tabelle wie z.B. Feldnamen,
Datentypen und Feldlängen sind im ABAP Dictionary definiert und werden
von dort aus beim Generieren des Programms abgerufen.
Damit muss bei einer Änderung der Tabelle, zum Beispiel bei der Veränderung
der Länge eines Tabellenfeldes, der Quelltext des Programms nicht angepasst
werden. Beim nächsten Aufruf des Programms wird in diesem Fall automatisch
festgestellt, dass sich die Struktur der Tabelle SCARR verändert hat. Das Pro-
gramm wird dann einfach neu generiert und ruft damit die aktuellen Informa-
tionen zur Tabelle SCARR aus dem ABAP Dictionarys ab. Während der Arbeit
an Entwicklungsprojekten können Objekte des ABAP Dictionary mehrfach ver-
ändert werden, bevor sie aktiviert und damit den operativen Komponenten des
Systems zur Verfügung gestellt werden. Objekte können also zum gleichen Zeit-
punkt in einer aktiven und in einer inaktiven (überarbeiteten) Version im ABAP
Dictionary vorhanden sein. Die inaktiven ABAP Dictionary-Objekte beeinflus-
sen das Laufzeitsystem (ABAP Prozessor, Datenbankschnittstelle) nicht. Damit
können größere Änderungen an mehreren Objekten durchgeführt werden,
ohne die Lauffähigkeit des Systems zu beeinträchtigen. Wenn alle Objekte geän-
dert sind, können sie dann gemeinsam aktiviert werden. Bei der Aktivierung ei-
nes ABAP Dictionary Objekts wird die Konsistenz dieses Objekts zu den bereits
aktiven Objekten geprüft. Ist keine Konsistenz gegeben, wird die Aktivierung
nicht durchgeführt.
60
Sandini Bib
in der das Dynpros abgefasst ist, oder die Form der Darstellung, ob es sich also
um ein Dialogfenster, ein Selektionsbild oder einen Eingabebildschirm handelt.
Die Dynpros des R/3-Systems sind dreistufig aufgebaut. Dieser Konstruktion
entsprechend unterstützt der Screenpainter folgende drei Aufgabenbereiche:
◗ Erfassen der Ablauflogik des Dynpros
◗ Festlegen der Feldeigenschaften des Dynpros
◗ Anordnen von Feldbezeichnungen
Durch die Verwendung des Menüpainters können die vom Programm erzeug-
ten Funktionen bestimmten Drucktasten oder Funktionstasten zugeordnet wer-
den. Sie können unter Zuhilfenahme dieses Werkzeugs auch definierten Menüs
zugewiesen werden.
ABAP/4-Workbench-Organizer
Der Workbench-Organizer unterstützt die systematische, schrittweise Vorge-
hensweise im Anwendungsentwicklungsprojekt. Der Stand der Anwendungs-
entwicklung wird hier sorgfältig koordiniert und dokumentiert. Die Entwick-
lungsobjekte werden von einem Versionsmanager verwaltet, ebenso die damit
verbundenen Korrekturen und Änderungen. Mithilfe des Transportwesens
können Entwicklungsobjekte aus der Testumgebung in die Produktivumge-
bung transportiert werden.
ABAP/4-Editor
Der Editor ist das Werkzeug, mit dem ABAP/4-Programme erstellt und getestet
werden. Zusätzlich können damit Funktionsbausteine, Dynproablauflogiken
61
Sandini Bib
2.1 ABAP/4 Development Workbench
ABAP/4-Data-Modeller
Der Data-Modeller ist ein Tool, mit dem Datenmodelle erstellt werden können.
Dieses Werkzeug unterstützt den Programmierer sowohl beim Design von Da-
tenbanktabellen für eigene Anwendungen als auch beim Verständnis der kom-
plexen Strukturen der R/3-Anwendungen.
ABAP/4-Query
Die ABAP/4-Query erlaubt es, ABAP/4-Reports zu erstellen, die im Standard
der R/3-Funktionalität noch nicht enthalten sind. Mithilfe der Queries können
im Speziellen auch Anwender, die weder Kenntnisse der ABAP/4-Program-
miersprache haben noch die Namen von Feldern und Tabellen kennen, eigene
einfache Auswertungen definieren. Dabei muss der Anwender lediglich die Be-
dingungen formulieren, die er an die jeweils erwünschte Auswertung stellt. Auf
der Basis dieser Angaben wird der Report, der z.B. eine entsprechende Liste lie-
fert, dann vom System automatisch generiert. Darüber hinaus besteht mittels
der Queries die Möglichkeit, Module anzupassen, Erweiterungen zu beschrei-
ben oder so genannte »Dynpros« (dynamische Programme) zu entwickeln.
Die Funktionalität eines Queries kann insbesondere im Bereich der Erstellung
von Ranglisten, Grundlisten und Statistiken genutzt werden. An den Funktions-
umfang eines klassischen ABAP/4-Reports reicht ein Query jedoch nicht heran.
Funktionsbibliothek
Mithilfe der Funktionsbibliothek können verschiedenste Funktionsbausteine er-
stellt und verwaltet werden. Funktionsbausteine sind universell einsetzbare,
wiederverwendbare Programmeinheiten. Diese Bausteine werden in der Funk-
tionsbibliothek verwaltet, die mit einer komfortablen Suchfunktion ausgestattet
ist. Die dort verwalteten und dokumentierten betriebswirtschaftlichen Funkti-
onsbausteine und Programmierhilfen lassen sich einfach in neue Entwicklungs-
objekte integrieren. Zusammen mit den R/3-Entwicklungs-werkzeugen wer-
den von der SAP AG bereits eine Vielzahl vorgedachter betriebswirtschaftlicher
Funktionen in fertigen Funktionsbausteinen ausgeliefert, welche leicht in indi-
viduell erstellte Programme übernommen werden können. Der größte Teil der
Funktionsbausteine bildet viele Anwendungsfunktionen ab, die systemweit
nutzbar sind. Die Verwendung dieser leistungsfähigen Bibliothek kann dem-
nach dazu beitragen, die Programmierzeit erheblich zu verkürzen.
Im Wesentlichen haben Funktionsbausteine folgende Eigenschaften:
◗ Funktionbausteine besitzen eine klar abgegrenzte Datenschnittstelle.
◗ Funktionsbausteine können über Remote Function Calls (RFC) systemüber-
greifend aufgerufen werden.
◗ Funktionsbausteine werden, wie bereits erwähnt, in einer Funktionsbiblio-
thek verwaltet.
62
Sandini Bib
Report Builder
Der Report Builder besteht aus einem interaktiven Werkzeug für die Bearbei-
tung von Listen und zur Berichtserstellung. Berichte können in einer Baum-
struktur hierarchisch abgelegt werden.
63
Sandini Bib
2.1 ABAP/4 Development Workbench
Im Einzelnen lassen sich die Funktionen des Debuggers wie folgt zusammenfas-
sen:
◗ Auswahl unterschiedlicher Debugger-Einstellungen
◗ Auswahl unterschiedlicher Ausführungsarten im Debugger
◗ Anzeige des Quelltext-Ausschnitts
◗ Setzen und Löschen von dynamischen Breakpoints
◗ Setzen und Löschen von Watchpoints
◗ Anhalten eines Programms bei einer bestimmten Anweisung, einem Ereig-
nis, Unterprogramm oder einem Funktionsbaustein.
◗ Anzeigen und Ändern von Feldinhalten zur Laufzeit
◗ Anzeige für ABAP-Objekte
◗ Verzweigen zum ABAP Editor oder zum Repository Browser, um Änderun-
gen am Quelltext vorzunehmen
Laufzeitanalyse
Die Laufzeitanalyse dient zur Optimierung des Laufzeitverhaltens eines Pro-
gramms. Mit der Funktion »Laufzeitanalyse« kann man die Performance aller
Transaktionen oder Programme analysieren, die in der ABAP/4 Development
Workbench angelegt wurden. Die Laufzeitanalyse erzeugt Listen, die laufzeit-
intensive Anweisungen aufdecken, Tabellenzugriffe zusammenfassen und die
Hierarchie des Programmablaufs zeigen. Anhand dieser Informationen ist es
möglich, Probleme zu entdecken und anschließend zu analysieren, die folgende
Ursachen haben:
◗ zu häufige Verwendung oder unnötiger Aufruf von Modularisierungseinhei-
ten (z.B. Unterprogramme oder Funktionsbausteine) und ABAP-Anweisungen
◗ CPU-intensive Programmfunktionen
◗ benutzereigene Funktionen, die durch ABAP-Anweisungen ersetzt werden
können
◗ ineffiziente und überflüssige Datenbankzugriffe
Die Laufzeitanalyse ist besonders für das Tuning einzelner Transaktionen und
Programme bestimmt. Ist man nur an den Datenbankzugriffen eines Pro-
gramms interessiert oder sind umfangreichere Tuning-Maßnahmen auf Daten-
bankebene durchzuführen, sollte man die Funktion »SQL Trace« benutzen, wel-
che nachstehend beschrieben wird.
Systemprotokolle
Der Server des SAP-Systems zeichnet alle Ereignisse und Probleme, die sich aus
dem laufenden Systembetrieb ergeben, in so genannten »Systemprotokollen«
64
Sandini Bib
auf. Man unterscheidet dabei zwei Arten der Protokollierung: zum einen die lo-
kale und zum anderen die zentrale Protokollierung. Jeder SAP-Anwendungs-
server verfügt über ein lokales Protokoll, welches die jeweiligen von diesem Ser-
ver ausgegebenen Meldungen enthält. Diese Anwendungsserver können auch
mit zentraler Protokollierung arbeiten. Dabei werden alle lokalen Protokolle ei-
nes jeden Anwendungsservers in ein zentrales Protokoll kopiert.
Anhand der Systemprotokolle kann das Input-/Outputverhalten von Program-
men detailliert überprüft werden. Man kann z.B. nachvollziehen, mit welchen
Werten Import- und Exportparameter versorgt worden sind.
SQL-Trace
Die SQL-Trace-Funktion ermöglicht es dem Benutzer, für einen Anwender oder
für das Gesamtsystem die Datenbankaufrufe von Reports und Transaktionen zu
protokollieren und zu analysieren. Der SQL-Trace zeigt dazu z.B., welche SQL-
Anweisungen eine CATT-Anwendung ausführt oder welche Werte das System
für bestimmte Datenbankzugriffe und -änderungen benutzt. Der SQL-Trace
protokolliert darüber hinaus alle R/3-Programme und Transaktionen auf der
Datenbankebene. Zwischen der Aktivierung und Deaktivierung der Trace-
Funktion werden alle Vorgänge auf der Datenbank aufgezeichnet, die für einen
bestimmten Benutzer oder ein komplettes System stattfinden. In diesem Kon-
text kann die SQL-Trace-Funktion dazu benutzt werden, Erklärungen zu be-
stimmten Oracle- oder auch zu bestimmten Informix-Datenbankanweisungen
anzuzeigen. Nimmt man weitere Funktionen zu Hilfe, so erhält man zu be-
stimmten Datenbankanweisungen detaillierte Informationen.
Computer Aided Test Tool – CATT
Das Computer Aided Test Tool, auch abgekürzt CATT genannt, ist ein in die
65
Sandini Bib
2.1 ABAP/4 Development Workbench
möglich, vom Einstiegsbild oder vom Class Editor aus auf die Testumgebung
zuzugreifen.
Den Class Builder ruft man auf, um
◗ sich mithilfe des Class Browsers einen Überblick über vorhandene globale
Objekttypen und deren Beziehungen untereinander zu verschaffen.
◗ zur Pflege der vorhandenen globalen Klassen oder Interfaces zu verzweigen.
◗ neue Klassen oder Interfaces anzulegen.
◗ Attribute, Methoden und Ereignisse zu Klassen oder Interfaces anzulegen
und zu spezifizieren.
◗ klasseninterne Typen zu definieren.
◗ Methoden zu implementieren.
◗ lokale Hilfsklassen zu pflegen.
◗ Klassen oder Interfaces in einer simulierten Laufzeitumgebung zu testen.
Das Werkzeug Class Builder ermöglicht die Pflege von globalen ABAP-Klassen
und -Interfaces. Diese beiden Objekttypen werden ähnlich wie globale Datenty-
pen im ABAP Dictionary definiert und bilden so eine zentrale R/3-Klassenbi-
bliothek. Sie sind demnach im gesamten System sichtbar. Eine Navigation über
bereits vorhandene Klassen und Interfaces aus dieser Bibliothek wird mit dem
Class Browser vorgenommen
Das Werkzeug Class Browser dient zur Navigation in der R/3-Klassenbibliothek,
in der globale ABAP-Klassen und -Interfaces oder Business-Objekttypen abge-
legt sind.
Man öfffnet den Class Browser,
◗ um sich einen Überblick über den Bestand vorhandener Klassen und Inter-
faces oder Business-Objekttypen zu veschaffen.
◗ um die Beziehungen der Objekttypen untereinander zu analysieren.
◗ um aus dieser Übersicht heraus zur Pflege einzelner Objekttypen zu gelangen.
Der Class Browser ist im Class Builder intergriert und wird dort über die Funkti-
on Class Browser oder mit der Transaktion CLABAP aufgerufen.
Für die Anzeige der Klassen und Interfaces können zusätzlich zu bereits vor-
konfigurierten Sichten unterschiedliche Filter berücksichtigt werden:
◗ AlleKlassen
Sicht auf alle Klassen und Interfaces der R/3-Klassenbibliothek, bezogen auf
die Komponentenhierarchie
◗ Business-Objekte
Anzeige von betriebswirtschaftlichen Objekttypen der R/3-Klassenbibliothek.
66
Sandini Bib
3
3.1 CATT-Historie
Die Entwicklung von Software, welche höchsten Qualitätsansprüchen wie z.B.
der in Europa führenden Qualitätsnorm bei der Softwareentwicklung, ISO 9000-
3, genügt, muss von ausführlichen und intensiven Tests begleitet werden. Um
dieser wichtigen Anforderung Rechnung zu tragen, hat die SAP AG das Test-
werkzeug Computer Aided Test Tool, kurz CATT, entwickelt.
Ein Prototyp dieses CATT-Tools sorgte bereits im Jahre 1992 auf dem SAP-Ba-
sis-Kongress in Karlsruhe für erhebliches Aufsehen.
Ursprünglich entwickelte die SAP AG CATT als Qualitätssicherungswerkzeug
zum unternehmensinternen Testen der Prozessflüsse im R/3-System im Rah-
men des SAP-Softwareengineerings.
Basierend auf den sehr guten Erfahrungen, welche die SAP AG beim Einsatz
dieses Testwerkzeugs machte, und vor allem auch aufgrund der äußerst positi-
ven Kundenresonanz, überarbeitete die SAP AG CATT nochmals und gab es
dann Ende 1995 zur Auslieferung an die Kunden frei. Mit dem R/3-Release 3.0
lieferte man CATT erstmals als integrierten Bestandteil der ABAP/4-Develop-
ment-Workbench an die Kunden aus. Seither wurde das CATT-Tool ständig
weiterentwickelt und optimiert. Das Werkzeug ist heute als integraler Bestand-
teil eines jeden neuen R/3-Releases bereits an dessen Funktionen angepasst.
CATT bildet nun das zentrale Testwerkzeug zum Testen aller Prozesse inner-
halb von R/2- und R/3-Systemen. Dies gilt sowohl für SAP-eigene Systeme als
auch für die verschiedenen Kundensysteme.
67
Sandini Bib
3.2 Genereller Überblick
3.2.1 Funktionsüberblick
CATT enthält alle erforderlichen Funktionen, um Testbausteine für einzelne
Transaktionen sowie Testabläufe für dynamische betriebswirtschaftliche oder
administrative Prozesse innerhalb des R/3-Systems darzustellen, zu starten, zu
testen, zu verwalten und zu protokollieren.
Diese betriebswirtschaftlichen Prozesse können einerseits auf einzelne Transak-
tionen bzw. auf ein R/3-Modul beschränkt sein (Funktionalorientierung); es
können andererseits aber natürlich auch betriebswirtschaftliche Prozesse aufge-
zeichnet werden, welche sich über mehrere R/3-Applikationen hinweg erstrek-
ken (Prozessorientierung).
Der Einsatz des Computer Aided Test Tools reduziert durch diese Automatisie-
rung der Testabläufe die Anzahl der aufwendigen manuellen Tests maßgeblich
und zwingt darüber hinaus zur Systematisierung der verschiedenen Tests
durch einen exakt definierten Input mit einem planbaren Testergebnis. Dadurch
können detaillierte Rückschlüsse auf die Qualität des Systems gezogen werden.
Außerdem können durch den Einsatz von CATT manuelle Testaktivitäten wäh-
rend des eigentlichen Testzeitraumes erheblich eingeschränkt werden. Mit der
allgemeinen Verfügbarkeit einer R/3-Version lassen sich die Tests über CATT-
Funktionen innerhalb von wenigen Tage durchführen.
CATT bietet dem Anwender dabei folgende Einsatzmöglichkeiten:
◗ Prüfen von Transaktionen
◗ Aufbau von Stammdaten
◗ Aufbau von Schulungsdaten
◗ Testen von betriebswirtschaftlichen Prozessketten
◗ Prüfen von Systemmeldungen
◗ Prüfen von Wertermittlung und Datenbankfortschreibung
◗ Einstellen von Customizing-Tabellen. Diese Möglichkeit ist vor allem dann
von Vorteil, wenn spezielle Testfälle nur ein temporäres Customizing erfor-
dern.
◗ Prüfen von Reaktionen auf Änderungen der Customizing-Einstellungen
◗ Verbindung von SAP Business Workflow und CATT
68
Sandini Bib
69
Sandini Bib
3.2 Genereller Überblick
70
Sandini Bib
71
Sandini Bib
3.2 Genereller Überblick
72
Sandini Bib
4
Das Computer Aided Test Tool wird, wie bereits erwähnt, bei der SAP AG in-
nerhalb der Softwareentwicklung eingesetzt. Darüber hinaus kann bzw. soll es
natürlich auch bei den SAP R/3-Endkunden Verwendung finden.
Nachfolgend soll zunächst geschildert werden, wie dieser Einsatz von CATT bei
der SAP AG aussieht, bevor anschließend ausführlich beschrieben wird, wie das
CATT beim SAP R/3-Endkunden als integrales Element des SAP R/3-Projektes
eingesetzt, bzw. wie das CATT in die verschiedenen Vorgehensmodelle zur
Durchführung von SAP R/3-Projekten eingebettet werden kann.
Die SAP AG selbst verwendet CATT neben dem Debugger intern während des
gesamten Zyklus der Softwareerstellung und Wartung. Bei den neuen Releases
arbeiten die CATTs in den Entwicklungs-, Konsolidierungs-, Test-, Endmonta-
ge- und Kundenauslieferungssystemen; bei neuen Upgrade Levels in den Kor-
rektur- und Testsystemen sowie den Kundenauslieferungssystemen. Die klassi-
sche Softwareentwicklung bei der Entwicklung von SAP R/3-Anwendungen
mithilfe der ABAP/4 Development Workbench wird durch die bereits beschrie-
benen Programmiertools unterstützt. Von der Vorstudie bis hin zur implemen-
tierten Anwendung werden alle an einem Softwareentwicklungsprojekt betei-
ligten Mitarbeiter und Objekte konzeptionell erfasst. Dadurch ist eine
strukturierte und ökonomische Softwareentwicklung gewährleistet. Die Festle-
gung der einzelnen Phasen soll keine feste Vorgabe für das Gesamtprojekt sein,
sondern in sich abgeschlossene Teilprojekte gliedern.
In der konzeptionellen Phase werden die Ergebnisse der Vorstudien und Analy-
sen in das Unternehmensdatenmodell (UDM) der SAP AG eingefügt. Anschlie-
ßend findet dann die Umsetzung der Daten aus dem UDM in Felder, Tabellen
usw. statt. Die Entwicklung der einzelnen Programmkomponenten wie Bild-
schirmoberfläche, ABAP/4 usw. erfolgt in beliebiger zeitlicher Reihenfolge. Sie
müssen erst zum Ende der Anwendungsentwicklung zusammengefügt werden.
Da diese Modularisierung der Programmentwicklung unabhängige Einzeltests
73
Sandini Bib
CATT als integrales Element der R/3-Einführung
erlaubt, wird ein iteratives Prototyping unterstützt, das die Effizienz und Quali-
tät der Softwareentwicklung durch die frühe Einbeziehung der Endanwender in
den Entwicklungszyklus erhöht. Man spricht hier auch vom so genannten »Ear-
ly-Prototyping«. Abschließende Programmtests und die sich anschließende
Überführung in das Produktivsystem runden den Entwicklungszyklus ab und
schaffen zugleich die Basis für künftige Erweiterungen.
Bei der Einführung einer Standardanwendungssoftware ist, wie die Erfahrun-
gen aus der Praxis zeigen, in der Regel ein sehr langer, arbeitsintensiver und
schwieriger Weg zu absolvieren, bis die vielfältigen Möglichkeiten der Software
und die verschiedensten Bedürfnisse des Unternehmens in optimaler und zu-
friedenstellender Weise aufeinander abgestimmt sind. Erst dann kann das Sys-
tem in den Produktivbetrieb übergehen. Unternehmen, die neu mit der Einfüh-
rung von Softwaresystemen konfrontiert sind, benötigen daher ein spezielles
Projektmanagement für die Einführung der Software.
Als Basis für diese Einführungsprojekte diente bisher entweder das traditionelle
SAP-Vorgehensmodell oder die seit einiger Zeit angewandte, neuere ASAP
(Accelerated-SAP)-Einführungsmethodik. Diese Ansätze wurden von der SAP
entwickelt und haben daher den Vorteil, dass alles, was in einem SAP R/3-Pro-
jekt an Aufgaben zu bewältigen ist, vollständig und präzise dargestellt wird. Als
alternativer Ansatz steht darüber hinaus mit dem DSDM-basierten Vorgehens-
modell ein dynamisches Vorgehensmodell zur Durchführung von SAP R/3-
Projekten zur Verfügung.
In den vorangegangen Kapiteln wurde bereits ausführlich auf die Wichtigkeit
des Testens und folglich auch auf die besonderen Möglichkeiten des Computer
Aided Test Tools eingegangen. Im Mittelpunkt des folgenden Kapitels wird da-
her nun die Fragestellung stehen, ob bzw. wie das CATT in die verschiedenen
Vorgehensmodelle, auf denen eine SAP R/3-Einführung basieren kann, inte-
griert werden kann.
Hierzu sollen die verschiedenen Vorgehensmodelle in der Reihenfolge ihrer
Entstehung betrachtet werden. Zunächst wird kurz auf das traditionelle SAP-
Vorgehensmodell und auf ASAP eingegangen, bevor das dynamische, DSDM-
basierte Vorgehensmodell ausführlicher behandelt und die besondere Stellung
des CATTs für dieses Vorgehensmodell erläutert wird. Bei dieser Gelegenheit
soll auch kurz auf das Iterative Prozess-Prototyping (IPP) eingegangen werden,
das zwar kein Vorgehensmodell beschreibt, wohl aber eine Methode zur Ge-
schäftsprozessanalyse ist, in deren Mittelpunkt die Integration verschiedener
SAP-eigener Werkzeuge steht und demnach sehr gut um CATT erweitert wer-
den könnte.
Zunächst soll aber unser Interesse den am weitesten verbreiteten und in zahlrei-
chen SAP-Projekten eingesetzten Vorgehensmodellen gelten.
74
Sandini Bib
75
Sandini Bib
4.1 Das traditionelle SAP-Vorgehensmodell
Abbildung 4.1
Das traditionelle SAP-Vorgehensmodell
In der ersten Phase, also der Organisations- und Konzeptionsphase, werden all-
gemeine Vorarbeiten durchgeführt, und es wird ein praktikables Einführungs-
konzept erarbeitet wie z.B.:
◗ Projekt initialisieren
◗ Unternehmensziele des R/3-Einsatzes definieren
◗ Anforderungsanalyse
◗ Bestandsaufnahme der im R/3-System abzubildenden Prozesse und Funk-
tionen
◗ Projektplanung und -organisation
◗ Durchführung des Kick-Off-Meetings
◗ Grobdesign
◗ Systeminstallation
◗ Entwurf von Schnittstellen und Systemerweiterungen
◗ Schulungen der Projektmitglieder
◗ Prozesse und Funktionen festlegen
76
Sandini Bib
77
Sandini Bib
4.1 Das traditionelle SAP-Vorgehensmodell
◗ Produktivsetzung vorbereiten
◗ Anwenderdokumentation entwickeln
◗ Produktivumgebung einrichten
◗ Anwender schulen
◗ Systemorganisation organisieren
◗ Datenübernahme ins Produktivsystem
◗ Durchführung Systemtest
◗ Qualitätsprüfung Produktivsystem
Das Endergebnis dieser Phase ist ein eingerichtetes Produktivsystem. In der Re-
gel existiert bei einem Einführungsprojekt eine so genannte »Doppelinstallati-
on«. Dies bedeutet, dass sowohl ein Testsystem als auch ein Produktivsystem
vorhanden sind. Dabei ist das R/3-System, in dem die Echtdaten von den Fach-
abteilungen bearbeitet und gespeichert werden, das Produktivsystem. Im Test-
system werden dagegen neue Einstellungen, eigenentwickelte bzw. abgeänder-
te Transaktionen, Auswirkungen von Customizing-Änderungen, neue Puts
und eigene Zusatzprogramme (Add ons) getestet. Bei der Verwendung eines
Testsystems sowie eines Produktivsystems werden u.a. Berechtigungen, Be-
rechtigungsprofile, Berichte und Altdaten in das Produktivsystem überspielt.
Das Ergebnis der Produktvorbereitung ist ein geprüftes, produktives System.
Nun tritt die Phase Produktivbetrieb ein. Nach der Altdatenübernahme können
die entsprechenden Aktivierungsprogramme gestartet werden. Der Echtlauf
wird nach erfolgreichem Produktionsstart noch für eine gewisse Zeit vom Pro-
jektteam begleitet. Dabei wird das R/3-System optimiert. Hierbei sind folgen-
den Aktivitäten auszuführen:
◗ Betreuung der Anwender
◗ permanente Help-Desk-Betreuung sicherstellen
◗ Systemnutzung optimieren
◗ Feinplanung
◗ Projektstatus ermitteln
◗ Veranlassung von Korrekturmaßnahmen
◗ Durchführung von Projektbesprechungen
In der phasenübergreifenden Aktivität »Systemwartung und Release-Wechsel«
sind folgende Arbeitspakete durchzuführen:
◗ System-Upgrade bzw.- Release-Wechsel durchführen
◗ Release-Customizing durchführen
78
Sandini Bib
79
Sandini Bib
4.1 Das traditionelle SAP-Vorgehensmodell
Durch die Verwendung des Computer Aided Test Tools bei der Einführung der
R/3-Software können durch die Automatisierung und Wiederholbarkeit der
verschiedenen Bausteine und Abläufe sowohl beim klassischen Vorgehensmo-
dell als auch bei der anschließend geschilderten ASAP-Einführungsmethodik
Zeit- und Kostenressourcen in erheblichem Umfang geschont werden.
Die besondere Stärke dieses Vorgehensmodells ist die sehr detaillierte Beschrei-
bung all dessen, was in einem SAP R/3-Einführungsprojekt an Aufgaben zu be-
wältigen ist. Es wird jedoch nicht beschrieben, welche Werkzeuge zur Bearbei-
tung dieser Aufgaben genutzt werden können, obwohl die SAP mit dem R/3-
System sehr viele darin integrierte Werkzeuge ausliefert.
Eine Zuordnung der einzelnen Werkzeuge zu bestimmten Tätigkeiten soll je-
doch im Folgenden nicht Thema unseres Buches sein, vielmehr sollen die Pha-
senaktivitäten des Testens mit Blick auf die Möglichkeit der Werkzeugunter-
stützung bzw. auf ihr Automatisierungspotential hin durchleuchtet werden.
Dass CATT sehr sinnvoll zum Testen von Geschäftsprozessen im R/3-System
angewendet werden kann, wurde bereits in aller Ausführlichkeit gezeigt. Um
zu überprüfen, ob bzw. wie CATT mit dem traditionellen SAP-Vorgehensmo-
dell bzw. mit ASAP in Einklang zu bringen ist, soll nun untersucht werden, wel-
che Phasenaktivitäten sich innerhalb dieses Modells überhaupt mit dem Testen
auseinandersetzen bzw. in welchen Phasen und Arbeitspaketen CATT einge-
setzt werden kann.
Überprüft man das traditionelle SAP-Vorgehensmodell daraufhin, welche Test-
aktivitäten beschrieben werden, so fällt insbesondere die Phasenaktivität »Ab-
schlusstest durchführen« innerhalb der Phase »Detaillierung und Realisierung«
auf, in der die umfangreichsten Testaktivitäten beschrieben werden. Die Ar-
beitspakete dieser Phasenaktivität lauten:
◗ Testkonzept erstellen
◗ Testplan erstellen
◗ Testaktivitäten durchführen
◗ Bericht zum Abschlusstest durchführen
◗ Abschlussreview mit den Fachabteilungen durchführen
Innerhalb dieser Arbeitspakete erfolgt eine sehr detaillierte Beschreibung all
dessen, was zu tun ist. Eine Empfehlung jedoch, wie die Tests durchzuführen
sind, erfolgt nur bezüglich der Testdokumentation, nicht aber bezüglich des ei-
gentlichen Tests. Als Dokumentationsunterstützung werden die Werkzeuge
»ARIS-Toolset« und »Visio Business-Modeler« empfohlen. Die eigentlichen
Testwerkzeuge »CATT« und die »Testworkbench« werden nicht genannt, und
folglich werden auch keine Hinweise zur Durchführung gegeben.
80
Sandini Bib
Wie das Testen im Allgemeinen vor sich gehen sollte, wird sehr ausführlich be-
schrieben. Als Beispiele sollen hier zwei Arbeitspakete betrachtet werden [vgl.
/SAP Online-Hilfe/], die prädestiniert für den Einsatz der Testworkbench (Pha-
senaktivität »Testplan erstellen«) und den Einsatz des CATTs (Phasenaktivität
»Testaktivitäten durchführen«) sind.
Testplan erstellen:
1. Erstellen Sie auf der Basis des Testkonzepts einen Testplan.
Dieser Testplan sollte für alle Beteiligten transparent aufzeigen, wann und in welchem
Umfang jeder einzelne am Test beteiligt ist. Ebenfalls sind auch die Abstimm-Meetings
und die Review-Meetings mit den Fachabteilungen in die Planung mit einzubeziehen
(siehe Projektaktivität »Abschlussreview mit den Fachabteilungen durchführen«).
Besonders zu beachten bei der Planung, sind Abhängigkeiten der einzelnen Prozesse/
Funktionen.
Dokumentieren Sie diese Planung in entsprechenden Arbeitsblättern und legen Sie diese
in der Mappe »Allgemein« unter »Sonstiges« ab.
2. Informieren Sie alle Testbeteiligten über die Vorgehensweise und den Testplan.
Diese Information sollte frühzeitig in einer gemeinsamen Veranstaltung mit allen Test-
beteiligten erfolgen, so dass rechtzeitig alle Personen über die Vorgehensweise und den
Testplan informiert sind.
3. Organisieren Sie die für den Test erforderlichen Ressourcen (Räume, PCs, Arbeits-
81
Sandini Bib
4.1 Das traditionelle SAP-Vorgehensmodell
82
Sandini Bib
(z. B. das Erzeugen einer Liste bestimmter Kunden, das Ändern der Anschrift ei-
nes Kunden etc.) dar. Aus Sicht der Dialogprogrammierung ist sie ein komple-
xes Objekt, das aus einem Modulpool und verschiedenen Dynpros besteht und
mit einem Transaktionscode aufgerufen wird. Nach der Anmeldung im R/3-Sys-
tem werden drei Ebenen voneinander unterschieden: die SAP-Ebene, die Ar-
beitsgebietsebene und die Anwendungsebene. Eine Transaktion ist eine An-
wendung auf Anwendungsebene. Um auf das Einstiegsbild einer Anwendung
zu gelangen, kann man durch die Menühierarchie navigieren oder einen vier-
stelligen Transaktionscode im Befehlsfeld eingeben. Die Verwendung des
Transaktionscodes erspart das Navigieren durch die verschiedenen Menüs und
bringt den Benutzer direkt zum Einstiegsbild.
Transaktionen werden einerseits von der SAP AG selbst programmiert (vor der
Auslieferung des R/3-Systems an den Kunden) oder andererseits vom Kunden
selbst erstellt bzw. nach seinen Anforderungen verändert. Standardtransaktio-
nen sowie kundenspezifisch veränderte Transaktionen können durch CATT
während ihrer Entwicklung getestet werden. Wenn an einem R/3-System ein
Upgrade durchgeführt, d.h., eine neue, höhere Releaseversion eingespielt wur-
de, können diese Transaktionen erneut getestet werden. Wenn nun das R/3-Sys-
tem z.B. vom Entwicklungsmandanten in den Testmandanten überführt wird,
ist es notwendig, festzustellen, ob die Transaktionen auf dem neuen System
überhaupt lauffähig sind. Aus diesem Grund werden die einzelnen Transaktio-
nen erneut getestet. Anstatt alle Transaktionen manuell durchzuspielen, also
Dynpro für Dynpro mit »Enter« zu bestätigen, ist es sinnvoll, dies anhand von
83
Sandini Bib
4.1 Das traditionelle SAP-Vorgehensmodell
ternen Dateien, wie z.B. Excel-Tabellen Datensätze per CATT automatisiert ins
R/3-System einzulesen und zu verarbeiten. Dies senkt den Arbeitsaufwand bei
der Altdatenübernahme in erheblichem Maße, wie die Erfahrungen beim prak-
tischen Einsatz des Tools gezeigt haben. Voraussetzung hierfür ist allerdings,
dass die zu übernehmenden Altdaten bereits detailliert und zuverlässig mittels
eines Tabellenkalkulationsprogrammes aufbereitet wurden und in einer von
CATT lesbaren Form vorliegen.
In diesem Zusammenhang wird auf Kapitel 8 verwiesen. Dort wird die Vorge-
hensweise zur Einbindung von Daten aus externen Excel-Dateien in CATT-Ab-
läufe detailliert beschrieben.
Mittels entsprechender CATT-Abläufe können natürlich auch Stammdaten je-
der Art im R/3-System neu generiert werden. Falls für einen Integrationstest
100 Materialien benötigt werden, muss lediglich der CATT-Ablauf »Material
anlegen« einhundertmal durchlaufen werden. Bezogen auf den Aufwand, der
sich beim manuellen Anlegen dieser 100 Materialien ergeben würde, bedeutet
diese Automatisierung durch CATT eine erhebliche Erleichterung.
Zudem bietet diese Art der Datenübernahme ein hohes Maß an Datensicherheit.
»Datensicherheit« bedeutet in diesem Zusammenhang, dass bei der Datenüber-
nahme die manuelle Eingabe simuliert wird, also wie bei einem Batch Input alle
Eingabemasken durchlaufen und alle Integritätsprüfungen durchgeführt wer-
den.
Abschlusstest durchführen
Die Phasenaktivität Abschlusstest durchführen ist eine Aktivität des traditionellen
SAP-Vorgehensmodells, die eine der umfangreichsten Aufgaben im Bereich des
Testens darstellt. Wie bereits oben gezeigt wurde, wird für diese wichtige Akti-
84
Sandini Bib
85
Sandini Bib
4.1 Das traditionelle SAP-Vorgehensmodell
86
Sandini Bib
gabe erfordert wiederum die Belegnummer des Angebots usw. Mit den Mög-
lichkeiten von CATT könnte man jetzt beim Modultest z.B. den funktionalen be-
triebswirtschaftlichen Prozess »Anfrage anlegen, Angebot anlegen, Auftrag
anlegen, Lieferung und Transport anlegen« abbilden und auf seine hoffentlich
einwandfreie Durchgängigkeit im System testen. Der Modultest in diesem Bei-
spiel ist erst dann erfolgreich abgeschlossen, wenn letztendlich alle vom Kun-
den beispielhaft im Testszenario bestellten Waren in der richtigen Menge zum
richtigen Zeitpunkt am richtigen Ort eingetroffen sind; der Prozess also erfolg-
reich durchlaufen wurde. Der fehlerfreie Datentransfer zwischen den einzelnen
Transaktionen ist dabei unabdingbare Voraussetzung. Bei einem rein funktional
auf SD bezogenen Modultest ist es natürlich notwendig, dass entsprechende
Stammdaten für Materialien, Kunden etc. bereits im System vorhanden sind.
Falls dies nicht der Fall sein sollte, kann CATT, wie bereits beschrieben, natür-
lich auch dazu verwendet werden, die benötigten Stammdaten als grundlegen-
de Basis für die Modultests zu erzeugen.
Integrationstest
Der Integrationstest als solcher wurde bereits in Kapitel 1 dieses Buches näher
definiert. Auf diese Ausführungen sei an dieser Stelle verwiesen.
Bei der R/3-Einführung ist die detaillierte Überprüfung daraufhin, ob die ein-
zelnen Abhängigkeiten von Geschäftsprozessen mit der Wertschöpfungskette
übereinstimmen, Teil des Integrationstests. Der Integrationstest schließt auch
87
Sandini Bib
4.1 Das traditionelle SAP-Vorgehensmodell
88
Sandini Bib
89
Sandini Bib
4.1 Das traditionelle SAP-Vorgehensmodell
90
Sandini Bib
91
Sandini Bib
4.1 Das traditionelle SAP-Vorgehensmodell
Systemtest
Bei einem R/3-Einführungsprojekt ist regelmäßig eine sogenannte Doppelin-
stallation vorhanden. Dies bedeutet, dass im Unternehmen sowohl ein Testsys-
tem als auch ein Produktivsystem existieren
Bei der Verwendung eines Testsystems sowie eines Produktivsystems werden
u.a. bei der Produktivsetzung verschiedenste Berechtigungen, Berechtigungs-
profile, Berichte und Altdaten aus dem Testsystem in das Produktivsystem
überspielt. In das Produktivsystem können natürlich auch die bereits im Testsys-
92
Sandini Bib
93
Sandini Bib
4.1 Das traditionelle SAP-Vorgehensmodell
len, ob die jeweiligen Fehler- oder Systemmeldungen bei der Transaktion hin-
terlegt sind und eine korrekte Reaktion erfolgt.
Darüber hinaus werden Systemmeldungen innerhalb von CATT-Abläufen
dazu genutzt, um bestimmte Aktionen zu veranlassen. Erscheint z. B die Fehler-
meldung beim Anlegen eines Terminauftrages »Debitor nicht vorhanden«,
dann wird der entsprechende CATT-Ablauf diesen Debitor anlegen.
94
Sandini Bib
Die Erfahrungen aus der Praxis zeigen, dass alle neuen R/3-Releaseversionen
mit ihrer allgemeinen Verfügbarkeit möglichst umgehend installiert und aus-
führlichen Tests unterzogen werden sollten. Als unabdingbare Voraussetzung
für dieses Testvorhaben gilt es, zunächt ein flexibles Systemumfeld zu schaffen.
Denn die Überprüfung neuer Releases sollte eigentlich simultan auf mehreren
Testsystemen mit nahezu identischem Testumfang durchgeführt werden. Das
CATT-Werkzeug ist bei dieser Aufgabe sehr komfortabel einsetzbar. Es erlaubt
die höchst flexible Verteilung der verschiedenen Testaktivitäten von einem zen-
tralen Test-Repository aus, mit dem die verschiedenen Testsysteme angespro-
chen werden können, je nach dem, welches gerade aktiv ist.
Durch diese Funktionalität von CATT können z.B. die R/3-Einführungsprojek-
te bei multinational agierenden Unternehmen, die verschiedene R/3-Releases
einsetzen, bei den Roll-outs in erheblichem Maße unterstützt werden.
95
Sandini Bib
4.1 Das traditionelle SAP-Vorgehensmodell
96
Sandini Bib
Wie die abgebildete ASAP-Roadmap zeigt, gründet die ASAP-Methode auf fünf
Phasen:
◗ Projektvorbereitung
◗ Business Blueprint
97
Sandini Bib
4.2 Der ASAP-Ansatz
◗ Realisierung
◗ Produktionsvorbereitung
◗ Go-Live und Support
Jeder dieser Phasen sind verschiedene Arbeitspakete zugeordnet, die im Ver-
lauf der Phase der Reihe nach abzuarbeiten sind. Dabei bieten sie den Anwen-
dern konkrete Hilfsmittel wie Beispieldokumente oder -präsentationen sowie
konkrete, zur Nachahmung empfohlene Vorgehensweisen an. Im Anhang sind
die Arbeitspakete mit all ihren einzelnen Aktivitäten aufgelistet.
Die ASAP-Einführungsmethode unterscheidet sich von anderen vor allem
durch den »Timebox-Ansatz«. Das zentrale Element eines ASAP-Projektes ist
seine Laufzeit, der Projektumfang muss sich an diese Zeitvorgabe anpassen. Das
gilt für das Gesamtvorhaben wie auch für jeden einzelnen Projektschritt. Des-
halb erfordert ASAP immer wieder schnelle und teilweise harte Entscheidun-
gen.
Im Folgenden sollen nun die fünf Phasen der ASAP-Roadmap kurz beschrieben
werden.
98
Sandini Bib
99
Sandini Bib
4.2 Der ASAP-Ansatz
◗ Archivierung einrichten
◗ Integrationstest durchführen
◗ Benutzerschulung planen und realisieren
◗ Qualitätsprüfung
100
Sandini Bib
101
Sandini Bib
4.2 Der ASAP-Ansatz
102
Sandini Bib
Da aber auch der ASAP-Ansatz, wie bereits erwähnt, auf dem wasserfall-basier-
ten Ansatz beruht und folglich mit den typischen Problemen dieser Methode zu
kämpfen hat, wird im Folgenden ein alternatives, dynamisches Vorgehensmo-
dell vorgestellt, bei dem CATT als ein unverzichtbares Werkzeug für Durchfüh-
rung von SAP R/3-Projekten verstanden wird.
103
Sandini Bib
4.3 Das DSDM-basierte Vorgehensmodell
Machbarkeit
Geschäftsstudie
Funktionale
Modell Implementierung
Iteration
Design &
Build Iteration
Projektmanagement
Teamstrukturen
Benutzerbeteiligung
Prototyping-Management
Fähigkeiten und Verantwortung
Schätzen
Risikoanalyse
Änderungskontrolle
Konfigurationsmangement
Entwicklungsumgebung
Methoden
Testen
Qualitätsmanagement
regelmäßige Auslieferung
Abbildung 4.3
Das DSDM-Vorgehensmodell zur Softwareentwicklung
104
Sandini Bib
◗ Endbenutzer sind nicht in der Lage, ihre weit in der Zukunft liegenden An-
forderungen bereits zum Zeitpunkt der Anforderungserhebung vorherzuse-
hen (erste Phase im Sinne traditioneller Modelle). In diesem Zusammenhang
wird ohnehin davon ausgegangen, dass die meisten Anforderungen dem Be-
nutzer erst bei der Nutzung des zu entwickelnden Systems klar werden.
DSDM geht des Weiteren davon aus, dass die aktuelle Phase nicht wie im tradi-
tionellen Wasserfallmodell vollständig abgeschlossen sein muss, sondern nur
soweit fortgeschritten sein sollte, dass gerade die nächste Phase begonnen wer-
den kann, in welcher dann die vorhergehende beendet wird.
Dabei stellt DSDM neun Prinzipien in den Mittelpunkt:
◗ Partizipation der Endbenutzer ist ein Muss.
◗ DSDM-Teams müssen bevollmächtigt werden, im Rahmen der System-
entwicklung Entscheidungen zu treffen.
◗ Das auszuliefernde Produkt steht im Mittelpunkt, nicht die Aktivitäten zur
Entwicklung des Produktes.
◗ »Fitness for business purpose« ist das wesentliche Akzeptanzkriterium, d.h.,
der Geschäftsnutzen steht im Mittelpunkt.
◗ Iterative und inkrementierende Entwicklung ist notwendig.
◗ Alle Änderungen während der Entwicklung sind reversibel.
◗ Anforderungen werden nur grob beschrieben.
105
Sandini Bib
4.3 Das DSDM-basierte Vorgehensmodell
106
Sandini Bib
107
Sandini Bib
4.3 Das DSDM-basierte Vorgehensmodell
108
Sandini Bib
109
Sandini Bib
4.3 Das DSDM-basierte Vorgehensmodell
Machbarkeitsstudie
(Vorstudie)
Einführung/
Geschäftsstudie
Produktivbetrieb
Geschäfts-
prozeßanalyse MM System-Design
Funktionen- und System-Build
modell- SD Iteration
Iteration Integrations-, Versions-,
Release- und Performanz-
Customizing CO Abgleich
CATTs
= iterative Phase
= Soll-Richtung
= Kann-Richtung
Abbildung 4.4
Das DSDM-basierte Vorgehensmodell zur Durchführung von SAP R/3-Projekten
Von besonderer Wichtigkeit für diesen Ansatz ist die Tatsache, dass das DSDM-
basierte Vorgehensmodell die typischen SAP-Phasenaktivitäten wie beispiels-
weise »Systemlandschaft einrichten« oder »Globale Einstellungen vornehmen«
selbstverständlich nicht neu erfindet, sondern auf die vollständigen und sehr de-
taillierten Aktivitätenbeschreibungen aus dem traditionellen SAP-Vorgehens-
modell bzw. aus ASAP zurückgreift. Auch der Einsatz der ASAP-Werkzeuge
und der ASAP-Beschleuniger wie beispielsweise Checklisten oder Dokument-
vorlagen wird, wann immer es sinnvoll erscheint, ausdrücklich gewünscht. Was
das Vorgehen selbst angeht, so soll alles was über die Aktivitätenbeschreibungen
hinausgeht auf DSDM-Basis durchgeführt werden. Die effektivste Projektdurch-
110
Sandini Bib
führung ist also genau dann möglich, wenn das Projekt auf der Grundlage des
DSDM-basierten Vorgehensmodells »powered by« ASAP organisiert wird.
Das DSDM-basierte Vorgehensmodell selbst besteht aus 5 Phasen und ist in
Abbildung 4.4 dargestellt.
Alle diese Phasen haben ihre DSDM-Besonderheiten, auf die im Folgenden kurz
eingegangen werden soll.
111
Sandini Bib
4.3 Das DSDM-basierte Vorgehensmodell
112
Sandini Bib
sollen alle die Fragen geklärt werden, die in Zusammenhang mit der teamüber-
greifenden Arbeit stehen. Beispielhaft sollen hier die folgenden Fragen genannt
werden:
◗ Ist die Zeitplanung der einzelnen Teams in Einklang zu bringen?
◗ Welche Customizing-Einstellungen werden von mehreren Teams angefasst?
◗ Sind alle Teams mit der Priorisierung innerhalb der anderen Teams einver-
standen?
◗ Werden die Verantwortlichkeiten für die einzelnen Geschäftsprozesse von
allen Teams akzeptiert?
Von besonderer Bedeutung für diese Aktivität ist hier die Erfahrung der Berater,
die in der Lage sind, sowohl geeignete Schätzungen für die Zeitplanung abzu-
geben als auch darüber zu informieren, an welchen Stellen, die verschiedenen
Teams auf die gleichen Customizing-Einstellungen zugreifen müssen. Eine
Kenntnis dieser Gegebenheiten kann im weiteren Verlauf des Projektes sehr
hilfreich sein und unangenehme Überraschungen vermeiden helfen
Weitere Aktivitäten, die in dieser Phase durchzuführen sind, sind einerseits die
SAP-Schulung, in der den internen Teammitglieder die R/3-Grundlagen und,
falls vorhanden, den internen Customizing-Beauftragten das nötige Customi-
zing Know-how vermittelt wird, und andererseits die DSDM-Schulungen.
113
Sandini Bib
4.3 Das DSDM-basierte Vorgehensmodell
Teams in der nächsten Timebox bearbeitet werden sollen. Eine Timebox stellt in
der Regel ein Zeitfenster von 10 Arbeitstagen, also zwei Kalenderwochen dar.
Am Ende einer jeden Timebox steht innerhalb der Teams ein kleiner Meilenstein
an, an dem überprüft wird, ob die gesetzten Ziele erreicht wurden bzw. ob die
Aufgabenplanung für die Timebox realistisch war. Wie eine solche Timeboxpla-
nung aussehen kann wird beispielhaft in Abbildung 4.5 dargestellt.
3 Wo. 11 Wo.
Projekt-
verlauf
Zeit
Abbildung 4.5
Timebox-Planung für die dritte Phase
Innerhalb dieser Timeboxes findet also die Bearbeitung der einzelnen Ge-
schäftsprozesse statt, wobei hier als Werkzeug auf jeden Fall zum Prototyping
geraten wird. Um dieses Prototyping durchzuführen, bieten sich mit dem Itera-
tiven Prozess-Prototyping (IPP) von Keller und Teufel [/Keller97/] und dem
DSDM-Prototyping-Management zwei Methoden an.
Das IPP nutzt hierbei die verschieden integrierten SAP-eigenen Werkzeuge, um
die Geschäftsprozesse in Workshops gemäß der Benutzeranforderungen einzu-
stellen. Die verschiedenen Hilfsmittel, die hierbei genutzt werden, sind:
◗ das R/3-Customizing
◗ das R/3-Prototyping
◗ das R/3-Data Dictionary
◗ das R/3-Referenzprozessmodell
◗ das R/3-Daten-/Objektmodell
◗ das R/3-Organisationsmodell
114
Sandini Bib
Wie das Netzwerk zwischen den einzelnen Komponenten des IPPs und die ver-
schieden möglichen Navigationswege aussehen, wird in Abbildung 4.6 darge-
stellt.
Bertriebnswirtschaftliche
R/3-
Organi-
sations-
R/3- modell R/3-
Referenz- Daten-/
prozeß- Objekt-
Ebene
modell Modell
IPP
R/3-
Systemtechnische
R/3-Data
Proto-
Dictionary
typing
R/3-
Custo-
mizing
Ebene
Das IPP schlägt also offensichtlich nicht die Nutzung von CATT vor. Wenn das
Projekt jedoch auf der Basis des DSDM-basierten Vorgehensmodells durchge-
führt werden soll, ist die Erstellung der CATTs unumgänglich, so dass auch bei
Nutzung des IPPs an die Bearbeitung eines jeden Geschäftsprozesses die Auf-
zeichnung des zugehörigen CATTs angehängt werden muss, was dem Gedan-
ken des IPPs, die SAP-eigenen Werkzeuge zu nutzen, sicherlich nicht entgegen-
steht.
115
Sandini Bib
4.3 Das DSDM-basierte Vorgehensmodell
Abbildung 4.7
Fragen im iterativen (DSDM-) Prototyping
Die zweite Möglichkeit, Prototyping einzusetzen, ist das iterative (DSDM-) Pro-
totyping, welches zwar nicht die Nutzung der SAP-eigenen Werkzeuge vor-
schreibt, jedoch vergleichbare Fragestellungen zu den einzelnen Prototypen
aufwirft, wie es im IPP der Fall ist. Darüber hinaus ist dieses iterative (DSDM-)
Prototyping in ein Prototypen-Management eingebettet, welches dafür Sorge
tragen soll, dass das Prototyping nicht zu einem ziel- und endlosen Prototyping
wird, sondern in steuerbarer Weise vor sich geht.
Wird das iterative (DSDM-)Prototyping angewendet, so werden in den einzel-
nen Teams R/3-Prototypen zu den einzelnen Geschäftsprozessen erarbeitet, für
welche dann in jeder Iteration die in Abbildung 4.7 dargestellten Fragestellun-
gen behandelt werden sollen. Der Fragenkatalog enthält folgende Fragen:
◗ Ist der Bildschirmaufbau übersichtlich?
◗ Sind alle nötigen Eingabefelder vorhanden?
◗ Ist die Eingabelogik eingängig?
◗ Sind die gewünschten Vorschlagswerte eingestellt?
◗ Sind die Reaktionszeiten OK?
◗ Sind die geäußerten Änderungswünsche durchführbar?
Wurde der Prototyp schließlich als funktionierendes Teil des Systems abgenom-
men, so muss selbstverständlich auch hier der entsprechende CATT-Ablauf auf-
116
Sandini Bib
117
Sandini Bib
4.3 Das DSDM-basierte Vorgehensmodell
Phase 5: Einführung/Produktivsetzung
(Die traditionellen Aktivitäten, die zur Durchführung von SAP R/3-Projekten benötigt
werden, werden gemäß dem traditionellen SAP-Vorgehensmodell bzw. gemäß ASAP
durchgeführt!)
In dieser Phase wird der aktuelle DSDM-Durchlauf abgeschlossen und der Pro-
duktivbetrieb unterstützt.
Aus dem Produktivbetrieb werden sich ändernde bzw. neue Anforderungen
abgeleitet, und der nächste DSDM-Durchlauf wird geplant. Dies kann entweder
ein neues Teilprojekt darstellen oder, je nach Aufgabenstellung, auch einen
Rücksprung in eine vorherige Phase bedeuten. Kommt es beispielsweise zu Pro-
blemen funktionaler Art, so muss in die dritte Phase zurückgesprungen werden.
Treten hingegen Probleme nicht-funktionaler Art auf, wird die vierte Phase er-
neut durchlaufen.
Am Ende des ersten DSDM-Durchlaufs sollte idealerweise eine ca. 80 Prozent-
Lösung (Basissystem) stehen. Im zweiten Durchlauf (zweites Teilprojekt) wird
dann dieses Basissystem erweitert. Diese Erweiterung kann die verschiedensten
Gründe haben wie z.B.:
◗ neue Anforderungen
◗ veränderte Anforderungen
◗ Fehlerbeseitigung
Zu einem dritten Durchlauf käme es beispielweise bei einem Releasewechsel.
[s. /Geiß98/ 265ff.]
Projektmanagement
Das Projektmanagement in DSDM-basierten Projekten sieht sich im Gegensatz
zu wasserfall-basierten Projekten sowohl mit neuen Aufgabenstellungen als
auch mit neuen Zielsetzungen konfrontiert. Gründe für diese Veränderungen
sind insbesondere das Timeboxing und das Prototyping.
Während der Projektmanager in traditionellen Projekten damit beschäftigt war,
die vorgegebenen Anforderungen unter Einhaltung der Zeitvorgaben zu erfül-
len, muss er heute dafür Sorge tragen, dass die Timebox mit möglichst vollstän-
diger Realisierung der Anforderungen eingehalten wird. Konnte man in tradi-
118
Sandini Bib
tionellen Projekten noch die Anforderungen als Konstante und die Zeit als
Variable verstehen, so müssen heute in einer fest vorgegebenen Timebox even-
tuell die Anforderungen gemäß der Prioritätenliste reduziert, also als Variablen
verstanden werden, die auf eine 80 Prozent-Lösung abzielen. Der Projektmana-
ger im DSDM-basierten Vorgehensmodell muss also insbesondere darum be-
müht sein, dass die Teams die Anforderungen entsprechend ihrer Wichtigkeit
bearbeiten, dass die einzelnen Teammitglieder effektiv zusammenarbeiten und
dass die Timeboxes realistisch geplant werden.
Prototyping-Management
In DSDM-basierten Projekten stellt das iterative Prototyping eine der wesentli-
chen Aufgaben dar. Da dieses Prototyping nicht zuletzt aufgrund seiner Itera-
tionen mitunter sehr problematisch sein kann, bedarf es eines wirksamen Proto-
typing-Managements, welches dafür verantwortlich ist, dass sowohl das
Prototyping selbst als auch die Iterationen in einer kontrollierten und steuerba-
ren Weise funktionieren.
Das Prototyping hat in den unterschiedlichen Kontexten unterschiedliche Be-
deutungen. Prototyping in der Softwareentwicklung bedeutet z.B., dass es dem
Auftraggeber ermöglicht wird, seine Vorstellungen anhand eines ersten Abbil-
des des zu entwickelnden Systems zu präzisieren und eventuell zu korrigieren,
wobei dieses erste Abbild in der Regel verworfen, also nicht weiterentwickelt
wird.
119
Sandini Bib
4.3 Das DSDM-basierte Vorgehensmodell
Anfänglicher Prototyp
Verfeinerter Prototyp
Konsolidierter Prototyp
Abbildung 4.8
Prototyping-Management
Risikoanalyse
Die Risikoanalyse hat das Erkennen möglicher Projektrisiken zum Ziel und
muss während der gesamten Projektdauer immer wieder durchlaufen werden.
Der Fragenkatalog der Risikoanalyse muss also über alle Phasen hinweg immer
wieder beantwortet werden, und zwar sowohl in »kleinen« Meilensteinen in-
nerhalb der einzelnen Teams als auch in »großen« Meilensteinen an den jewei-
ligen Phasenenden. Es wird vorgeschlagen die folgenden Risiken zu überprü-
fen:
◗ Wurden den einzelnen Geschäftsprozessen eindeutig jeweils ein verantwort-
licher Mitarbeiter zugeordnet?
◗ Gefährdet die Zeitdauer, die für Entscheidungen benötigt wird, den Projekt-
plan?
◗ Werden die Benutzer ausreichend in das Projekt miteinbezogen?
◗ Entspricht der Detaillierungsgrad der Anforderungsanalyse der aktuellen
Phase?
120
Sandini Bib
121
Sandini Bib
4.3 Das DSDM-basierte Vorgehensmodell
Abbildung 4.9
Priorisierung mittels der MoSCoW-Rules
Konfigurationsmanagement
Das Konfigurationsmanagement ist dafür verantwortlich, dass das DSDM-ba-
sierte Einführungsprojekt trotz aller Dynamik unter Kontrolle bleibt. Von be-
sonderer Bedeutung ist hierbei die Verwaltung der einzelnen Softwareelemente
hinsichtlich ihrer Veränderung bzw. der Aufzeichnung der verschiedenen Ver-
sionen, die diese Elemente durchlaufen. Softwareelemente im SAP R/3-System
können beispielsweise sein:
◗ Geschäftsprozessdokumentation
◗ Customizing-Einstellungen
◗ CATTs
◗ Schulungsunterlagen usw.
Um nun diese Softwareelemente mit einem geeigneten Konfigurationsmanage-
ment zu verwalten, bietet das SAP R/3-System mit
◗ dem Change und Transport Organizer,
◗ dem SAPoffice und
◗ dem Dokumentenverwaltungssystem
122
Sandini Bib
Testen
Wie das Testen im DSDM-basierten Vorgehensmodell durchzuführen ist, wur-
de bereits ausführlich innerhalb der CATT-Einsatzmöglichkeiten beschrieben
und soll deshalb hier nicht weiter behandelt werden.
Qualitätsmanagement
Um zu gewährleisten, dass ein DSDM-basiertes Projekt einen gängigen Quali-
tätsstandard erfüllt, soll an dieser Stelle auf die Ausführungen der British Stan-
dards Institution verwiesen werden, die in ihrer Veröffentlichung »The Dyna-
mic Systems Development Method & TickIT« ausführlich beschreibt, wie
DSDM-Projekte durchzuführen sind, um die Anforderungen der ISO 9000-3 zu
erfüllen.
Kommunikation
Die Kommunikation spielt gerade in DSDM-basierten Projekten eine sehr wich-
tige Rolle, da hier einer engen Zusammenarbeit von Endbenutzern und Beratern
für den Projekterfolg eine entscheidende Rolle zukommt.
Im DSDM-basierten Vorgehensmodel für SAP R/3-Projekte wird aus diesem
Contextual Inquiry
Das Contextual Inquiry [Beyer98] beschreibt eine Art der Kundenbefragung, die
hauptsächlich bei der Geschäftsprozessanalyse eingesetzt wird. Im Mittelpunkt
dieser Methode steht die Annahme, dass der Kunde seine tägliche Arbeit we-
sentlich besser beschreiben kann, wenn er im Kontext seines gewöhnlichen Ar-
beitsumfelds befragt wird, also nicht wie bei traditionellen Befragungstechni-
ken in einem neutralen Besprechungsraum.
Grundlage für diese Befragung ist das so genannte »Meister/Lehrling-Modell«,
in welchem der Kunde der Meister ist, der seinem Lehrling, im vorliegendem
Fall dem SAP-Spezialisten, seine tägliche Arbeit so erklären soll, dass dieser in
die Lage versetzt wird, des Kunden Arbeit eigenständig durchzuführen, also
auch zu verstehen. Um dieses Ziel zu erreichen, werden vier Prinzipien formu-
123
Sandini Bib
4.3 Das DSDM-basierte Vorgehensmodell
Themenzentrierte Interaktion
Die Themenzentrierte Interaktion beschreibt eine Methode, die den Grundstein
für produktive Teamarbeit legt. Wichtig für diese Methode sind einerseits die
drei Faktoren
◗ Individuum,
◗ Team und
◗ Thema,
in welche die Teamarbeit eingebettet ist, und andererseits Postulate und Verhal-
tensregeln, die eine effiziente Kommunikation ermöglichen.
124
Sandini Bib
125
Sandini Bib
Sandini Bib
Allgemeine Funktionen
von CATT
5
5.1 Einbindung von CATT in die Infrastruktur der
R/3-Umgebung
Die Infrastruktur der bereits kurz beschriebenen ABAP/4 Development Work-
bench ermöglicht es dem Benutzer von CATT, auf die verschiedenen Funktio-
nen wie Korrektur- und Transportwesen, Repository-Infosystem und Mehr-
sprachigkeit etc. zuzugreifen. Damit kann das CASE-Tool CATT sämtliche
Vorteile seiner Integration in die CASE-Umgebung ABAP/4 Development Work-
bench hervorragend nutzen. Darüber hinaus wird der korrekte Testablauf durch
synchrones Verbuchen mit gezieltem Tabellenpuffer-Refresh garantiert. Wich-
tig ist dies insbesondere bei komplexen Transaktionsketten bestehend aus
Transaktionen, die auf den Ergebnissen der vorher ausgeführten Transaktionen
aufbauen. Durch die Integration von CATT in die ABAP/4 Development Work-
bench ist auch das so genannte »Mastersprachenhandling« im R/3-System ein-
heitlich gestaltet. Wie andere ABAP/4-Development-Workbench-Objekte ha-
ben auch Testabläufe und Testbausteine in CATT eine Originalsprache. Legt
man in CATT ein Objekt an, so erhält es die jeweilige Anmeldesprache unter der
sich der Anwender im System angemeldet hat, im System SY-LANGU genannt,
die dann die Originalsprache ist. Sämtliche Texte zu einem Objekt sind immer
in dieser Originalsprache im System vorhanden. Beim Kopieren wird die Origi-
nalsprache des Objekts auch für das neue Objekt übernommen, da die Bearbei-
tung normalerweise in der Originalsprache des Objekts erfolgt. Unterscheidet
sich die Originalsprache des bearbeiteten Objekts jedoch von der Anmeldespra-
che, so kann man entweder die Bearbeitung in der Originalsprache durchführen
oder die Originalsprache ändern. Falls die Originalsprache geändert werden
soll, ist darauf achten, dass die Texte bereits in die neue Originalsprache über-
setzt vorliegen. Ist dies nicht für alle Texte der Fall, dann kann man die nicht
vorhandenen Texte zunächst in die neue Sprache übersetzen. Dies sollte
schnellstmöglich geschehen. Sämtliche Attribute und Objekte der angelegten
127
Sandini Bib
5.2 Remote Start
128
Sandini Bib
5.3 Berechtigungsprüfung
Berechtigungen im R/3-System sind sehr wichtig, um die Programme und Da-
ten unberechtigten Zugriffen von Dritten zu entziehen. Deshalb sollten sie in
den CATT-Entwicklungen unbedingt genutzt werden. Bei der Definition von
Berechtigungen bedient man sich des Berechtigungsobjekts. Eine Berechtigung
ist eine Ausprägung eines Berechtigungsobjektes. Diese Berechtigung enthält ei-
nen eigenen Namen und alle Felder des zugrundeliegenden Berechtigungsob-
jektes. Diesen Feldern können entsprechende Werte zugewiesen werden. Die
Berechtigungsprüfung erfolgt dann später gegen diese Werte.
Durch die geschilderte Integration des Computer Aided Test Tools in die
ABAP/4 Development Workbench wird bei der Ausführung von Testbaustei-
nen und Testabläufen stets automatisch überprüft, ob der Anwender im Rah-
129
Sandini Bib
5.3 Berechtigungsprüfung
130
Sandini Bib
5.4 Aufzeichnungsfunktionalität
CATT stellt eine anwenderfreundliche, komfortable und einfach zu bedienende
Aufzeichnungsfunktionalität bereit. Mit dieser Funktionalität wird dem An-
wender von CATT ein Werkzeug an die Hand gegeben, das es ihm erlaubt, so-
wohl einzelne Transaktionen als auch ganze Transaktionsketten aufzuzeichnen
und später jederzeit wieder abzuspielen. Um eine Transaktion aufzeichnen zu
können, sind der Transaktionscode sowie die für die Durchführung der Trans-
aktion erforderlichen Daten notwendig. Zu jedem Dynpro (dynamisches Pro-
gramm) ist im R/3-System unter dem Systemstatus der entsprechende zugehö-
rige Transaktionscode zu finden. Die Daten zur Aufzeichnung werden am
besten mit den entsprechenden Applikationsexperten festgelegt, da diese mit
den Daten gut vertraut sind. Die bei der Aufzeichnung der einzelnen Transak-
tionen verwendeten Festwerte, auch Defaultwerte genannt, werden bei jedem
Start eines Test durchgespielt. Sie können aber auch gezielt durch Parameter er-
setzt werden, wodurch die Flexibilität des CATT-Tools erheblich gesteigert wer-
den kann. Der Anwender hat natürlich in CATT auch die Möglichkeit, bestehen-
de, von der SAP AG programmierte Transaktionen seinen Vorstellungen und
Bedürfnissen gemäß anzupassen bzw. eigene Transaktionen zu entwickeln. Al-
lerdings muss er in diesen Fällen auf die komfortable Aufzeichnungsfunktiona-
lität verzichten und manuell arbeiten.
5.5 Expertenmodus
Das Computer Aided Test Tool verfügt über einen Expertenmodus, in dem auch
komplexe betriebswirtschaftliche Testszenarien sowohl aus funktionaler als
auch aus prozessorientierter Sicht erstellt werden können. Die bei der Aufzeich-
nung eines Testbausteins bzw. Testablaufs verwendeten Festwerte können bei
131
Sandini Bib
5.6 Neuheiten in R/3-Release 4.0
132
Sandini Bib
133
Sandini Bib
5.7 Neuheiten in R/3-Releases 4.5 A bis einschließlich 4.6 B
zelnen werden Sie von Wizards u.a. bei folgenden Modellierungsaufgaben un-
terstützt:
◗ Definieren und Einfügen einer Einzelschrittaufgabe, mit der ein Test-Ablauf
(CATT) ausgeführt wird
◗ Modellieren einer Terminüberwachung, bei der die Terminüberschreitung
den ursprünglichen Schritt beendet und Folgeschritte definiert werden kön-
nen
◗ Erzeugen einer Objektreferenz aus gegebenen Schlüsselfeldern
◗ Definieren und Erzeugen einer Formularaufgabe
◗ Versenden von Mails aus einem Workflow
◗ Definieren und Einfügen einer Einzelschrittaufgabe, mit der ein Report aus-
geführt wird
◗ Versenden von Mails
Wizards werden über das Menü "Wizards" im grafischen oder alphanumeri-
schen Workflow-Editor aufgerufen.
Status-Infosystem
Mithilfe des Status-Infosystems ist es möglich, testplanübergreifende Statusana-
lysen durchzuführen. Über ein Selektionsbild können Sie dabei die relevanten
Testpläne spezifizieren. Um diese Selektion zu erleichtern, wurde dem Testplan
ein neues Attribut Stichwort hinzugefügt. Über dieses Stichwort kann dann im
Status-Infosystem selektiert werden. Das Ergebnis des Status-Infosystems ist
eine Liste aller Testpläne, die den Selektionskriterien entsprechen. In der Liste
wird das Ergebnis der jeweils zuletzt ausgeführten Statusanalyse über den je-
weiligen Testplan angezeigt. Zu Präsentationszwecken kann das Ergebnis des
Status-Infosystem in eine Desktop-Applikation geladen und dort bearbeitet
werden.
134
Sandini Bib
135
Sandini Bib
5.8 Zusammenfassung der Ziele von CATT
◗ Lesen von Feldinhalten: Bei der Pflege des Testfalls wird in der Detailpflege
zu dem relevanten Dynpro auf dem Feld, das ausgelesen werden soll, ein Pa-
rameter definiert. Dazu steht dem Benutzer die Funktion Feldwert lesen zur
Verfügung. Durch diese Funktion wird ein Exportparameter angelegt, in den
der Feldwert gestellt wird.
◗ Prüfen von Feldinhalten: Bei der Prüffunktion wird nach Abschluss der
Transaktion überprüft, ob der zur Laufzeit gültige Wert eines Feldes mit ei-
nem erwarteten Wert übereinstimmt. Die Prüfung kann sowohl gegen einen
Festwert als auch gegen einen Parameter erfolgen. Erfolgt die Prüfung gegen
einen Parameter, muss der Testfallersteller darauf achten, dass zur Laufzeit
der Parameter mit dem richtigen Prüfwert versorgt wird. Wird ein noch nicht
vorhandener Parametername angegeben, legt das System automatisch einen
Importparameter an. Zur Definition einer Prüfung steht dem Benutzer auf
der Detailpflege des relevanten Dynpros die Funktion Feld prüfen zur Verfü-
gung.
◗ Simulation von Custom Controls: Der Einbau von Custom Controls in die
Applikation erfordert eine Erweiterung der Funktionalität des CATTs, um
die Applikationen weiterhin mit CATT testen zu können. Bei der Aufzeich-
nung von Testfällen werden zusätzlich zu den bisher aufgezeichneten Einga-
ben in Dynprofelder jetzt auch die Datenströme von und zu den Custom
Controls aufgezeichnet, die bei Data Providers und der Automation Queue
anfallen. Beim Abspielen des Testfalls werden die Custom Controls ausge-
schaltet und die Benutzeraktionen durch Einspielen der aufgezeichneten Da-
tenströme simuliert.
136
Sandini Bib
137
Sandini Bib
Sandini Bib
6
Der Testablauf bildet einen vollständigen betriebswirtschaftlichen oder admini-
strativen Prozess mit allen Voraussetzungen ab, die für eine bestimmte Prüfung
notwendig sind. »Terminauftrag anlegen« erfordert z.B. als Voraussetzungen
»Debitor anlegen«, »Material anlegen« sowie »Konditionen festlegen«.
Ein Testablauf kann beliebige Testbausteine zu einer gesamten Anwendung
oder einer bestimmten Funktionalität einer Anwendung aufnehmen (referie-
ren). Es ist jedoch auch möglich, einen Testablauf ohne Testbausteine aufzubau-
en. Der Testablauf kann bei entsprechender Einstellung mit einem Prüfkennzei-
chen versehen werden.
Zu einem Testablauf gehören folgenden Komponenten:
◗ Testbaustein
◗ Protokoll
◗ Varianten
139
Sandini Bib
6.1 Testbaustein (optional)
Testbaustein
Ein Testbaustein entspricht der kleinsten prüfbaren Einheit, in der Regel einer
Transaktion z.B. »Kreditor anlegen« (Transaktionscode: FK01). Der Testbaustein
kann entweder direkt zum Testen verwendet oder in einem Testablauf referen-
ziert werden. Man kann einen Testbaustein auch als Testablauf für eine Trans-
aktion bezeichnen. Das Anlegen von Testbausteinen erfolgt über die komforta-
ble Aufzeichnungsfunktionalität von CATT, welche unter Ziffer 5.4 bereits
ausführlich beschrieben wurde. Dabei werden die Bildschirmbildabfolge und
die Eingaben auf den einzelnen Bildschirmbildern der ausgewählten Transakti-
on aufgezeichnet. Zu Erhöhung der Flexibilität der einzelnen Testbausteine
existieren je eine definierte Import- und Exportschnittstelle. Diese Schnittstellen
werden mit speziellen Export- und Importparametern realisiert. Hinsichtlich
näherer Erläuterungen zur Parametrisierung der Testbausteine und Testabläufe
wird auf das sich anschließende Kapitel 7 verwiesen.
Testablauf
Ein Testablauf wird bei CATT modular aus einzelnen Testbausteinen aufgebaut,
d.h., er besteht aus einer Aneinanderreihung von verschiedenen Testbaustei-
nen. Ein Testablauf kann einen betriebswirtschaftlichen Prozess sowohl aus
funktionaler als auch aus prozessorientierter Sicht abbilden. Testabläufe wer-
den mit der gleichen Pflegetransaktion wie Testbausteine angelegt und gepflegt.
Der einzige Unterschied besteht darin, dass man die komfortable Funktionalität
zum Aufzeichnen von Transaktionen für das Anlegen von Testabläufen nicht
benutzen kann. Die einzelnen Testbausteine bilden die Module, aus denen die
Testabläufe in beliebiger Weise zusammengestellt werden können.
Durch das modulare Konzept kann ein Testbaustein in verschiedenen Testab-
läufen genutzt werden. Dadurch werden Redundanzen vermieden. Die Pflege
eines Testbausteins hat sofort Auswirkungen auf alle Testabläufe, die den ge-
pflegten Testbaustein referenzieren. Dies reduziert den Änderungsaufwand so-
mit erheblich, da der Testbaustein nur einmal geändert werden muss, aber dann
in vielen Testabläufen gleichzeitig im geänderten Zustand zur Verfügung steht.
Um z.B. den betriebswirtschaftlichen Prozess »Terminauftrag anlegen« als Test-
ablauf anlegen zu können, muss zuvor als Voraussetzung die Aufzeichnung der
Transaktionen »Debitor anlegen«, »Material anlegen« sowie »Konditionen festlegen«
jeweils als Testbaustein erfolgen. Diese Transaktionen werden nach ihrer Auf-
zeichnung per CATT im Testablauf »Terminauftrag anlegen« eingebunden. Falls
nun später der betriebswirtschaftliche Prozess »Anfrage anlegen« durch einen Test-
ablauf abgebildet werden soll, sind dazu folgende Transaktionen notwendig:
»Debitor anlegen«, »Material anlegen« und »Anfrage anlegen«. Doch hier muss le-
diglich die Transaktion »Anfrage anlegen« noch als Testbaustein erstellt werden.
Denn die beiden übrigen benötigten Transaktionen wurden bereits zur Abbil-
dung des Testablaufs »Terminauftrag anlegen« als Testbausteine aufgezeichnet.
140
Sandini Bib
Bei der Abbildung des Prozesses »Anfrage anlegen« kann demnach auf die bei-
den bereits bestehenden Testbausteine zurückgegriffen werden. Dies verdeut-
licht, dass ein Testbaustein, wenn er einmal erstellt ist, in beliebig vielen Testab-
läufen referenziert werden kann. Dem einmaligen Aufwand zur Erstellung des
Testbausteins steht also durch die Option, ihn in beliebig viele Abläufe integrie-
ren zu können, ein erheblich höherer Nutzen gegenüber. Voraussetzung hierfür
ist allerdings, dass die Schnittstellen der einzelnen Testbausteine entsprechend
flexibel parametrisiert sind, um eine derart universelle Verwendbarkeit zu errei-
chen. Hier ist es erfahrungsgemäß sehr vorteilhaft, einen Standard, auch »Kon-
vention« genannt, für die Benutzung der Übergabeparameter der Testbausteine
festzulegen und auch konsequent einzuhalten. Testabläufe haben zu diesem
Zweck eine definierte Import- und Exportschnittstelle, durch die Testparameter
gezielt eingegeben werden können. Durch die Importparameter kann ein Test-
ablauf mit Werten von außen versorgt werden. Dadurch wird eine hohe Flexi-
bilität bei den Testabläufen erreicht. Testbausteine verfügen ebenfalls über eine
definierte Import- und Exportschnittstelle. Dadurch sind sie durch den Testab-
lauf parametrisierbar und können Ergebnisse an den Testablauf zurückgeben.
Die Exportschnittstelle eines Testablaufes ist im Vergleich zur Exportschnittstel-
le des Testbausteins allerdings nur sehr beschränkt einsetzbar. Die Thematik
»Parametrisierung von Testbausteinen und -abläufen« wird im weiteren Ver-
lauf dieses Buches gesondert und detailliert behandelt. Der Testablauf bzw.
Testbaustein erhält beim Anlegen vom System eine eindeutige Identifikation,
d.h., ihm wird vom System automatisch eine Nummer zugeordnet.
6.2 Protokoll
CATT erstellt beim Abspielen von Testbausteinen und Testabläufen in CATT
ausführliche Protokolle, die zentral auf der Datenbank des ausführenden R/3-
Systems abgelegt werden und alle relevanten Informationen über Ablauf und
Ergebnis des Testverlaufes enthalten. Die verschiedenen Protokolle können dort
jederzeit abgerufen werden.
Ein CATT-Protokoll ist hierarchisch aufgebaut und wird als Struktur mit Kno- Kapitel 6 – Aufbau des CATT-Tools
tenpunkten abgebildet. In dieser Struktur kann der Anwender so wie im Einfüh-
rungsleitfaden navigieren. Alle Eingaben und Meldungen sind im Protokoll
aufgelistet. Auf der ersten Ebene des jeweiligen Vorgangsprotokolls wird der
verwendete Testablauf (bei Verwendung der Funktion »Massenstart« mehrere)
bzw. der Testbaustein angezeigt. In der darunterliegenden Ebene sind die in
den Testablauf integrierten Funktionen, die Parameter und Variablen angeord-
net. Aus dem Protokoll kann man an dieser Stelle ablesen, mit welchen Werten
die einzelnen Parameter und Variablen versorgt wurden. Eine weitere Ebene
tiefer sind die einzelnen im Testablauf referenzierten Testbausteine aufgeführt.
Jeder dieser Testbausteine kann seinerseits wiederum eine Ebene tiefer »aufge-
rissen« werden. Das Testprotokoll zeigt dann die Bestandteile des betreffenden
Testbausteins, also der dort aufgezeichneten Transaktion. Man kann in dieser
141
Sandini Bib
6.2 Protokoll
6.2.1 Langform
Hierbei werden alle CATT-Funktionsdaten protokolliert. Im Fehlerfall wird au-
tomatisch ein Langprotokoll erzeugt, das bei dem fehlerhaften Baustein mit der
Protokollierung beginnt, auch dann, wenn auf dem Startbildschirm die Option
»kein Protokoll« markiert wurde.
142
Sandini Bib
6.2.2 Kurzform
Sofern keine Fehler auftreten, erhält der Anwender hier nur Informationen über
die im Testablauf aufgerufenen Testbausteine und Parameterinhalte. Welche
Form des Protokolls für einen Lauf erzeugt werden soll, entscheidet der Anwen-
der beim Starten im Startbildschirm von CATT. Das Protokoll wird schließlich
systemintern sowohl mit einem Erstelldatum als auch mit einem Verfallsdatum
versehen. Das Verfallsdatum wird standardmäßig auf 14 Tage nach Erstellda-
tum gesetzt. Es kann jedoch manuell verändert werden.
CATT verfügt hinsichtlich der Protokolle über eine Downloadfunktion, durch
welche die einzelnen Protokolle auf die Arbeitsstation heruntergeladen werden
können. Die heruntergeladenen Protokolle können dann z.B. mit Differenz-
Viewern von MS-Word auf Unterschiede hin untersucht werden.
143
Sandini Bib
6.2 Protokoll
untersuchen ist der, diese Transaktion sofort mit den gleichen Daten erneut zu
starten. Bisher war ein Neustart der Transaktion aber nur über einen Alternativ-
modus mit Übernahme der entsprechenden, bereits im ersten Testlauf verwen-
deten Parameterwerte möglich.
Ab dem R/3-Release 4.0A können nun die einzelnen Testbausteine und Testab-
läufe direkt aus dem jeweiligen CATT-Protokoll heraus neu gestartet und damit
auch neu getestet werden. Durch die CATT-Funktion RESTART wird die Feh-
leranalyse erheblich vereinfacht. Damit kann je nach Cursorposition entweder
der gesamte Vorgang, ein Ablauf oder ein Testbaustein, der im Protokoll aufge-
zeichnet ist, ausgeführt werden.
144
Sandini Bib
6.3 Varianten
Man unterscheidet bei den Varianten von CATT zwischen externen und inter-
nen Varianten.
145
Sandini Bib
6.3 Varianten
CATT bietet die Möglichkeit, erstellte externe Varianten aus dem externen File
in das R/3-System automatisch zu importieren. Dadurch sind diese für alle Be-
nutzer ausführbar. Außerdem können damit die externen Varianten auch in an-
dere R/3-Systeme transportiert werden. Wurde eine externe Variante mittels
CATT ins R/3-System importiert, dann wird diese ausgeführt, sofern auf dem
lokalen Rechner keine Datei existiert, die den Namen des Testablaufs gefolgt
von dem Suffix TXT führt.
146
Sandini Bib
6.3.4 Attribute
Hierbei handelt es sich um verschiedene Kennzeichen und Verwaltungsinfor-
mationen zu den einzelnen Testbausteinen bzw. Testabläufen, die als Suchkrite-
rium im Repository-Informationssystem dienen können. Ein wichtiges Attribut
z.B. kennzeichnet, ob es sich um einen Testablauf oder einen Testbaustein han-
delt.
147
Sandini Bib
6.3 Varianten
Kopfdaten
Als Kopfdaten werden folgende Attribute bezeichnet:
Testbaustein/Testablauf
Beim Sichern des Testbausteins bzw. des Testablaufs wird vom R/3-System au-
tomatisch eine eindeutige Nummer vergeben, über welche der Baustein bzw.
der Ablauf zu identifizieren ist. Diese Baustein- bzw. Ablaufnummer sollte man
sich am besten sofort notieren, um den Testbaustein bzw. -ablauf später ohne
großen Aufwand wieder auffinden zu können.
148
Sandini Bib
Status
Der Status wird vom R/3-System automatisch beim Sichern der Testbausteine
bzw. -abläufe gesetzt. Aus dem Status lässt sich ablesen, ob ein Testbaustein
bzw. -ablauf bereits gesichert ist oder noch überarbeitet wird.
Typ
Beim Aufruf wird vom System initial C = »CATT« eingestellt. Der Typ eines
CATT-Ablaufs gibt an, in welcher Weise der Ablauf ausgeführt werden kann.
Es stehen hier folgende Typen zur Verfügung:
◗ C CATT: maschineller Einzel- oder Massenstart im R/3
◗ M Manuell: Es werden nur Attribute und Langtext genutzt.
◗ V Veri: Start von Verifikationsreports SAP-intern
◗ R Remote R/2: maschineller Start über RFC in R/2-Systeme
◗ S Systeminst: Installationsablauf für Schulungssysteme
◗ X Externe Anw.: Start externer Anwendung nach Download
Originalsprache
Wird der Testbaustein bzw. der -ablauf gespeichert, trägt das System hier die
Sprache ein, mit der sich der Benutzer bei im R/3-System angemeldet hat.
Kurztext
Bei diesem Feld handelt es sich um ein Mussfeld. Kurze Erläuterungen zum
Testbaustein bzw. Testablauf sind hier einzutragen. Am besten gibt man bei
Testbausteinen als Erstes den Transaktionscode der zu testenden Transaktion
an. Dies erhöht die Übersichtlichkeit beim Referieren von Testbausteinen in
Testabläufen.
Auch hierbei handelt es sich um ein Mussfeld. Das Stichwort 1 dient als Such-
kriterium im Repository-Informationssystem. Falls man für einen Testbaustein
bzw. Testablauf mehr als ein Stichwort hinterlegen will, besteht die Option,
über die Drucktaste Stichworte in ein Dialogfenster zum Pflegen der insgesamt
fünf möglichen Stichworte zu gelangen.
Entwicklungsklasse
149
Sandini Bib
6.3 Varianten
Allgemeine Daten
Applikation
Hier trägt man die Bezeichnung der Applikation, also die des Moduls, entspre-
chend der SAP-Funktionsliste ein, z.B. FI für die Applikation Finanzwesen, oder
man wählt sie mit der (F4)-Eingabehilfe aus.
Subapplikation
Der Teilbereich der Applikation ist hier anzugeben (gemäß der SAP-Funktions-
liste, z.B. GL für Hauptbuchhaltung), oder Auswahl mit der (F4)-Eingabehilfe.
Komponente
Hier wird die Bezeichnung für die Komponente innerhalb der Subapplikation
eingetragen (gemäß der SAP-Funktionsliste, z.B. CU für Währungsbuchhal-
tung) oder aber mit der (F4)-Eingabehilfe ausgewählt.
150
Sandini Bib
Priorität
Hier wird die Wichtigkeit der Testabläufe festgelegt. Dabei können folgende
Prioritätsstufen eingestellt werden:
A sehr hoch
B hoch
C mittel
D niedrig
Appl. übergreifend
Verwaltungsdaten
Falls in den Benutzerfestwerten für CATT das Kennzeichen Prüfkennzeichen
markiert ist, werden nach jedem Testablauf Verwaltungsdaten zum Testablauf
hinterlegt, denen Bearbeitungs- und Prüfdaten entnommen werden können.
Erfasser
Liefert Informationen über den Erfasser des Testablaufs. Nach dem Doppelklick
auf das Namensfeld erscheint das Dialogfenster Benutzer: Detailinformation.
Geändert von
Kapitel 6 – Aufbau des CATT-Tools
Der Urheber von Änderungen wird hier festgehalten.
Verantwortl.
In dieses Feld wird beim Sichern automatisch der Erfasser des Testablaufs ein-
gestellt. Ist der Erfasser jedoch nicht der Ansprechpartner für diesen Testbau-
stein/Testablauf, sollte der Eintrag geändert werden.
151
Sandini Bib
6.3 Varianten
Beide Felder sind voreingestellt. Über diese Felder wird das letzte gesicherte Re-
lease bekanntgegeben, in dem der Testablauf bzw. Testbaustein lauffähig war.
Es findet kein Abgleich mit dem aktuellen Release statt. Gegebenenfalls ist das
Feld Gepflegt für Release zu ändern.
In CATT gibt es drei Release-Angaben:
◗ gepflegt für Release (vom Benutzer änderbar)
◗ gepflegt bis Release (beim Anlegen oder Pflegen aktuell gesetzt)
◗ gültig bis Release (optional vom Benutzer eingebbar)
Durch diese Angaben definiert sich immer ein entsprechendes Intervall. Dieses
Intervall beinhaltet die angegebenen Grenzen und alle Releases dazwischen.
Folglich ist das Gültigkeitsintervall für jeden CATT-Ablauf eindeutig festgelegt.
Im Repository-Informationssystem und in der Test Workbench kann man nun
nach der Gültigkeit eines Ablaufs selektieren. Zu diesem Zweck stehen dort
zwei Selektionsfelder zur Verfügung:
◗ von Release
◗ bis Release
Aus den Selektionsangaben und dem Gültigkeitsintervall eines Ablaufs be-
stimmt sich eindeutig, ob der Ablauf zur Selektion passt oder nicht.
Das Feld zeigt an, bis zu welchem Release der Testablauf bzw. Testbaustein lauf-
fähig ist. Das Feld Gültig bis Release muss nicht unbedingt ausgefüllt werden,
wenn wenn es jedoch gefüllt wird, müssen die ersten beiden Zeichen Ziffern sein.
Abhängigkeiten
Frontend
Plattform
152
Sandini Bib
Sprache
Land
Kontext
Die kontextabhängige Definition von Testabläufen hat Bedeutung für den Mas-
sentest. Wenn man beim Starten mehrerer Testabläufe eine Reihenfolge festle-
gen möchte, markiert man dieses Kennzeichen. In diesem Fall gibt man in dem
dazugehörigen Feld die Position ein (»1« bis »4« für Vorspannläufe oder »6« bis
»9« für Nachspannläufe).
Nutzbarkeit
Hier wird festgelegt, wie der Testablauf bzw. Testbaustein eingesetzt werden kann:
Anwendungstest
Der Testablauf bzw. Testbaustein ist zum Test einer Anwendung vorgesehen.
Individualtest
Kapitel 6 – Aufbau des CATT-Tools
Der Testablauf bzw. Testbaustein ist noch in der Erstellungs- und Testphase und
soll noch nicht produktiv eingesetzt werden. Das Feld sollte demnach immer dann
markiert werden, wenn der Testablauf/-baustein nur vom Ersteller und noch nicht
allgemein genutzt werden soll. Man bezeichnet dies auch als so genannten »Alpha-
Test«.
153
Sandini Bib
6.3 Varianten
Kennzeichen
Testbaustein
Wenn das anzulegende Objekt ein Testbaustein sein soll, dann ist dieses Kenn-
zeichen zu markieren. Falls hier keine Markierung erfolgt, geht das System au-
tomatisch davon aus, dass es sich bei vorliegendem Objekt um einen Testablauf
handelt. Dies kann bei der Referenzierung des Testbausteins zu Schwierigkeiten
führen.
Externe TCD-Daten
Abbruch-Kennz.
Falls CATT den Testablauf bzw. Testbaustein nach dem ersten aufgetretenen
Fehler abbrechen soll, ist dieses Kennzeichen zu setzen. Wenn nun ein Fehler im
Ablauf auftritt, bricht das System den Test an der Fehlerstelle ab und zeigt am
Monitor das fehlerhafte Dynpro der Transaktion an. Man hat nun die Möglich-
keit, den Fehler zu beheben. Wird anschließend mit (¢) bestätigt, setzt das Sys-
tem den Test wieder fort. Ohne Markierung des Abbruchkennzeichens läuft der
Test trotz eines unter Umständen aufgetretenen Fehlers bis zum Ende durch.
Das Abbruchkennzeichen wirkt jedoch nur in Testabläufen bzw. Testbaustei-
nen, die direkt gestartet werden. Bei referierten Testbausteinen wird der Wert
vom aufrufenden Testablauf überlagert. Dies bedeutet, dass der Testablauf im
Falle des Auftretens eines Fehlers nur dann vom System abgebrochen wird,
wenn in der Attributepflege des Testablaufs das Abbruchkennzeichen gesetzt
ist. In diesem Fall nutzt es nichts, wenn in der Attributpflege der Testbausteine
Abbruchkennzeichen gesetzt sind.
154
Sandini Bib
Inaktiv
Wenn ein Testablauf bzw. Testbaustein für die Nutzung gesperrt sein soll, ist
dieses Kennzeichen zu markieren. Ein Ausführen dieses Testbausteins bzw.
-ablaufs ist dann nicht mehr möglich. Allerdings ist hier Folgendes unbedingt
zu beachten: Setzt man einen Testbaustein, der in einem oder mehreren Testab-
läufen referenziert wird, inaktiv, kann dies unter Umständen bedeuten, dass der
Testablauf dadurch fehlerhaft wird oder im schlimmsten Fall überhaupt nicht
mehr lauffähig ist, da ja ein wesentliches Element des Ablaufs nicht mehr funk-
tionsfähig ist.
155
Sandini Bib
Sandini Bib
Funktionen des
CATT-Tools
7
Die hier näher beschriebenen Funktionen des Computer Aided Test Tools
entsprechen einzelnen Testaktionen, die in einem Testbaustein oder Testablauf
aufgenommen und während des Abspielens eines Tests ausgeführt werden
können.
Um Bausteine mithilfe von CATT schnell und effektiv erstellen zu können, sollte
man mit den Funktionen der CATT-Pflegetransaktion vertraut sein. Besonders
wichtig ist dabei der Umgang mit dem Funktionseditor. Für die Programmie-
rung der Funktionen für CATT-Abläufe wurde von der SAP AG ein einfach zu
bedienender Editor entwickelt, dessen Funktionalitäten im Folgenden kurz be-
schrieben werden. Damit CATT-Objekte schnell und effizient erstellt und ge-
pflegt werden können, ist es erforderlich, die Grundfunktionen dieses Editors
zu beherrschen.
Sobald man die Pflegetransaktion für CATT-Objekte verlässt, verzweigt das Sys-
tem in das Einstiegsbild für die Pflege von CATT-Objekten. Hier gibt man die
Nummer des in der letzten Übung erstellten Testbausteins an. Durch Auswahl
der Funktion Ändern verzweigt man direkt in den Funktionseditor für die Pflege
der CATT-Funktionen. Falls sich der Anwender noch in der Pflegetransaktion
für CATT-Objekte befindet, muss er die Funktion Funktionen ausführen. Wie bei
allen SAP-Editoren gibt es auch beim Funktionseditor den Anzeige- und den Än-
dern-Modus.
157
Sandini Bib
7.1 Allgemeine Funktionen
Kommando Auswirkung
r(epeat) Wiederholen: Hiermit schreibt man den Inhalt der betreffenden Zeile in
die darauf folgende Zeile
i(nsert) Einfügen: Hiermit fügt man nach der betreffenden Zeile eine Leerzeile
ein.
m(ove) Verschieben: Hiermit kopiert bzw. verschiebt man die betreffende Zeile.
Für diese Editorbefehle benötigt man immer eine Zielangabe, d.h., es
muss zusätzlich die Zielzeile »a« gekennzeichnet werden.
> Referenz auflösen: Hiermit kopiert man den Inhalt eines referenzierten
Testbausteins.
* Positionieren: Hiermit stellen man die betreffende Zeile in die erste Aus-
gabezeile der Seite.
Tabelle 7.1
Editorbefehle des Funktionseditors
7.1.2 Blockmodus
Die Zeilen im Funktionseditor können vom Anwender blockweise im so ge-
nannten »Blockmodus« bearbeitet werden. Mit der Funktion Markieren gelangt
er in den Blockmodus, in welchem er ganze Blöcke im Funktionsbildschirm lö-
schen, verschieben, kopieren und ablegen kann. Beim Einstieg ist die ausge-
wählte Zeile der komplette Block, der mit Ende Markieren erweitert werden
kann.
Mit den Funktionen Ablegen und Einlesen kann man Blöcke zwischen Abläufen
austauschen. Der benutzte Puffer bleibt auch über einen Neustart von CATT
oder ein Abmelden hinweg erhalten, gilt aber nur im aktuellen System (dort je-
doch mandantenübergreifend).
158
Sandini Bib
Bearbeitungsfunktionen
Funktionsname Bedeutung
Tabelle 7.2
Bearbeitungsfunktion von CATT
Steuerungsfunktionen
Funktionsname Bedeutung
DO Schleife
Tabelle 7.3
Steuerungsfunktionen von CATT
159
Sandini Bib
7.2 Spezielle Funktionen von CATT
Prüffunktionen
Funktionsname Bedeutung
Tabelle 7.4
Prüffunktionen von CATT
7.2.1 Bearbeitungsfunktionen
160
Sandini Bib
7.2.2 Steuerungsfunktionen
161
Sandini Bib
7.2 Spezielle Funktionen von CATT
162
Sandini Bib
Schleifenfunktion – DO
Um CATT-Funktionen wiederholt zu starten, können sie in eine Schleife gestellt
werden. Dazu gibt man die Funktion DO in das Feld »Funkt.« und die ge-
wünschte Zahl der Schleifendurchläufe in das Feld »Objekt« auf dem Funktions-
pflegebildschirm ein. Man kann Schleifen setzen, die Wiederholungen zwischen
1 und 999 durchführen. Danach sind die CATT-Funktionen einzutragen, die
REF K12536001
ENDDO
163
Sandini Bib
7.2 Spezielle Funktionen von CATT
7.2.3 Prüffunktionen
TCD FB01
Es gibt in CATT auch eine Anweisung, die alle Fehlernummern zur Fehlermel-
dungsprüfung zulässt. Diese Funktion lautet:
Funkt. Objekt
CHEERR *
164
Sandini Bib
165
Sandini Bib
7.2 Spezielle Funktionen von CATT
FUN DATE_TO_PERIOD_CONVERT
IF &V01 = ´1´
ENDIF
DO 003
ENDDO
CHEERR 286
Beispiel Nr. 2:
In folgendem Beispiel handelt es sich um einen exemplarisch ausgewählten
Standard CATT-Baustein, der von SAP AG mitausgeliefert wird. Dabei wird
zunächst der Fakturabeleg über einen Eingabeparameter in den CATT-Bau-
stein eingelesen. In der Tabelle VBRK werden anschließend die Nettobeträge
einer Prüfung unterzogen. Für den Fakturabeleg, der durch die vorher einge-
lesene Belegnummer identifiziert wird, wird über den Funktionsbaustein
AC_DOCUMENT_RECORD der zugehörige Buchhaltungsbeleg gelesen. An-
hand der Belegnummer im FI wird die entsprechende Tabelle BSEG (Buchhal-
tungssegment) gelesen und die Mahnstufe geprüft. Der CATT-Baustein, der
diese Bedingungen erfüllt, sieht dann wie folgt aus:
166
Sandini Bib
FUN AC_DOCUMENT_
RECORD
IF &V02 GT '0000000000'
IF &V01 EQ 'LR'
167
Sandini Bib
7.2 Spezielle Funktionen von CATT
ENDIF
ENDIF.
Beispiel Nr. 3:
Dieser Testbaustein zeigt, wie man per CATT das Customizing für SD-Trans-
porte automatisiert gestalten kann.
TXT ************************************
ENDIF
ENDIF
168
Sandini Bib
ENDIF
TXT
ENDIF
ENDIF
TXT
ENDIF
ENDIF
169
Sandini Bib
7.2 Spezielle Funktionen von CATT
Beispiel Nr. 4:
Testbaustein P3005022 SD-Transport: Customizing zurücksetzen
TXT Leerzeile
TXT Leerzeile
TXT Leerzeile
TXT Leerzeile
TXT Leerzeile
TXT Leerzeile
TXT Leerzeile
170
Sandini Bib
TXT Leerzeile
Beispiel Nr. 5:
Dieser Testbaustein verprobt die Tabelle BSEG (Belegsegment Buchhaltung).
171
Sandini Bib
7.3 Parameter
7.3 Parameter
Die innerhalb des Computer Aided Test Tools zur Verfügung stehenden Para-
meter sind für die Wertübergabe an Testbausteine bzw. Testabläufe verantwort-
lich. In allen betriebswirtschaftlichen Prozessen, welche in Testabläufen bzw.
-bausteinen abgebildet werden, sind in Eingabefeldern verschiedenste Daten
einzugeben. Diese Daten lösen dann im System Berechnungen aus. Die errech-
neten Ergebnisse bilden wiederum die Grundlage für nachfolgende Berechnun-
gen. Deshalb ist es empfehlenswert, Daten in CATT nicht nur als fest vorgege-
bene Werte, sondern mittels definierter Variablen bzw. Parameter zwischen den
einzelnen Bausteinen auszutauschen. Dies erhöht die Flexibilität der Testbau-
steine und -abläufe, wie bereits erwähnt, erheblich. Fast alle CATT-Funktionen
benötigen Eingabewerte und liefern davon abhängig bestimmte Ergebnisse.
Man unterscheidet in CATT folgende Parameter:
7.3.1 Importparameter
Die Werte für die Importparameter werden beim Aufruf eines Testbausteins
oder Testablaufs übergeben und stehen innerhalb eines Testablaufs oder Test-
bausteins lokal zur Verfügung. Die Importparameter werden bei ihrer Definiti-
on bestimmten Feldern als Platzhalter zugeordnet und später im jeweiligen
Testablauf mit Werten versehen. Dem Anwender bietet sich hier die Option, im
Testbaustein für jeden Importparameter dieses Bausteins einen Vorschlagswert
festzulegen, der in jedem Testablauf, der diesen Testbaustein referenziert, als
Voreinstellung vorgeschlagen wird. Bei der Übergabe von Werten während des
Testablaufs werden die Vorschlagswerte überschrieben. Das Vergeben von Vor-
schlagswerten im Testbaustein ist sehr zu empfehlen, weil dadurch der Pflege-
aufwand im referenzierenden Testablauf reduziert wird.
Vorschlagswert Importparameter-Inhalt
'abc' abc
172
Sandini Bib
Übergabewert Importparameter-Inhalt
' (1 Hochkomma) nicht definiert auf Bildschirmbild, bzw. initial auf Ta-
bellen
Tabelle 7.5
Beispiele, wie ein Vorschlagswert oder Übergabewert im Importparameter
aufgelöst wird
Default Importparameter-Inhalte
Tabelle 7.6
Obige Variablenverwendungen in Vorschlagswerten können zu Fehlern führen
7.3.2 Exportparameter
Den Exportparametern können die Ergebniswerte eines Testbausteins zugewie-
173
Sandini Bib
7.4 Variablen
7.3.4 SET/GET-Parameter
Neben dem Lesen aus Tabellen können auf die Datenbankinhalte auch über die
so genannten SET/GET-Parameter zugegriffen werden. Diese beziehen sich auf
die Parameter-ID, welche für manche Datenbankfelder im R/3-System vorhan-
den ist. SET/GET-Parameter beginnen immer mit »%« gefolgt von Großbuch-
staben und sind meist dreistellig. Jedoch können nicht alle Parameter-IDs im
CATT weiterverwendet werden. Die SET/GET-Parameter sollten möglichst
sparsam eingesetzt werden, da die Kapazität des SET/GET-Memorys begrenzt
ist.
7.4 Variablen
Variablen dienen der Wertübergabe innerhalb eines Testbausteins bzw. Testab-
laufs. In CATT können verschiedene Variablentypen in Testbausteinen und Test-
abläufen verwendet werden. Dies können sowohl intern vereinbarte Variablen
als auch Bezugnahmen auf im System verfügbare Variablen sein. Folgende Va-
riablentypen können dabei vom Anwender genutzt werden:
◗ Message-Variablen
◗ lokale Variablen
◗ Textvariablen
◗ SET/GET-Parameter/Parameter-IDs
◗ Systemvariablen
◗ Sondervariablen
◗ Datumsvariablen
174
Sandini Bib
7.4.1 Message-Variablen
Transaktionen geben nach erfolgreicher Bearbeitung eine Dialogmeldung an
den Benutzer, die mit Hilfe der Message-Variablen abgefragt werden können.
Diese Dialogmeldungen sind systemintern in der Tabelle T100 zu finden. Da
diese Systemmeldungen maximal vier variable Anteile beinhalten können, ste-
hen in CATT-Objekten demnach auch vier Message-Variablen zur Verfügung.
Anhand dieser Message-Variablen können folglich die zur Laufzeit variablen
Werte übergeben werden wie z.B. Beleg- bzw. Stammsatznummern. Message-
Variablen beginnen immer mit &M gefolgt von einer zweistelligen Nummer
(01-04). Dabei bezieht sich die Variable &M01 auf den ersten variablen Anteil ei-
ner Systemmeldung, die Variable &M02 auf den zweiten usw. Wenn man die In-
halte dieser Messagevariablen weiterverwenden möchte, sind diese an interne
Variablen oder Exportparameter zu übergeben.
7.4.3 Textvariablen
Mithilfe dieser Variablen können sprachabhängige Felder in CATT gestaltet
7.4.4 SET/GET-Paramter/Parameter-Ids
Innerhalb des Testablaufs besteht die Möglichkeit, auf die im benutzerspezifi-
schen Bereich abgelegten SET/GET-Parameter in der Länge von 50 Zeichen zu-
zugreifen. Auf Werte von definierten SET/GET-Parametern kann über deren
Parameter-Ids (%<set/get>) zugegriffen werden.
175
Sandini Bib
7.4 Variablen
7.4.5 Systemvariablen
Die Systemfelder werden vom R/3-System zur Laufzeit mit verschiedenen ak-
tuellen Werten gefüllt. Einige sind von erheblicher Bedeutung, da sie Auskunft
über den jeweiligen Systemstatus liefern. Andere dienen nur der Kommunika-
tion diverser Basisprogramme untereinander. Systemvariablen liefern Informa-
tionen, die vom System zur Verfügung gestellt werden. Im CATT kann man da-
für alle SY-Felder des Systems nutzen. Die Namen der vorhandenen SY-Felder
erhält man über die Datenbanktabelle SYST.
SETVAR &V01 = SY-LANGU
Hier wird der Systemvariablen &V01 die jeweilige Anmeldesprache des An-
wenders zugewiesen.
Beispiele für in CATT nutzbare Systemfelder sind:
◗ SY-LANGU (Anmeldesprache):
Dieses Feld wird bei Anmeldung eines Anwenders mit dem Kürzel für die
jeweils, aktuelle Sprache gesetzt. Anhand dieses Feldes ermitteln viele sys-
teminterne Hilfsmittel die korrekten sprachabhängigen Texte und Nachrich-
ten.
◗ SY-UZEIT (aktuelle Uhrzeit):
Dieses Feld wird vom System mit der aktuellen Uhrzeit versorgt.
◗ SY-DATUM (aktuelles Datum):
Dieses Feld wird bei der Anwendung mit dem aktuellen Tagesdatum gefüllt.
◗ SY-UNAME (Benutzername):
In dieses Feld wird bei der Anmeldung am System der Anmeldename des
Anwenders eingetragen. Dieser Name wird beispielsweise von der Berechti-
gungsprüfung genutzt.
◗ SY-SUBRC (korrekte Programmausführung):
Es handelt sich hierbei um das am häufigsten benutzte Systemfeld. Es beinhal-
tet nach der Ausführung vieler Anwendungen einen konkreten Wert, der de-
taillierte Auskunft über die richtige Abarbeitung dieses Kommandos gibt.
7.4.6 Sondervariablen
Außer den allgemeinen Systemvariablen können auch CATT-eigene Sonderva-
riablen genutzt werden, um Daten des R/3-Systems abzurufen. Sondervaria-
blen können dabei direkt in ein Literal (Zeichenkette) eingebunden werden.
Nicht möglich ist hier jedoch die Angabe von Offset und Länge der jeweiligen
Variablen, z.B. &M01-02(08).
176
Sandini Bib
7.4.7 Datumsvariablen
Mit Datumsvariablen können z.B. verschiedene Termine berechnet werden. Das
Addieren und Subtrahieren von Tagen ist mit den Datumsvariablen automa-
177
Sandini Bib
7.4 Variablen
178
Sandini Bib
B Tagesdifferenzen:
Sind beide Operanden vom Typ DATE (&Dnn, &DAT, SY-DATUM) und ist das
Ergebnis keine Datumsvariable (z.B. &V01, &I01, usw.), so werden bei der Sub-
traktion positive und negative Tagesdifferenzen ermittelt.
179
Sandini Bib
7.5 Startbild (Einzelstart)
7.5.1 Einzelstart
Der Testablauf bzw. Testbaustein wird direkt aus der Pflegetransaktion über ein
Startbild gestartet, in dem man Angaben zum Ablauf eingeben kann.
7.5.2 Massenstart
Hiermit können mehrere Testabläufe und Testbausteine hintereinander gestar-
tet werden. Details hierzu werden in den Erläuterungen zum CATT-Manage-
ment geschildert.
180
Sandini Bib
7.5.4 Abspielmodus
Ein Testablauf bzw. Testbaustein kann einzeln gestartet werden. Falls für einen
Testablauf Varianten vorliegen, hat man die Option, im Startbild auszuwählen,
ob und gegebenenfalls welche Variante(n) gestartet werden soll(en). Der Ab-
spielmodus wirkt sich nur auf das Abspielen von Transaktionen in der CATT-
Funktion TCD aus.
Helles Abspielen
Der Ablauf wird vollständig im Dialog ausgeführt. Es besteht die Möglichkeit,
Feldeingaben zu korrigieren oder durch Eingabe von OK-Codes den Ablauf zu
beeinflussen. Mit (¢) gelangt man auf das Folgebild.
Dunkles Abspielen
Die Transaktionen laufen ohne jeden Dialog im Hintergrund ab. Der Anwender
kann den Ablauf der Transaktion am Bildschirm nicht verfolgen.
7.6 Varianten
Durch entsprechende Markierungen in diesem Teil des Startbildschirms kann
der Anwender in den Start des Testbausteins bzw. -ablaufs Varianten einbin-
den. Dabei kann vom R/3-System auf alle oder auch nur auf spezielle, ausge-
wählte Varianten zugegriffen werden.
181
Sandini Bib
7.7 CATT im Repository-Informationssystem
182
Sandini Bib
Einführung in die
Bedienung von CATT
8
8.1 Voraussetzungen
Die hier angegebenen Beispielszenarien sind so nur im entsprechend gepflegten
SAP-System »KBC, Mandant 099« ablauffähig. Sollen diese Szenarien in einem
anderen R/3-System bzw. Mandanten ausgeführt werden, gilt es die hier ange-
gebenen Stammdaten durch die entsprechenden Stammdaten des ausführen-
den Systems bzw. Mandanten zu ersetzen. Das verwendete R/3-System muss
dabei den Releasestand 3.1g oder höher besitzen. Des Weiteren müssen für den
entsprechenden Benutzer die Berechtigungen zum Pflegen und Ausführen von
CATT-Objekten eingerichtet sein. Bei diesbezüglichen Problemen ist der Sys-
temverwalter zu konsultieren.
Anhand des nachfolgenden Beispiels werden nun die grundsätzlichen Funktio-
nen des Computer Aided Test Tools erläutert.
8.2 Beispiel
Zunächst sollen Bewegungsdaten über die Transaktion Anlegen Kreditor (Trans-
aktionscode »FK01«) aus dem R/3-Modul FI eingegeben und anschließend über
die Transaktion Kreditor ändern (FK02) korrigiert werden. Am Beispiel der
Transaktion Anlegen Kreditor wird zunächst veranschaulicht, wie ein Testbau-
stein anzulegen ist. Später wird dieser Testbaustein zusammen mit einem wei-
teren Testbaustein dazu verwendet, um einen komplexen Testablauf zu erstel-
len. Über Varianten und die dazugehörigen Importparameter können konkrete
Werte zugeordnet werden, so dass der Testablauf mehrere Kreditoren gleichzei-
tig anlegt und auch wieder ändert. In Abschnitt 8.4.4. wird erläutert, wie die
konkreten Eingabewerte aus einem externen Tabellenkalkulationsprogramm
gelesen werden. CATT kann auch zur Pflege von Customizing-Tabellen ver-
wendet werden. An diversen Beispielen soll dies in Abschnitt 8.5 demonstriert
183
Sandini Bib
8.3 Einfacher CATT
werden. In Abschnitt 8.6 werden die sonstigen Funktionen des Computer Aided
Test Tools beschrieben wie z.B. Suchen, Übersetzen und Transportieren von
CATTs. Der Remote Start von CATT-Abläufen, diverse Problembehandlungen
und das Arbeiten mit dem CATT-Protokoll-Archiv werden darüber hinaus the-
matisiert.
D Daraufhin verzweigt das R/3-System das Einstiegsbild von CATT (siehe Ab-
bildung 8.1). Hier legt der Anwender fest, ob er einen neuen CATT-Testab-
lauf bzw. -baustein anlegen oder einen bereits angelegten CATT anzeigen,
starten oder ändern möchte.
184
Sandini Bib
185
Sandini Bib
8.3 Einfacher CATT
186
Sandini Bib
D Die Kontengruppe KRED steht dabei für die interne Nummernvergabe beim
Anlegen eines Kreditors im R/3-System. Daher muss das Feld Kreditor nicht
gefüllt werden. Nach Abschluss der Transaktion erzeugt das R/3-System
selbständig eine entsprechende Kreditorennummer. Die Felder Vorlage – Kre-
ditor und Vorlage – Buchungskreis müssen hier nicht gefüllt werden, da hier
keine Kreditor mit Bezug auf einen anderen angelegt werden soll.
E Die Eingaben sind nun mit (¢) oder durch Anklicken des grünen Hakens
auf dem Dynpro oben links zu bestätigen.
F Daraufhin verzweigt das System zum Eingabebildschirm »Kreditor anlegen:
Anschrift« (siehe Abbildung 8.4).
187
Sandini Bib
8.3 Einfacher CATT
◗ Land: DE
◗ Sprache: D
Diese Eingaben müssen erneut bestätigt werden.
Es erscheint das Dynpro »Kreditor anlegen: Steuerung« (Abbildung 8.5).
Hier ist die Umsatzsteuer-Identifikationsnummer (UST-ID.Nr) des Kreditors
einzugeben:
UST-ID.-Nr. DE123456789
G Die Eingaben sind wiederum mit (¢) oder durch Anklicken des grünen Ha-
kens auf dem Dynpro oben links zu bestätigen. Auf dem folgenden Dynpro
»Kreditor anlegen: Zahlungsverkehr« werden keine Eintragungen vorge-
nommen.
H Bitte nochmals mit (¢) oder durch Anklicken des grünen Hakens auf dem
Dynpro oben links bestätigen.
188
Sandini Bib
J Die Eingaben müssen nun erneut bestätigt werden. Das Dynpro »Kreditor
anlegen: Zahlungsverkehr Buchhaltung« erscheint nun (vgl. Abbildung 8.7).
Hier ist folgende Zahlungsbedingung einzugeben:
◗ Zahlungsbedingung: ZB01
K Um in das Folgedynpro »Kreditor anlegen: Korrespondenz Buchhaltung«
(Abbildung 8.8) zu gelangen, ist es erforderlich, die eingegebenen Daten hier
zu bestätigen. Hier werden folgende Daten zum Mahnverfahren ergänzt:
◗ Mahnverfahren: 0001
189
Sandini Bib
8.3 Einfacher CATT
190
Sandini Bib
L Bitte mit (¢) oder durch Anklicken des grünen Hakens auf dem Dynpro
oben links bestätigen. Die Daten müssen nun gesichert werden.
Nachdem diese Transaktion abgeschlossen wurde, verzweigt das System au-
tomatisch auf den in Kapitel 6 bereits näher beschriebenen Attributspflege-
bildschirm der CATT-Pflegetransaktion (siehe Abbildung 8.9). Hier hat man
die Möglichkeit, die durch die Aufzeichnung generierten Attribute zu über-
prüfen und, falls notwendig, entsprechend abzuändern. Während der Auf-
zeichnung des Testbausteins wurden bereits alle notwendigen Attribute au-
tomatisch vom R/3-System gepflegt.
Wenn nun die Aufzeichnung des Testbausteins sowie die Attributspflege be-
endet sind, kann man fortfahren.
M Anschließend wählt man den Menüpfad TESTABLAUF p PRÜFEN, um den an-
gelegten Testbaustein einer Syntaxprüfung zu unterziehen. Nach erfolgrei-
cher Syntaxprüfung erfolgt in der blauen Statuszeile des Attributspflegebild-
schirms eine entsprechende Meldung des Systems: Syntaxprüfung wurde
erfolgreich abgeschlossen.
N Nun ist der Testbaustein über den Menüpfad TESTABLAUFpSICHERN zu spei-
chern und das darauffolgend erscheinende Dialogfeld wie folgt zu ergänzen:
◗ Entwicklungsklasse BCAT
191
Sandini Bib
8.3 Einfacher CATT
192
Sandini Bib
193
Sandini Bib
8.3 Einfacher CATT
194
Sandini Bib
195
Sandini Bib
8.3 Einfacher CATT
Durch Positionierung des Cursors auf eine dieser Zeilen und anschließen-
dem Doppelklicken oder nach Aktivierung der Funktionstaste AUSWÄHLEN
(= Symbol Lupe), erhält man Gelegenheit, die Pflege der bei der Transakti-
onsaufzeichnung eingegebenen Festwerte über eine Liste aller Felder direkt
auf dem betreffenden Dynpro vorzunehmen.
Mithilfe der Buttons VORIGE SEITE und NÄCHSTE SEITE ist es möglich, auf die-
sem Bildschirm die einzelnen Seiten zu durchblättern.
Durch Anklicken der Taste FELDLISTE navigiert man zum Dynpro Anzeigen
Eingabewerte SAPMF02K 0105 (vgl. Abbildung 8.13). Die Ziffernfolge »0105«
ist die systeminterne Nummer des Dynpros. Dieses Dynpro listet sämtliche
auf dem Dynpro befindlichen Eingabewerte auf. Diese Eingabewerte, auch
Festwerte genannt, wurden bei der Aufzeichnung der Transaktion aufge-
zeichnet. Sie werden auf den einzelnen Dynpros als Vorschlagswerte gezeigt.
Da es sich bei den aufgezeichneten Werten, wie bereits gesagt, nur um Vor-
schlagswerte handelt, können sie je nach Bedarf geändert werden.
Man sieht hier, dass im ersten Dynpro die Feldinhalte von Buchungskreis
und Kontengruppe genau jenen entsprechen, welche auch bei der Aufzeich-
nung eingegeben wurden.
196
Sandini Bib
Hinweis: Aus Gründen der Übersicht ist es für den Anwender sehr empfehlens-
wert, sich auch die anderen Dynpros ebenfalls per Doppelklick anzusehen, um
einen Überblick über die in diesem Testablauf zu pflegenden Felder zu erlangen.
F Nach Betrachtung dieser Dynpros bestätigt man mithilfe des Buttons ZU-
RÜCK. Es erscheint wieder der Funktionsbildschirm Anzeigen Funktionen (Ab-
bildung 8.11).
197
Sandini Bib
8.3 Einfacher CATT
G Durch Auswahl des Buttons ATTRIBUTE gelangt man in den bereits bekann-
ten Bildschirm zur Pflege der Attribute.
H Nach Betrachtung des Attributspflegebildschirms kann man zurück auf das
Dynpro Anzeigen Funktionen navigieren. Durch Klicken auf PARAMETER erzeugt
das System eine Übersicht über die für diesen Testbaustein eventuell definier-
ten Import- und Exportparameter sowie über eventuell vereinbarte Variablen.
Hinweis: Zum jetzigen Zeitpunkt sind noch keine Parameter gepflegt; sie
werden noch ausführlich behandelt. Deshalb findet sich auf dem Dynpro An-
zeigen Importparameter auch noch keine entsprechende Auflistung. Dasselbe
gilt natürlich für die Exportparameter und die Variablen. Aus diesem Grund
wird auf die Abbildung der betreffenden Dynpros an dieser Stelle verzichtet.
I Mit Zurück (F3) gelangt man wieder in das Funktionsbild Anzeigen Funktio-
nen.
198
Sandini Bib
199
Sandini Bib
8.3 Einfacher CATT
C Hier können alle Eingabewerte gepflegt werden. Für Feldinhalte, welche va-
riabel gehalten werden sollen, sind Importparameter zu vergeben. Diese Pa-
rameter werden bestimmten Feldern als Platzhalter zugeordnet und später
in einem eventuell diesen Testbaustein KBC02106 referenzierenden Testab-
lauf mit Werten versehen. Auf obigem Dynpro werden zunächst jedoch die
bei der Aufzeichnung eingegebenen Werte übernommen, da hier angenom-
men wird, dass der Buchungskreis 1401 und auch die Kontengruppe KRED
im Rahmen der weiteren Verwendung dieses Testbausteins immer gleich
bleiben werden. Es handelt sich hier also um Festwerte. Man gelangt nun
durch Anklicken des Buttons ZURÜCK in den Detailbildschirm Funktionen.
Dort ist die zweite Zeile zu markieren. Durch Doppelklick oder Auswählen
navigiert das System zum Dynpro aus Abbildung 8.17.
Die Werte für Anrede, Land und Straße werden als Festwerte vereinbart. Die
Feldinhalte für Name, Suchbegriff, Straße, Ort, Postleitzahl und UST.-ID.Nr sol-
len jedoch variabel gehalten werden, da jeder Kreditor hier andere Daten
aufweist. Für diese Felder gilt es nun, jeweils Importparameter zu definieren.
Diese Parameter werden den Feldern als Platzhalter zugeordnet und später
im jeweiligen Testlauf mit Werten versehen. Die im obigen Dynpro bereits
eingetragenen Daten der Firma Test AG werden als mögliche Werte beim
Testablauf vorgeschlagen (Vorschlagswerte). Die Parameter (und auch die
Variablen) sind in ihrer Anzahl unbegrenzt, haben Bezug zum Datenelement
200
Sandini Bib
und können Daten mit einer Länge bis zu 132 Bytes aufnehmen. Man steuert,
wie bereits gezeigt, durch einen Doppelklick auf das jeweilige Eingabefeld in
die Parameterpflege.
D Ein Doppelklick auf das Eingabefeld Name lässt das Dynpro Pflegen Importpa-
rameter aus Abbildung 8.18 erscheinen. Auf dem Dynpro wird zunächst der
vom System vorgeschlagene Parametername (hier: &NAME_1GP) mit dem
entsprechenden Vorschlagswert und seinem Feldbezug gezeigt. Der Anwen-
der hat natürlich jederzeit die Möglichkeit, den Parametern eigene Namen
zuzuweisen. Allerdings sollte hier auf Namenskonventionen geachtet wer-
den. Jeder Parametername beginnt mit dem Zeichen »&« , dem anschließend
noch zwölf weitere Zeichen folgen können. Sobald ein neuer Parameter oder
eine neue interne Variable in ein CATT-Objekt eingefügt werden soll, er-
scheint das folgende, in Abbildung 8.18 dargestellte Dialogfenster, auf dem
der neue Parameter bzw. die neue Variable deklariert wird.
Man kann hier den Parameter bzw. die Variable mit Bezug auf ein Feld aus
dem ABAP/4-Dictionary deklarieren. Dazu steht das Eingabefeld Datenele-
ment zur Verfügung. Durch diese Verknüpfung werden die Kurztexte des
Datenelements übernommen. Der bei der Aufzeichnung des Testbausteins
eingegebene Festwert gilt als Vorschlagswert. Rechts unten auf diesem Dyn-
pro kann man auswählen, ob nun ein Import-, einen Exportparameter oder
201
Sandini Bib
8.3 Einfacher CATT
eine lokale Variable definiert werden soll. Im vorliegenden Fall soll ein Im-
portparameter vergeben werden. Durch Anklicken des Buttons IMPORTPARA-
METER und durch Bestätigung mittels des grünen Pfeils definiert man für das
Feld Name einen Importparameter. Nun sind alle Parameter auf dem Dynpro
Nr. 0110 zu pflegen. Nach erfolgreicher Pflege aller zu definierenden Import-
parameter (Name, Suchbegriff, Straße, Ort, Postleitzahl) wechselt man in das
nächste Dynpro.
E Durch Doppelklick auf den Button NÄCHSTES DYNPRO erscheint das Dynpro
Nr. 0120 (Abbildung 8.19). Das Feld UST.-ID.-Nr enthält den Festwert
DE123456789. Da die Umsatzsteuer-Identifikationsnummer für jedes Unter-
nehmen anders lautet, ist es sinnvoll, dieses Feld flexibel zu gestalten. Des-
halb ist auch dieses Eingabefeld zu parametrisieren.
F Durch Doppelklick auf das Feld UST.-ID.-Nr erscheint das bereits erläuterte
Dynpro Pflegen Importparameter.
Auch dieser Importparameter ist nach der geschilderten Vorgehensweise an-
zulegen. Anschließend kehrt das System automatisch wieder in das Dynpro
Nr. 0120 zurück.
202
Sandini Bib
G Durch Anklicken des Buttons NÄCHSTES DYNPRO navigiert das System in das
Dynpro Nr. 0210. Auf diesem Bildschirmbild ist keine Parametrisierung vor-
zunehmen. Das Abstimmkonto 160000 wird als Festwert übernommen, da es
für alle Kreditoren gleich ist.
H Um wiederum ein Dynpro weiter zu gelangen, klickt man erneut auf N ÄCH-
STES DYNPRO. Es erscheint das Dynpro Nr. 0215. Hier ist zu sehen, dass die
Zahlungsbedingung ZB01 als Festwert eingetragen ist. Da diese Zahlungsbe-
dingung für alle Kreditoren Gültigkeit besitzt, kann hier ebenfalls auf eine
Parametrisierung verzichtet werden.
I Durch Anklicken des Buttons NÄCHSTES DYNPRO steuert man in das letzte
Dynpro Nr. 220. Hier wird das Mahnverfahren 0001 ebenfalls als Festwert
für alle Kreditoren behandelt.
J Die benötigten Importparameter für den Testbaustein KBC02106 sind nun
definiert. Nun navigiert man zum Funktionsbildschirm zurück (Abbildung
8.20). Hier sind folgende Daten einzugeben:
◗ TCDFK01
SETVAR&LIFNR = &M01
203
Sandini Bib
8.3 Einfacher CATT
204
Sandini Bib
205
Sandini Bib
8.3 Einfacher CATT
L Durch Anklicken das Buttons EXPORT gelangen man zu einer Übersicht aller
in diesem Baustein definierten Exportparameter (Abbildung 8.22).
Auf die Abbildung des Dynpros zur Übersicht über die im Testbaustein ver-
wendeten Variablen wurde hier verzichtet, da bisher noch keine Variablen defi-
niert worden sind. Zu Übungszwecken kann man aber bereits durchaus einmal
dorthin navigieren.
In dieser Übung wurden für die Eingabewerte der verschiedenen Dynpros Im-
portparameter definiert. Diese wurden automatisch mit Vorschlagswerten be-
setzt. Dadurch werden diese Vorschlagswerte bei der Ausführung dieses
CATT-Testbausteins, sofern keine anderen Werte an die Importparameter über-
geben werden, verwendet. Für den Fall, dass man die Vorschlagswerte nicht
verwenden möchte, können diese beim Start des Testbausteins einfach über-
schrieben werden.
Darüber hinaus wurde ein Exportparameter vergeben. Dies erleichtert die Ver-
wendung von Testbausteinen in Testabläufen.
206
Sandini Bib
207
Sandini Bib
8.3 Einfacher CATT
208
Sandini Bib
Hinweis: Auch hier ist es zweckmäßig, sich die Nummer des neu angelegten
Kreditors zu notieren; sie wird im weiteren Verlauf der Arbeit benötigt.
209
Sandini Bib
8.4 Komplexer CATT-Ablauf
Innerhalb der Transaktion Kreditor ändern besteht auf diesem Dynpro die Op-
tion, festzulegen, welche Kreditorendaten durch diese Transaktion geändert
werden sollen. Hier sind nun folgende Daten einzugeben:
◗ Kreditor 100134 (= Fa. Test AG)
◗ Allgemeine Daten: Anschrift anklicken
Im Rahmen der Transaktion FK02 (Kreditor ändern) soll also die Anschrift
des Kreditors »Firma Test AG« geändert werden. Deshalb klickt man An-
schrift in der Auswahl Allgemeine Daten an.
G Die Eingaben sind mit der (¢)-Taste oder durch Anklicken des grünen Ha-
kens auf dem Dynpro links oben zu bestätigen.
Es erscheint nun ein Dynpro, das uns aus der Transaktion Kreditor anlegen be-
reits bekannt ist. Es beinhaltet die bereits eingebenen Daten aus der Auf-
zeichnung des Testbausteins.
H Nun ändert man auf diesem Dynpro die Adresse der »Firma Test AG« wie folgt:
◗ Straße: Bonner Straße 111
◗ Ort: Düsseldorf
◗ Postleitzahl: 10000
210
Sandini Bib
I Die Eingaben sind mit der (¢)-Taste oder durch Anklicken des grünen Ha-
kens auf dem Dynpro links oben zu bestätigen.
J Sichern der Änderungen durch Betätigung des gelben Icons links neben dem
grünen Pfeil.
K Nun verzweigt man zum nächsten Dynpro. Nachdem im nächsten Schritt
der neu angelegte Testbaustein einer Syntaxprüfung unterzogen und er als
lokales Objekt entsprechend den vorherigen Ausführungen angelegt wurde,
notiert man sich die Nummer des neu angelegten Testbausteins. Die Num-
mer lautet: KBC02107.
Dann verzweigen Sie bitte in den bereits bekannten Attributspflegebild-
schirm zu diesem neu angelegten Testbaustein. Dort kontrolliert man die At-
tribute des Testbausteins. Auch hier sei auf die entsprechenden Ausführun-
gen verwiesen.
L Nach der erfolgter Kontrolle der Attribute navigieren Sie bitte in den Funk-
tionsbildschirm des Testbausteins KBC02107.
M Durch einen Doppelklick auf Objekt FK02 verzweigt das System in den Bild-
schirm Details Funktion TCD Testbaustein KBC00269. Hier können, wie in den
vorherigen Ausführungen bereits erläutert, die einzelnen Dynpros, die wäh-
rend der Aufzeichnung durchlaufen wurden, aufgerufen, ihr Inhalte näher
betrachtet und, falls notwendig, entsprechend abgeändert werden. Zu
Übungszwecken ist es empfehlenswert, nochmals durch die einzelnen Dyn-
pros zu navigieren.
N Hier stellt sich nun primär die Frage, welche Parameter für diesen Testbau-
stein definiert werden müssen, um ihn möglichst flexibel zu gestalten. Wir
211
Sandini Bib
8.4 Komplexer CATT-Ablauf
212
Sandini Bib
O Aus den vorherigen Ausführungen ergibt sich, dass es sinnvoll ist, die Kre-
ditorennummer in diesem Testbaustein als Importparameter zu definieren,
um den Testbaustein Kreditor ändern um einiges flexibler zu gestalten. Da-
durch wird auch die eventuelle Einbindung des Bausteins in mögliche Test-
abläufe erleichtert. Falls im Rahmen des Testbausteins auch die Adresse des
jeweiligen Kreditors überprüft und eventuell geändert werden soll, sind
auch hier die bisher eingetragenen Festwerte für die Straße, den Ort und die
Postleitzahl des Kreditors durch entsprechende Importparameter zu erset-
zen. Auf die bisherigen Ausführungen sei hier verwiesen. Hier ist aber zu-
nächst nur der besprochene Importparameter für das Feld Kreditorennummer
zu definieren. Wie man dabei vorgeht, wurde bereits besprochen.
P Auf dem folgenden Dynpro Pflegen Eingabewerte SAPMF02K 0110 Testbau-
stein KBC02107 wird auf eine Parametrisierung zunächst verzichtet (siehe
Abbildung 8.29).
Q In der Übersicht Importparameter finden sich dann die in Abbildung 8.30 ge-
zeigten Eintragungen. Wie man dort hin gelangt, wurde bereits gezeigt.
213
Sandini Bib
8.4 Komplexer CATT-Ablauf
214
Sandini Bib
7 sei in diesem Kontext ebenfalls verwiesen. Durch diese Referenzierung des Test-
bausteins im Testablauf ist es möglich, im Testablauf alle Importparameter des
Testbausteins mit Werten zu versorgen. Man kann dazu Importparameter des Te-
stablaufs verwenden oder Festwerte eingeben. Sofern keine Angaben gemacht
werden sollen, werden die Vorschlagswerte des Testbausteins benutzt. Des Wei-
teren kann man die Exportparameter des Testbausteins verwenden, um Informa-
tionen aus dem Testbaustein an lokale Variablen des Testablaufs zu übergeben.
A Menüpfad: WERKZEUGEpABAP/4-WORKBENCH
B TESTpTEST WORKBENCHpCATT-ABLÄUFE
C Anlegen
Dadurch erscheint zunächst der Attributspflegebildschirm. Bei der Erstel-
lung eines Testablaufs werden die Attribute im Gegensatz zur Aufzeichnung
von Transaktionen nicht automatisch vom R/3-System gepflegt, sondern
müssen vom Anwender manuell eingepflegt werden. Hier ist besonders zu
beachten, dass im Falle des Anlegens eines Testablaufs unter dem Attibut
Kennzeichen das Kästchen Testbaustein nicht markiert ist. Andernfalls geht
das R/3-System davon aus, dass es sich bei dem vorliegenden CATT-Objekt
um einen Testablauf handelt. Es empfiehlt sich daher, die Inhalte des Attri-
butspflegebildschirm genauestens im Auge zu behalten.
215
Sandini Bib
8.4 Komplexer CATT-Ablauf
216
Sandini Bib
Der Testbaustein KBC02106 liefert als Resultat eine durch die Transaktion
FK01 generierte Kreditorennummer. Diese Kreditorennummer wird dem
Exportparameter &LIFNR als Wert zugewiesen. Damit dieser Exportpara-
217
Sandini Bib
8.4 Komplexer CATT-Ablauf
218
Sandini Bib
219
Sandini Bib
8.4 Komplexer CATT-Ablauf
220
Sandini Bib
Felder Daten
Testablauf KBC00271
D Ausführen (F8)
E Eingabe folgender Daten in die entsprechenden Felder:
Felder Daten
F Ausführen (F8)
G Eingabe folgender Daten in die entsprechenden Felder:
Felder Daten
KBC02108 Markieren
221
Sandini Bib
8.4 Komplexer CATT-Ablauf
tor an und ändert ihn anschließend. Will man aber über den Testablauf mehrere
Kreditoren gleichzeitig anlegen, so müssen hierzu Varianten verwendet wer-
den. Man unterscheidet dabei zwischen internen und externen Varianten.
Interne Varianten
Zunächst bilden die internen Varianten die Basis folgender Überlegungen. Bei
der Aufzeichnung der Transaktion FK01 (Kreditor anlegen) wurden die in der
Transaktion vorgenommenen Dateneingaben in den Testablauf als Festwerte
übernommen. Wenn man diese Eingaben variabel gestalten möchte, müssen im
Testbaustein die bereits besprochenen Importschnittstellen definiert werden,
die mit den notwendigen Initialwerten versorgt werden können. Beim Starten
von Testabläufen besteht aber auch die Möglichkeit, die Importparameter direkt
mit Werten zu versehen. Zusätzlich können Varianten angelegt werden, in de-
nen dann spezielle Werte für die Importparameter im System abgespeichert
werden. Diese werden beim Start des Testablaufs mit aktivierten Varianten an
die entsprechenden Importparameter übergeben. Es können maximal 99 interne
Varianten zu einem Testablauf angelegt werden.
Felder Daten
Testablauf KBC02108
D Ändern
E Menüpfad: SPRINGENpVARIANTEN. Das System verzweigt dadurch in die Pfle-
getransaktion für Varianten namens Pflegen Varianten zu Testablauf KBC02108.
In der Statuszeile dieses Dynpros erscheint der Hinweis, dass zum vorliegen-
den Testablauf KBC02108 noch keine (internen) Varianten existieren.
F Duch Aufruf der Funktion Anlegen gelangt man in das Dynpro namens An-
legen Variante zu Testablauf KBC02108 (vgl. Abbildung 8.39). Hier wird eine
Auflistung sämtlicher Importparameter des Testablaufs erzeugt. In der Sta-
tuszeile erscheint der Hinweis, dass Variante 01 noch nicht belegt ist. Die Im-
portparameter können nun im Rahmen der Festlegung der Variante 01 mit
Werten versehen werden.
222
Sandini Bib
Variante 01
Felder Daten
Name Oberniedermaier KG
Suchbegriff ONM KG
Ort Mühldorf
Postleitzahl 84453
UmsatzsteuerID.Nr. DE987654321
223
Sandini Bib
8.4 Komplexer CATT-Ablauf
I Es schließt sich die Eingabe einer Kurzbeschreibung für die Variante und die
Pflege der Parameter mit den Werten aus der Musterliste an, sofern sie vom
Vorschlagswert abweichen. Um weitere zwei Varianten 02 und 03 zu verein-
baren, sind folgende Werte einzugeben:
Variante 02
Felder Daten
Suchbegriff Kerni
Straße Dorfstraße 9
Ort Karlsfeld
Variante 03
Felder Daten
Name Schmidt
Suchbegriff Schmidt
Hier ist jeweils die Funktion Anlegen zu betätigen. Außerdem ist es empfeh-
lenswert, auch hier eine Kurzbeschreibung für die Varianten einzugeben
und die Parameter mit den Werten aus der Musterliste zu pflegen, sofern sie
vom Vorschlagswert abweichen. Sowohl bei Variante 02 als auch bei Varian-
te 03 wurden einige Felder bewusst nicht mit Werten belegt. Hier übernimmt
das R/3-System bei Abspielen der Varianten automatisch die Vorschlags-
werte der Importparameter aus dem Testablauf KBC02108. In diesem Zu-
sammenhang ist das folgende Testprotokoll zum Testablauf KBC02108 samt
Varianten genauer zu betrachten. Auf die Darstellung der Dynpros hinsicht-
lich des Anlegens der Varianten 02 und 03 wurde hier verzichtet, da sie den
vorhergehenden entsprechen.
J Die Varianten werden hier gesichert.
224
Sandini Bib
Felder Daten
Testablauf KBC02108
D Ausführen
E Auf dem Startbildschirm kann nun bei der Festlegung der Startoptionen in
der Gruppe Varianten gewählt werden, ob der Testablauf ohne, mit allen
oder mit einer speziellen Variante gestartet werden soll. In vorliegendem Fall
wählt man den Auswahlknopf Alle.
225
Sandini Bib
8.4 Komplexer CATT-Ablauf
F Das System führt den Testablauf wie gewohnt aus. Nach Beendigung des
Testablaufs wird von System ein Protokoll erzeugt. In diesem Protokoll wer-
den vier Abläufe aufgelistet. Der erste Ablauf entspricht dem Ablauf mit den
Startwerten, der zweite, dritte und vierte Ablauf entspricht jeweils einer der
Varianten Nr. 01, Nr. 02 und Nr. 03. Dabei wird der Name der Variante hinter
dem jeweiligen Ablauf im Protokoll ausgegeben. Es empfiehlt sich, das Test-
protokoll (Abbildung 8.41 und 8.42) näher zu betrachten.
G Überprüfung der Arbeit.
Bisher wurde illustriert, wie interne Varianten angelegt und wie Testabläufe mit
internen Varianten gestartet werden können. Mithilfe der internen Varianten ist
es möglich, verschiedene Testversionen zu erzeugen, die dann bei einem Testab-
lauf verwendet werden können. Dadurch können die Reaktionen des zu testen-
den Ablaufs auf verschiedene Eingabemodifikationen hin untersucht werden.
226
Sandini Bib
Externe Varianten
Externe Varianten eröffnen die Möglichkeit, Varianten für die Importparameter
227
Sandini Bib
8.4 Komplexer CATT-Ablauf
Felder Daten
Testablauf KBC02108
D Ändern anklicken
E Menüpfad: SPRINGENpEXTERNE VARIANTENpVORSCHL. EXPORTIEREN
F Eingabe folgender Daten in die entsprechenden Felder:
Felder Daten
G Übertragen anklicken
Hinweis: Nun ist es erforderlich, nach MS-EXCEL zu wechseln. Dort öffnet
man die Datei C:\temp\KBC02108.TXT. Nun ist im Fenster Dateityp die Opti-
on Textdateien (*.prn, *.txt, *.csv) zu wählen. MS-EXCEL wird nun versuchen,
die Datei im EXCEL-Format einzulesen. Dazu drückt man einfach zweimal die
Drucktaste WEITER und im Schritt 3 des Assistenten die Drucktaste ENTER.
Durch Doppelklick auf das File KBC02108.TXT navigiert EXCEL in folgende
EXCEL-Tabelle:
Abbildung 8.43
EXCEL-Tabelle zum Testablauf KBC02108
228
Sandini Bib
Hinweis: Obige EXCEL-Datei besteht aus sechs Spalten und drei Zeilen. In
der ersten Zeile sind die Namen der Importparameter eingetragen, in der
zweiten Zeile die Bezeichnungen bzw. Beschreibungen der Importparame-
ter. In der dritten und letzten Zeile befinden sich die von Ihnen bei der Auf-
zeichnung gewählten Vorschlagswerte. In den folgenden Zeilen können pro
Importparameter unterschiedliche Eingabewerte angegeben werden. Wer-
den einzelne Zellen in einer Zeile freigelassen, so übernimmt das System die
Vorschlagswerte für diese Zeile. Die Tabelle ist wie folgt aufzubauen:
229
Sandini Bib
8.4 Komplexer CATT-Ablauf
Felder Daten
Testablauf KBC02108
D Ausführen
E Menüpfad: SPRINGENpEXTERNE VARIANTENpEINBINDEN
F Eingabe folgender Daten in die entsprechenden Felder:
Felder Daten
Felder Daten
Varianten Ohne
I Ausführen
Hinweis: Hier muss man jedes aufgerufene Dynprobild jeweils mit der (¢)-
Taste bestätigen. Dabei kann beobachtet werden, wie der Batch-Input die
einzelnen Felder automatisch füllt. Das Szenario wird dreimal durchlaufen
und zwar mit den Werten aus den Zeilen 4 und 5 der EXCEL-Datei. Die Vor-
schlagswerte aus der dritten Zeile werden nicht ausgeführt!
J Folgendes Protokoll wird am Ablaufende ausgegeben:
230
Sandini Bib
Felder Daten
E Neue Einträge
231
Sandini Bib
8.5 Pflege von Customizing–Tabellen über Dynpros bzw. Transaktionen
Felder Daten
KKBR 0001
RKI 001
KG 01
Saisonfaktor 50
G Sichern
H Abbrechen
I Möchten Sie wirklich abbrechen?: Ja.
J Zurück
K Aufzeichnung beendet
L (¢)
M Eingabe folgender Daten in die entsprechenden Felder:
Felder Daten
Stichwort A020020435
Applikation SD
Subapplikation BF
Komponente CM
232
Sandini Bib
Felder Daten
E Positionieren
F Eingabe folgender Daten in die entsprechenden Felder:
Felder Daten
KKBR 0001
RKI 001
KG 01
Felder Daten
Saisonfaktor 60
J Sichern
K Zurück
L Zurück
M Aufzeichnung beendet mit (¢)
233
Sandini Bib
8.5 Pflege von Customizing–Tabellen über Dynpros bzw. Transaktionen
Felder Daten
Stichwort A020020435
Applikation SD
Subapplikation BF
Komponente CM
Felder Daten
Testablauf KBC00036
E Kopieren anklicken
F Eingabe folgender Daten in die entsprechenden Felder:
Felder Daten
Stichwort A020020435
Applikation SD
234
Sandini Bib
Felder Daten
Subapplikation BF
Komponente CM
G Funktionen anklicken
Hinweis: Definition der Schlüsselfelder als Importparameter.
H Eingabe folgender Daten in die entsprechenden Felder und Bestätigung mit
(¢):
Felder Daten
Funktion CHETAB
Objekt T691F
Kreditkontrollbereich &
Felder Daten
Parametername &KKBER
Vorschlagswert 0001
Felder Daten
Kreditmanagement: &
Risikoklasse
Felder Daten
Parametername &CTLPC_CM
Vorschlagswert 001
235
Sandini Bib
8.5 Pflege von Customizing–Tabellen über Dynpros bzw. Transaktionen
Felder Daten
Felder Daten
Parametername &CRMGR_CM
Vorschlagswert 01
N Zurück
O Eingabe folgender Daten in die entsprechenden Felder:
Felder Daten
Referenz 1 KBC00249
Felder Daten
Referenz 2 KBC00250
236
Sandini Bib
Felder Daten
Stichwort A020020435
Applikation SD
Subapplikation BF
Komponente CM
Felder Daten
Funktion SETTAB
Objekt T691F
Felder Daten
Kreditkontrollbereich &
Felder Daten
Parametername &KKBER
Vorschlagswert 0001
237
Sandini Bib
8.5 Pflege von Customizing–Tabellen über Dynpros bzw. Transaktionen
Felder Daten
Kreditmanagement: &
Risikoklasse
Felder Daten
Parametername &CTLPC_CM
Vorschlagswert 001
Felder Daten
Felder Daten
Parametername &CRMGR_CM
Vorschlagswert 01
Felder Daten
Saisonfaktor in % 50
238
Sandini Bib
Felder Daten
Funktion RESTAB
Objekt %
Testablauf KBC00251
D Ausführen
E Eingabe folgender Daten in die entsprechenden Felder:
Felder Daten
Varianten Ohne
Kreditgruppe Vorgang 02
239
Sandini Bib
8.6 Sonstige Funktionen
Felder Daten
Felder Daten
KBC00251 Markieren
Felder Daten
240
Sandini Bib
Felder Daten
Applikation SD
Subapplikation BF
Komponente CM
Felder Daten
CATT-Ablauf Markieren
G Auswählen ((¢))
Felder Daten
Testablauf F4
Felder Daten
Stichwort A020020435
E Ausführen
241
Sandini Bib
8.6 Sonstige Funktionen
Felder Daten
CATT-Ablauf Markieren
G Auswählen ((¢))
Felder Daten
E (¢)
F Eingabe folgender Daten in die entsprechenden Felder:
Felder Daten
CATT-Ablauf-Nr. KBC00251
Quellsprache D
Zielsprache E
242
Sandini Bib
Felder Daten
Testablauf KBC00251
D Transportieren
E Eingabe folgender Daten in die entsprechenden Felder:
Felder Daten
F Transportieren ((¢))
Hinweis: Es erscheint nun die Abfrage Änderungsauftrag. Nun ist es möglich, ei-
nen bereits existierenden Transportauftrag auszuwählen bzw. einen neuen
Transportauftrag anzulegen. Anschließend muss der Transportauftrag noch
freigegeben werden. Hier wendet man sich am besten an den zuständigen Sys-
temverwalter. Er erläutert, wie die physikalische Datei auf das gewünschte Ziel-
system transportiert werden kann.
243
Sandini Bib
8.7 Remote Start
C Zur Parameter-ID RFC ist als Parameter eine bestimmte Destination zu defi-
nieren. Diese wird dann bei jeder Anmeldung vorgeschlagen. Der Menüweg
hierzu ist: SYSTEM pBENUTZERVORGABEN pBENUTZERPARAMETER.
244
Sandini Bib
8.8 Problembehandlungen
245
Sandini Bib
8.8 Problembehandlungen
rameter &E01 in das Feld Verkaufsbeleg der Tabelle übergeben wird. Bei Vorhan-
densein der Information läuft der CATT-Test ohne Meldung weiter, bei Fehlen
der Auftragsnummer wird eine Fehlermeldung ausgegeben.
246
Sandini Bib
247
Sandini Bib
8.9 Protokoll anzeigen
248
Sandini Bib
CATT-Management
9
CATT bietet zur Verwaltung, Auswertung und Organisation aller erstellten, ge-
prüften und ungeprüften Testabläufe und -bausteine eine Managementfunktio-
nalität an. Mit diesem komfortablen Managementtool von CATT kann der An-
wender folgende Aktionen ausführen:
◗ Massenstart
◗ Repository-Infomationssystem
◗ Ablaufstatistik
◗ Transaktionsstatistik
◗ Rangfolgepflege
◗ Transportvorbereitung
◗ Übersichtsliste
Man gelangt über folgenden Menüpfad aus dem CATT-Einstiegsbildschirm in
das nachfolgende beschriebene CATT-Management-Tool: HILFSMITTEL pMANA-
GEMENT.
9.1 Massenstart
Diese Funktion ermöglicht es dem Anwender, automatisch mehrere Testabläufe
nach verschiedenen Selektionskriterien nacheinander zu starten. Selektiert wer-
den können dabei grundsätzlich nur CATT-Testabläufe, aber keine Testbaustei-
ne. Dem liegt die Überlegung zugrunde, dass das erfolgreiche Abspielen von
Testbausteinen im Allgemeinen auf bestimmten Customizing-Einstellungen be-
ruht, die nicht notwendigerweise vorhanden sein müssen.
249
Sandini Bib
9.2 Einzelstart
9.2 Einzelstart
Falls man Testbausteine alleine abspielen möchte, so kann man dies für einen
Testbaustein im Rahmen der CATT-Transaktion tun. Wenn das Feld »Listenver-
arbeitung erwünscht« markiert ist, kann der Benutzer aus der ausgewählten Se-
lektion einzelne CATT-Abläufe vom Massentest ausnehmen.
9.3 Selektion
9.3.1 Repository-Informationssystem
Auf dem nachfolgend abgebildeten Selektionsbildschirm (Abbildung 9.1) be-
kommt man zunächst folgende Kriterien hinsichtlich einer Auswahl von CATT-
Testabläufen angeboten:
◗ Testablaufnummer
◗ Applikation
◗ Subapplikation
◗ Komponente
◗ Verantwortlicher
◗ Erfasser oder Änderer
◗ Nutzbarkeit
Neben diesen allgemeinen Selektionskriterien, die auch bei der Suche im Repo-
sitory-Informationssystem zur Verfügung stehen wie z.B. Applikation oder Er-
fasser des Ablaufs stehen einige weitere Auswahlkriterien zur Verfügung:
◗ Laufzeitstatistik
◗ Prüfkennzeichen
◗ Varianten
◗ Rangfolgesteuerung und
◗ Durchführung
250
Sandini Bib
Kapitel 9 – CATT-Management
251
Sandini Bib
9.3 Selektion
9.3.2 Laufzeitstatistik
Durch die Selektion über Laufzeitstatistik wird bei jedem CATT-Ablauf eine mi-
nimale, mittlere und maximale Laufzeit ausgegeben, sofern man das Feld Listen-
verarbeitung erwünscht markiert hat. Diese Daten resultieren aus vorherigen Zeit-
erfassungen, die beim Abspielen des betreffenden CATT-Ablaufs im aktuellen
System angefallen sind.
9.3.3 Laufzeitsummierung
Bei der Laufzeitsummierung werden Varianten nicht mit berücksichtigt. Das
gilt auch für Abläufe, die noch nie bzw. vor längerer Zeit im aktuellen System
gelaufen sind. Sie werden als neu eingestuft. Ist dies der Fall, liegen keine Zeit-
daten vor.
9.3.4 Listenverarbeitung
Wenn man auf dem Bildschirm das Feld Listenverarbeitung erwünscht markiert,
erscheint bei der ersten Auswahl von Ausführen eine Liste aller selektierten Te-
stabläufe. Aus dieser Liste kann man noch vor dem eigentlichen Start einzelne
Abläufe aus dem Massentest durch Markierung per Doppelklick ausschließen.
252
Sandini Bib
9.3.6 Prüfkennzeichen
Im Repository-Informationssystem besteht die Option, nur Testabläufe auszu-
wählen, die ein Prüfkennzeichen besitzen bzw. nicht besitzen. Es kann auch
nach dem Prüfzeitraum selektiert werden, in dem das selektierte Prüfkennzei-
chen vergeben wurde. Dabei kommt es unter Umständen vor, dass das Prüf-
kennzeichen zu einem Zeitpunkt vergeben wurde, der nicht in dem angegebe- Kapitel 9 – CATT-Management
nen Zeitraum liegt. Dann wird diese CATT-Prozedur nicht beim Testablauf
berücksichtigt.
Will man unabhängig vom Prüfkennzeichen CATTs selektieren, so ist es zwin-
gend erforderlich, in das Feld Prüfkennzeichen den Eintrag »*« vorzunehmen und
die beiden Prüfzeitraumfelder zu löschen. Das Prüfkennzeichen ist ein Feld in
den CATT-Attributen und dort unter dem Button VERWALTUNGSDATEN abgelegt.
Man unterscheidet beim Status zwischen:
◗ geprüft
◗ fehlerhaft
◗ ungeprüft
253
Sandini Bib
9.4 CATT-Statistik
Im Rahmen dieses Reports entspricht PASS dem Status geprüft, FAIL dem Sta-
tus fehlerhaft und KEIN EINTRAG beim Prüfkennzeichen dem Status unge-
prüft.
9.3.7 Varianten
Auch Varianten eines Testablaufs tragen ein Prüfkennzeichen. Diese Prüfergeb-
nisse der Varianten können mit einbezogen werden, indem das Kennzeichen
mit Variantenprüfkennzeichen gesetzt wird.
Das dann entstehende globale Prüfkennzeichen wird wie folgt gebildet: Ist die
Defaultparametrisierung oder eine aktive Variante im Status »ungeprüft«, so
wird der Ablauf insgesamt als »ungeprüft« bewertet. Falls der Ablauf nicht den
Status »ungeprüft« hat, so wird der Ablauf mit »Fail« bewertet, falls die Default-
parametrisierung oder mindestens eine Variante mit »Fail« bewertet worden
sind. Nur wenn die Defaultparametrisierung und alle Varianten mit »PASS« be-
wertet worden sind, liegt das globale Prüfkennzeichen »PASS« vor. Das globale
Prüfkennzeichen ist dann das Prüfdatum, das zu der Variante oder der Default-
parametrisierung gehört, die das globale Prüfkennzeichen definiert hat. Wird
das Kennzeichen mit Variantenprüfkennzeichen nicht gesetzt, so gilt das Prüf-
kennzeichen der Defaultparametrisierung mit dem zugehörigen Prüfdatum.
Wird keines der beiden Kennzeichen markiert, so wird bei allen ausgewählten
Abläufen nur die Defaultparametrisierung abgespielt. Durch Markieren des
Kennzeichens »Alle Varianten zusätzlich abspielen« werden neben der Defaultpa-
rametrisierung aller ausgewählten Abläufe auch alle aktiven Varianten mit ab-
gespielt. Wird das Kennzeichen »Nur abspielen der Variante XX« markiert, so
werden nur Abläufe selektiert, bei denen Varianten XX aktiv ist (XX steht dabei
für eine zweistellige Zahl zwischen 0 und 99). Es wird in diesem Fall die De-
faultparametrisierung nicht berücksichtigt, sondern nur die ausgewählte Vari-
ante. Das Abspielen einer ausgewählten Variante für alle selektierten Abläufe
bietet sich insbesondere dann an, wenn Klassifizierungen z.B. nach Ländern
oder Branchen sich im Parameternamen niederschlagen und alle selektierten
Abläufe diese Spezialparameter in einer einheitlichen Variantennummer abge-
legt haben.
9.4 CATT-Statistik
Hier ist zwischen
◗ Statusanalyse und
◗ an Transaktionscode und Bildschirmbildern orientierter Statistik
zu differenzieren:
254
Sandini Bib
9.4.1 Statusanalyse
In CATT kann eine Statusanalyse bezüglich aller erstellten Testbausteine und
Testabläufe durchführt werden. Dazu wird der Report RSCATSTA verwendet.
Dieser Report erstellt eine statistische Auswertung über CATT.
Über die entsprechend ausgewählte Applikation wird eine Liste mit einer Prüf-
kennzeichenauswertung ausgegeben. Sie ist abhängig vom Verantwortlichen,
dem Erfasser oder dem Änderer und der Nutzbarkeit. Ausgehend von dieser
Statusanalyseliste kann man ins Protokoll verzweigen oder die grafische Prüf-
historie aufrufen.
255
Sandini Bib
9.4 CATT-Statistik
Nach Auswahl des Befehls »Ausführen« dieser Selektion erscheint das folgende
Übersichtsbild:
256
Sandini Bib
257
Sandini Bib
9.4 CATT-Statistik
258
Sandini Bib
Für jede Applikation, Subapplikation oder Komponente kann man sich die ent-
sprechenden Transaktionen oder Dynpros anzeigen lassen. In einem weiteren
Dialogfenster werden diese aufgezeigt, und zwar einschließlich der Angabe,
wie oft die entsprechende Transaktion bzw. das entsprechende Dynpro insge-
samt aufgerufen wurde und wie viele CATTs diese Transaktion direkt aufrufen.
Von hier aus gelangt man mit der Auswahl CATTS ANZEIGEN wiederum auf das
Dialogfenster zur Übernahme für den Massenstart.
Bei der Auswahl der Drucktaste MASSENTEST STARTEN werden in einem Dialog-
fenster die ausgewählten CATTs angezeigt, die daraufhin weiter eingeschränkt
werden können. Bei AUSFÜHREN erscheint ein weiteres Dialogfenster, mittels
dessen man den Abspielmodus, die Protokollart und die Abspielparametrisie-
rung einstellen kann. Bei der Abspielparametrisierung kann man wählen, mit
welchem Parametern die CATT-Abläufe abgespielt werden sollen: mit den De-
faultparametern, mit allen Varianten oder mit beiden.
Ein wiederholtes Anklicken von AUSFÜHREN startet die CATT-Abläufe.
Kapitel 9 – CATT-Management
259
Sandini Bib
9.4 CATT-Statistik
Für die Anwendung SD – Vertrieb wurden dieser Liste zufolge aus der Tabelle
CATA 169 Testabläufe bzw. Testbausteine selektiert. Diese ausgewählten
CATTs ruften direkt und auch indirekt (also durch CATTs, auf welche sie refe-
rieren) 60 verschiedene Transaktionen und 345 verschiedene Dynpros auf.
Aus obigem Dynpro heraus können folgende Daten ermittelt werden:
◗ Nummer des entsprechenden CATT-Testablaufs bzw. -testbausteins, der Er-
fasser und Verantwortliche des CATTs sowie das jeweilige Prüfkennzeichen,
welches detaillierten Aufschluss über den Testzustand des entsprechenden
Ablaufs gibt
260
Sandini Bib
MRO1 Eingangsrechnung 29 9 4
Bearbeiten
MBO1 Wareneingang 26 1 1
Zur Bestellung buchen
261
Sandini Bib
9.5 CATT-Rangfolge-Pflege
Sollen mehrere CATT-Abläufe als Vor- oder Nachspann definiert werden, so ist
dies über die so genannte »Rangfolge-Pflege« möglich. Man kann hier für eine
Auswahl von Testabläufen die Rangfolge festlegen. Falls die Rangfolgesteue-
rung eingestellt wurde, werden alle CATT-Abläufe gemäß der eingestellten Se-
lektion ausgewählt. Befinden sich darunter CATT-Abläufe mit Vor- oder Nach-
spannkennzeichen, werden diese berücksichtigt und in entsprechend geordneter
Reihenfolge abgespielt.
Wird das Feld Totalvorspann/Totalnachspann markiert, so werden zusätzlich und
unabhängig von der eingestellten Selektion alle CATT-Abläufe mit hinzuge-
nommen, die ein Vorspannkennzeichen »1« oder »2« oder ein Nachspannkenn-
zeichen »8« oder »9« tragen.
Möchte man auch CATT-Abläufe mit Vorspannwert »3« oder »4« auswählen,
müssen diese der Selektion genügen. Will man viele Testabläufe gleichzeitig als
Vor- oder Nachspann definieren, kann man dies für eine bestimmte Anwen-
dung durch die Auswahl der Funktion CATT-Rangfolgepflege-Vor-/Nachspann
durchführen. Alternativ kann auch direkt ein Eintrag auf dem Attributspflege-
bildschirm des jeweiligen Testablaufs vorgenommen werden.
262
Sandini Bib
Ist der Berater mit der angebotenen Reihenfolge nicht einverstanden, so besteht
die Option, innerhalb der CATT-Attribute das Feld Kontext zu markieren und
einen Wert zwischen 1 und 4 zu vergeben. Dabei bedeutet 1 die höchste Vor-
spannstufe und 4 die niedrigste Vorspannstufe. Für den Nachspann sind Werte
zwischen 6 und 9 vergebbar.
Mittels des Reports RSCATVSP können CATT-Abläufe als Vorspann oder als
Nachspann definiert werden. Diese CATT-Abläufe werden dann vor bzw. nach
der ausgewählten Selektion gestartet. Von den angebotenen vier Rangfolge-
steuerungen ist höchstens eine auszuwählen. Andernfalls wird eine Fehlermel-
dung ausgegeben. Wird keine Rangfolgesteuerung gewählt, so werden alle
CATT-Abläufe gemäß der eingestellten Selektion mit einbezogen. Befinden sich
darunter CATT-Abläufe mit Vorspann- oder Nachspannkennzeichen, so wer-
den diese berücksichtigt und in geordneter Reihenfolge abgespielt.
9.6 CATT-Transportvorbereitung
Der Report RSCATTRA ermöglicht es, mehrere Testabläufe in einen gemeinsa-
men Auftrag zu stellen und zu transportieren. Dabei werden alle zu einem Test-
ablauf gehörenden Testbausteine in den gleichen Auftrag eingetragen, sofern
der Testablauf weiterhin den Auswahlkriterien entspricht. Aus dem Auftrag
kann man einzelne Testabläufe herausnehmen, indem man in der angezeigten
Liste einen Doppelklick auf den betreffenden Testablauf ausführt.
Alle zu einem Ablauf gehörigen Modelle werden mit in die Korrektur eingetra-
gen, sofern der Ablauf ausgewählt bleibt. Wird »Laufzeit« markiert, so besteht
für den Anwender die Möglichkeit, auch Laufzeiten der CATTs bei der Zusam-
mensetzung der Korrektur zu berücksichtigen.
Wird »Neuer Abl. Einschl. verw. Modelle« markiert, so werden nur Abläufe, die
der Selektion entsprechen, einschließlich aller verwendeten Modelle mit in die
Korrektur eingebunden.
Falls die Taste »Nur abl. Einschl. verw. Modelle« nicht markiert wird, so werden
auch neben den Abläufen (einschl. verwendeter Modelle) auch alle Modelle
Kapitel 9 – CATT-Management
263
Sandini Bib
9.7 Übersicht
9.7 Übersicht
Eine Liste der Testabläufe, Testbausteine und manuellen Testfälle kann im Rah-
men des CATT-Managements separat oder gemeinsam in einer Funktionsliste
generiert werden. Die Objekte sind gemäß ihrer Zuordnung in der Funktions-
liste (Felder: Applikation, Subapplikation, Komponente) sortiert. Auf dem Selekti-
onsbildschirm können Testabläufe, Testbausteine und manuelle Testfälle ent-
weder einzeln oder gemeinsam gemäß ihrer Zuordnung in die Funktionsliste,
also entsprechend ihrer Einträge in den Feldern Applikation, Subapplikation und
Komponente selektiert werden. Zusätzlich kann noch der Erfasser angegeben
werden.
264
Sandini Bib
In der anschließend erzeugten Liste werden die nach der Applikation sortierten
und selektieren Objekte angezeigt. Diese Liste zeigt pro Eintrag den Kurztext
und den Erfasser. Falls es sich um einen manuellen Testfall handelt, wird der
Text »manuell« nach der Spalte »Erfasser« angezeigt. Der Text »freig« kenn-
zeichnet einen Testbaustein, der das Freigabekennzeichen enthält. Testbaustei-
ne ohne Freigabekennzeichen enthalten keinen Eintrag in dieser Spalte.
Die vom System angegebene Liste sehen Sie in Abbildung 9.11. Kapitel 9 – CATT-Management
Testabläufe werden mit einem grafischen Kennzeichen in dieser Spalte verse-
hen. Es enthält drei Punkte mit unterschiedlichen Farben, die das Ergebnis der
Prüfkennzeichenvergabe darstellen, wobei grün bedeutet, dass der Testablauf
erfolgreich gelaufen ist. Rot kennzeichnet eine beim Starten fehlerhaft gelaufe-
nen Testablauf und gelb zeigt einen ungeprüften Testablauf. Als weitere Funk-
tion kann über den Eintrag »Auswählen« im Menü Bearbeiten direkt in das in der
Zeile positionierte Objekt verzweigt werden. Durch einen Doppelklick auf das
Ampelsymbol verzweigt das System in den Attributspflegebildschirm des je-
weiligen Testablaufs bzw. -bausteins.
265
Sandini Bib
9.7 Übersicht
a) Manueller Testfall
Der Text wird als manuell hinter der Spalte Erfasser gekennzeichnet.
b) Testbausteine
Testbausteine mit Freigabezeichen erhalten den Eintrag freig.
Testbausteine ohne Freigabezeichen erhalten keinen Eintrag.
c) Testabläufe
Den Angaben auf der gezeigten CATT-Liste zufolge ist der CATT-Testablauf
S1106601 Belegfolge – Export Faktura in SD beim Testen auf einen Fehler gelau-
fen. Hier ist eine Nachbearbeitung des Testablaufs unbedingt erforderlich.
Der Testablauf P3004192 Testablauf Damrath ist ungeprüft.
Folgende Funktionen können aus obiger CATT-Liste heraus angestoßen werden:
◗ Der Inhalt der CATT-Liste kann gedruckt werden. Der Menüpfad hierzu lau-
tet CATT pDRUCKEN.
◗ Die Daten dieser Liste können natürlich auch direkt in einer PC-Datei gesi-
chert werden. Dazu ist folgender Menüpfad zu wählen: CATTp SICHERN in
PC-Datei.
266
Sandini Bib
Kapitel 9 – CATT-Management
267
Sandini Bib
Sandini Bib
Verwaltung von
CATT-Testfällen
10
In allen Phasen eines R/3-Projekts sind intensive Testzyklen mit Funktions- und
Akzeptanztests für den Erfolg des Projekts sehr wichtig. Dies beginnt mit der
Neueinführung eines R/3-Systems und setzt sich bei der ständigen Anpassung
des Systems an die Kundenanforderungen durch Customizing, Modifikation
und Eigenentwicklung fort. Die Durchführung von Tests ist bei R/3-Einfüh-
rungsprojekten also eine sehr wichtige Aktivität, die dabei hilft, das Risiko zu
minimieren, dass Fehler den Geschäftsnutzen verringern. Ziel beim Testen von
Software ist es also, Fehler in derselben zu finden. Ein Fehler wurde gefunden,
wenn bei der Testdurchführung das erwartete Ergebnis (Sollergebnis) nicht mit
dem tatsächlichen Ergebnis (Ist) übereinstimmt. Ein Testvorhaben war erfolg-
reich, wenn es entweder vorhandene Fehler aufgedeckt hat bzw. die Fehlerfrei-
heit der Software gezeigt hat. Zur Unterstützung des Testens stellt die SAP AG
zwei Werkzeuge zur Verfügung: Das bereits beschriebene Computer Aided
Test Tool zum Erstellen, Verwalten, automatischen Ausführen und Protokollie-
ren von Testabläufen und die so genannte »Testworkbench« . Ebenso wie CATT
wird auch die Testworkbench von der SAP AG zusammen mit dem R/3-System
ausgeliefert. Diese Testworkbench wurde entwickelt, um die Fehleraufdek-
kungsrate zu erhöhen. Es handelt es sich dabei um ein Tool zum Planen, Kon-
trollieren und Dokumentieren von Testvorhaben. Automatische Tests, manuel-
le Tests und auch externe Anwendungen, die mittels CATT erstellt wurden,
können anhand der Testworkbench organisiert und verwaltet werden. Dabei
werden die Testszenarien in Testkataloge, Testpläne und Testpakete gegliedert.
Des Weiteren können Dokumentationen zu den Tests in die Testworkbench ein-
gebunden werden. Der Testadministrator plant den gesamten Testvorgang.
Dazu erstellt er die so genannten Testkataloge, von denen ausgehend bis zu den
Testpaketen, welche an die diversen Testausführenden vergeben werden, wei-
ter unterteilt wird. Dies ist natürlich nur dann sinnvoll, falls neben dem Testad-
ministrator noch weitere testende Personen eingesetzt werden.
269
Sandini Bib
10.1 Testkatalog
Die Testworkbench ermöglicht mit all diesen Funktionen eine komfortable Pfle-
ge der verschiedenen Testszenarien über die jeweils aktuelle Release-Version
hinaus. Sie soll folgende Aufgaben erfüllen:
◗ klare Spezifikation der Testvorgaben
◗ vollständige Dokumentation der Testdurchführung
◗ Erstellung einer Testauswertung
◗ Durchführung von Nachtests gewährleisten
Der Einsatz dieses Werkzeugs lohnt sich den Erfahrungen aus der Praxis zufol-
ge schon bei einer kleinen Menge von Testabläufen, weil man bereits hier alle
Testabläufe in einer klaren Form strukturieren kann. Dabei muss folgende Rei-
henfolge bei der Bearbeitung eingehalten werden:
◗ Schritt 1:
Anlegen des Testkatalogs
◗ Schritt 2:
Struktur des Testkatalogs bestimmen
◗ Schritt 3:
CATT-Testabläufe in den Testkatalog einbinden
◗ Schritt 4:
Anlegen des Testplans
◗ Schritt 5:
Anlegen des Testpaketes
◗ Schritt 6:
Zuweisung des Testpakete an den Testausführenden
◗ Schritt 7:
Ausführung der Testpakete
◗ Schritt 8:
Durchführung einer Statusanalyse nach dem Testende
Im Folgenden wird nun jeder dieser Schritte beschrieben.
10.1 Testkatalog
Der Testkatalog ist die oberste Gliederungsform innerhalb der Testworkbench.
Im Testkatalog werden vom Testkoordinator alle Testfälle zusammengefasst.
Die Testfälle werden dabei in einer Baumstruktur, wie sie bereits vom IMG her
bekannt ist, dargestellt. Der Testkatalog ist demnach die Sammlung aller objekt-
bezogenen Testfälle. Er bildet damit auch die Basis aller Testaktivitäten. Im Test-
katalog können sowohl automatisierte als auch manuelle Testfälle verwaltet
werden. Nicht automatisierbare Testvorgänge, wie z.B. technische Tests, lassen
270
Sandini Bib
271
Sandini Bib
10.1 Testkatalog
Bevor man nun einen Testkatalog erstellt, ist das Testszenario detailliert zu pla-
nen. Hier sind folgende Fragen zu klären:
◗ Wer ist für die Testdurchführung verantwortlich?
◗ Welche Testfälle sind im Testszenario enthalten?
◗ Wie sollen die Testfälle strukturiert werden?
◗ Ist die geplante Unterteilung der Testfälle sinnvoll?
◗ Handelt es sich um manuelle und/oder automatische Tests?
◗ Greift ein Testfall auf andere Testergebnisse zurück?
◗ Wenn ja, auf welche?
◗ Bildet der Testkatalog eine prozessorientierte oder eine funktionsorientierte
Sicht ab?
◗ Wie sollen die Testfälle dokumentiert und ausgewertet werden?
Bei der Testplanung ist zu berücksichtigen, dass viele Tests auf den Ergebnissen
von zuvor durchgeführten Tests aufbauen. Die prozessorientierte Sicht ist in
häufigen Fällen eine gute Basis für die Planung des Testkatalogs. In einigen Fäl-
len kann aber auch die funktionsorientierte Sicht eine gute Ausgangsposition
für die Planung sein. Ein Testkatalog ist eine baumartig strukturierte Menge von
Testfällen. Er besteht aus Knoten und Wurzeln. Diese Baumstruktur stellt dabei
eine sinnvolle Untergliederung von Testabläufen oder (manuellen) Testfällen
dar.
272
Sandini Bib
Feld Bedeutung
273
Sandini Bib
10.1 Testkatalog
274
Sandini Bib
10.2 Testplan
Testpläne werden aus dem Testkatalog heraus generiert und stellen in der Regel
eine einmal benötigte release- und zweckbezogene Teilmenge an Testfällen dar.
Folglich bilden sie eine Teilsicht auf den gesamten Testkatalog ab. Sie werden
vom Testkoordinator eingeteilt. Mit den R/3-Testplänen kann der Status jeder
beliebigen Testaktivität während deren Durchführung bis auf die unterste Ebe-
ne, also bis auf die Ebene einzelner konkreter Testfälle, verfolgt werden. Sind in
diesem Zusammenhang OSS-Problemmeldungen (OSS = Online-Service-Sys-
tem) erforderlich, so können hierzu entsprechende Querverweise angelegt wer-
den. Reports über den Testverlauf dienen hierbei der Analyse, Steuerung und
auch Bewertung der einzelnen Testvorgänge.
Mit den drei Säulen CATT, R/3-Testkatalog und den Testplänen kann z.B. im
Rahmen von Releasetests das von Release zu Release kontinuierlich wachsende
Regressionstestpaket gepflegt werden. Alle in diesem Kontext wichtigen Test-
fälle funktionsbezogener Art können demnach in die Tests der folgenden Re-
leases in standardisierter Form mit einbezogen werden
Ein Testplan ist eine Teilmenge des Testkatalogs. In der Regel wird der Testplan
nur einmal benötigt. In ihm werden die Testfälle nach Testzwecken (zeitraum-
und zweckbezogen) organisiert. Zeitraumbezogen bedeutet dabei, dass der Test-
plan z.B. zum Testen einer bestimmten Releaseversion erstellt wird. Zweckbezo-
gen meint, dass sich der Testplan einem bestimmten Thema des Testkatalogs wid-
met, z.B. allen Transaktionen, die dem Erstellen eines Kundenauftrages folgen.
B Nun gibt man den Namen des Testkatalogs an, zu dem man einen Testplan
erstellen möchte.
Beispiel:
C Der Name für den zu erstellenden Testplan wird ebenfalls in das entspre-
chende Feld eingetragen.
Beispiel:
275
Sandini Bib
10.2 Testplan
E Daraufhin erscheint ein Dialogfeld. Dort gibt man eine Kurzbeschreibung für
den Testplan ein. Die Angaben zum Testkatalog wurden bereits vom System
automatisch eingetragen.
Beispiel:
F Dieses Dynpro muss nun durch Betätigen des grünen Hakens bestätigt wer-
den.
G In der Gruppe Auswahl betätigt man nun den Auswahlknopf manuelles Mar-
kieren und führt die Funktion Weiter aus. Daraufhin erscheint die Baumstruk-
tur des angegebenen Testkatalogs.
H Die Teilbereiche in der Baumstruktur, die in den Testplan integriert werden
sollen, werden nun markiert, z.B. SD – Sales and Distribution. Anschließend
wählt man die Funktion Testplan generieren. Damit wird ein Testplan erzeugt,
der nur den Vertriebsbereich betreffende Testbausteine und Testabläufe zum
Inhalt hat.
Diese generierten Testpläne können weiter verfeinert, also in Testpakete unter-
gliedert werden.
276
Sandini Bib
10.3 Testpaket
Auf der Basis der vorbeschriebenen Testpläne können wiederum Testpakete er-
zeugt werden. Diese Testpakete werden letztendlich den Testern zugeordnet.
Aus dem Testplan werden die relevanten Tests für das Testpaket ausgewählt.
Testpakete können einem oder mehreren Testausführenden zugeordnet wer-
den, die dann die im Testplan spezifizierten Testfälle durchführen.
Aus den Testkatalogen, Testplänen und auch Testpaketen heraus können die
Testabläufe und -bausteine gestartet werden. Neben dem von CATT erstellten
Testprotokoll führt die Testworkbench auf der Ebene der Testpakete eine Sta-
tuspflege durch, und das nur dort. Kommt ein Testfall in mehreren Testpakten
vor, so führt das System eine voneinander unabhängige mehrfache Statuspflege
durch. Der Testadministrator erhält anhand der Statusinformationen der Test-
pakete eine Übersicht über den Gesamtstatus des Tests. Nach jedem Test besteht
die Möglichkeit, ein Protokoll über den Test anzulegen.
10.4 Testdurchführung
A Über den Menüpfad WERKZEUGE p ABAP/4 WORKBENCH gelangt man vom
R/3-Startbildschirm in die ABAP/4-Workbench.
B Nun verzweigt man mit TEST p TESTWORKBENCH p TESTDURCHFÜHRUNG in die
277
Sandini Bib
10.5 Statusanalysen durchführen
278
Sandini Bib
◗ OK mit Einschränkungen:
Es bestehen geringfügige Mängel z.B. ergonomische Schwachstellen.
◗ Fehlerhaft / Nachtest erforderlich:
Das Programm enthält gravierende Mängel bzw. Programmfehler.
◗ Nachtest OK:
Beim Nachtest wurde festgestellt, dass frühere Fehler behoben wurden.
Die Statusanalyse in der Testworkbench wird wie folgt durchgeführt:
A Zunächst verzweigt man in eine entsprechende Pflegetransaktion, für die
man die Statusanalyse durchführen möchte. Als Pflegetransaktionen existie-
ren der Testkatalog, der Testplan und das Testpaket.
B Nun gibt man z.B. den Testkatalog XXX und den Testplan YYY an. Für diese
Pflegetransaktionen soll nun eine Statusanalsyse durchgeführt werden. Man
kann natürlich auch die Kombination Testkatalog/Testpaket für die Status-
analyse vorsehen.
C Über HILFSMITTEL p STATUSANALYSE gelangt man in das Einstiegsbild der Sta-
tusanalyse.
D Hier kann der entsprechende Testkatalog und/oder Testplan ausgewählt
werden.
E In dem Feld Auswahlzeitraum kann durch die Angabe eines bestimmten Zeit-
raums explizit selektiert werden, welche Tests in die Statusanalyse miteinbe-
zogen und welche Tests ausgegrenzt werden sollen.
F Anhand der Funktion Ausführen startet man die Statusanalyse. Dabei infor-
miert das System über den Testfortschritt. Sowohl Informationen als auch
der Teststatus werden angezeigt.
279
Sandini Bib
10.6 Testpaket zuordnen
B Hier sind im nächsten Schritt der Name des Testkatalogs und des Testpakets,
die einem Tester zugeordnet werden sollen, einzugeben.
C Funktion Tester zuordnen ausführen
D Eingabe des Testers auf dem Dialogfenster Zuordnung Testpaket an Benutzer.
E Die Schaltfläche Weiter muss betätigt werden.
280
Sandini Bib
281
Sandini Bib
Sandini Bib
Fallstudie zum
praxisnahen Einsatz
von CATT
11
11.1 Testplanung
Der Erfolg von automatisierten Tests mit dem Computer Aided Test Tool ist we-
sentlich von der Qualität der erstellten Testbausteine und Testabläufe abhängig.
In diesem Kontext sind klar definierte, einheitliche Konventionen hinsichtlich
der Erstellung und Parametrisierung der einzelnen Testbausteine unverzicht-
bar, um eine universelle Einsetzbarkeit der Testbausteine zu gewährleisten.
Darum ist eine Planung der einzelnen Schritte vor der eigentlichen Erstellung
der Tests unbedingt notwendig.
Diese Planung stellt darüber hinaus auch die für die Testablauferstellung benö-
tigten Daten und Informationen bereit. Die folgenden Punkte wurden basierend
auf Erfahrungen aus der Praxis entwickelt und mögen als Anregung für die
Durchführung der Testvorbereitung verstanden werden. Die hier nun näher be-
schriebene Vorgehensweise zur Planung von CATT-Projekten wurde in der Pra-
xis bei der Realisierung von R/3-Einführungsprojekten bereits mehrfach erfolg-
reich angewandt.
Im Folgenden sollen nun die einzelnen Schritte der Testplanung in Verbindung
mit einem konkreten, in der Praxis bereits durchgeführten CATT-Projekt bei der
Firma XYZ GmbH näher aufgezeigt werden. Dabei werden die erforderlichen
Schritte in der empfohlenen Reihenfolge beschrieben. Jeder einzelne Schritt
wird zunächst theoretisch erläutert und anschließend mit konkreten Daten der
Firma XYZ praktisch umgesetzt. Dadurch wird dem Leser die Möglichkeit ge-
geben, die Testplanung und -durchführung mittels CATT am konkreten Bei-
spiel zu verfolgen, und er lernt, sie nach und nach zu verstehen.
Basis für die Benutzung der SAP-Werkzeuge zum Testen von Software ist, wie
in Kapitel 1 bereits angesprochen, eine Ausbildung der jeweiligen Anwender in
folgenden Bereichen:
283
Sandini Bib
11.1 Testplanung
◗ Bereich 1:
Grundlagen der Softwareentwicklung sowie ausgeprägtes Wissen bezüglich
des Testens von Softwaresystemen.
◗ Bereich 2:
Grundlegendes Wissen bezüglich der Eigenschaften und Besonderheiten des
SAP R/3-Systems, was sowohl die Geschäftsprozesse und -funktionen an-
geht als auch den Einführungsprozess des SAP R/3-Systems, d.h. Know-
how im Bereich der verschiedenen Vorgehensmodelle zur Durchführung
von R/3-Projekten.
◗ Bereich 3:
Verständnis des Softwareentwicklungs- und Testkonzepts der SAP AG so-
wie der dazu verwendeten Werkzeuge. In diesem Zusammenhang ist es
wichtig, über einen Überblick über die verschiedenen Funktionalitäten sowie
die Bedienung von CATT zu verfügen.
◗ Bereich 4:
Einweisung in die einzelnen Schritte der Testplanung. Die folgenden Aus-
führungen detaillieren eine Vorgehensweise zur Planung der Tests und auch
zur Anwendung von CATT zum Testen der SAP-Software.
Im Folgenden soll nun zunächst eine generelle Übersicht über die Testplanung
als Vorbereitung des Einsatzes des CATT-Tools dargestellt werden. Sie soll dem
Leser als Grundlage dienen, selbst die Planung und die Realisierung eines
CATT-Projektes verwirklichen zu können. Die aufgeführten Fragen zum Pro-
jekt sind allerdings nur als Vorschlag zu nehmen, da die Durchführung eines
CATT-Projektes in jedem Unternehmen teilweise von anderen Bedingungen ab-
hängt. Aus diesem Grund wurde bei der Zusammenstellung der Leitfragen ver-
sucht, möglichst vollständig die essentiellen Fragestellungen aufzuführen, wel-
che in allen CATT-Projekten auftauchen und beantwortet werden müssen.
◗ Hier ist festzulegen, wer der Leiter und Verantwortliche des CATT-Projektes
ist.
◗ Welche Mitglieder gehören dem CATT-Team an? Die Erfahrung zeigt, dass
es sinnvoll ist, das CATT-Team sowohl aus Modulspezialisten als auch aus
CATT-Fachleuten zusammenzusetzen, da die Modulspezialisten in der Re-
gel kein CATT-Know-how besitzen und die CATT-Experten meist über kein
konkretes Modulwissen verfügen.
284
Sandini Bib
Praxis zeigen, dass eben aus diesen Gründen die Vorgehensweise »Vom Gro-
ben ins Detail« für CATT-Projekte sehr zu empfehlen ist.
◗ Welche Anwendungsbereiche sind betroffen? Hier ist zunächst festzulegen,
welche Applikation, Subapplikation und welche Komponente des R/3-Sys-
tems mittels CATT getestet werden soll. Diese Festlegung ist in den einschlä-
gigen Workshops zur Vorbereitung des CATT-Projektes eindeutig zu treffen.
Als Ergebnis dieses Workshops kann z.B. vereinbart werden, dass alle Pro-
zesse, welche die Finanzbuchhaltung, die Materialwirtschaft und den Ver-
trieb betreffen, mittels CATT einem Test unterzogen werden sollen. Hier
kann auch festgelegt werden, welche Stammdaten per CATT aus externen
Dateien ins R/3-System eingespielt werden sollen.
◗ Was soll mit CATT getestet werden? Folgende Fragestellungen sind hier zu
klären:
◗ Transaktionen
◗ erwartete Fehlermeldungen
◗ korrekte Wertermittlung und Datenbankfortschreibung
◗ Auswirkungen von Customizing-Änderungen
◗ formale Lauffähigkeit von Anzeigetransaktionen und Onlinereports
285
Sandini Bib
11.1 Testplanung
286
Sandini Bib
287
Sandini Bib
11.1 Testplanung
288
Sandini Bib
Der Testzyklus, welcher die Integration dieser vier Module beispielhaft über-
prüfen soll, wird wie folgt beschrieben:
289
Sandini Bib
11.1 Testplanung
290
Sandini Bib
mer soll abschließend weiteren Anwendungen zur Verfügung stehen, falls die-
ser Testablauf erweitert werden sollte.
291
Sandini Bib
11.1 Testplanung
Diese Transaktion ist dem Modul MM zuzuordnen. Sie erzeugt eine Bestellung
im R/3-System. Da sowohl für den Lieferanten 500141 als auch für den Lieferan-
ten 500406 eine Bestellung erzeugt werden soll, muss diese Transaktion im spä-
teren CATT-Ablauf zweimal abgearbeitet werden.
Die Modulexperten haben hierzu folgende Testdaten festgelegt:
Testdaten
Einkaufsorganisation: DE01
Einkäufergruppe: 999
Werk: DEAA
Lagerort: 0001
Materialnummer: 100190
Preis: 10 / 20
292
Sandini Bib
Testdaten
Materialnummer: 10019010090
Werk: DEAA
Prozessauftragstyp: P101
Gesamtmenge: 5000 kg
Auftragsmenge: 5000 kg
Fiskal-Jahr: 1998
293
Sandini Bib
11.1 Testplanung
Auftragstyp: TA
Vertriebsorganisation: DE10
Vertriebsweg: 01
Sparte: 51
Kundennummer: 100263
Materialnummer: 10019010090
Versandstelle: DE01
294
Sandini Bib
295
Sandini Bib
11.1 Testplanung
XYZ GmbH
Testbaustein »Hinzufügen Bestellung« (Transaktion ME21)
Dieser Testbaustein muss innerhalb des zu erstellenden Testablaufs zweimal re-
ferenziert werden. Im ersten Aufruf generiert dieser Baustein am Tage seines
Durchlaufs die Bestellung von 10.000 kg des Materials 100190 beim Lieferanten
500141 zum Preis von 10 DM/kg. Im zweiten Durchlauf soll dieser Baustein
vom Lieferanten 500406 eine Bestellung von 100 kg des Verpackungsmaterials
10090 zum Preis von 20 DM/kg erzeugen. Jeder Durchlauf dieses Testbausteins
bezieht sich dabei auf die Einkaufsorganisation DE01 und die Einkäufergruppe
999. Das bestellende Werk ist immer das Werk mit der Bezeichnung DEAA, das
Material wird stets am Lagerort 0001 gelagert. Nach erfolgreichem Durchlauf
gibt der Baustein in der Statuszeile die Meldung »Normalbestellung unter der
Nummer XXXXXXXXXX angelegt« aus. Diese Belegnummer muss für im Ab-
lauf später referenzierte Testbausteine zur Verfügung stehen. Aus diesen Anga-
ben ergeben sich für den Testbaustein folgende Maßnahmen:
Um den Testbaustein generell mit Werten von außen versorgen zu können,
müssen diese Importparameter generiert werden:
Preis &PRICE 10
296
Sandini Bib
Als Festwerte werden die Währung »DEM« sowie die Belastungsart »KR« auf-
gezeichnet. Der Buchungskreis muss nicht extra eingegeben werden, da durch
die Übernahme der Bestellnummer anhand des Importparameters
&PURCHASE_NR auf die entsprechenden Daten aus der Bestellung zugegrif-
fen wird. Die entsprechenden Werte für die Importparameter &AMOUNT so-
wie &TAX werden auf Ablaufebene berechnet.
Dieser Testbaustein muss für jede der Bestellungen im Ablauf je einmal referen-
ziert werden.
297
Sandini Bib
11.1 Testplanung
Werk DEAA
Prozessauftragsart pi01
298
Sandini Bib
Abgrenzungsmonat &BIS_ABGR_M 3
Version &VERSN_ABGR 0
Periode &PERIOD 3
Periode &PERIOD 3
299
Sandini Bib
11.1 Testplanung
Gesamtmenge &PRO_QUANTITY 75
Auftragsart TA
Verkaufsorganisation de10
Vertriebsweg 01
Sparte 51
Gesamtmenge &PRO_QUANTITY 75
300
Sandini Bib
301
Sandini Bib
11.1 Testplanung
302
Sandini Bib
Periode &PERIOD =3
Abgrenzungsversion &VERSION =0
303
Sandini Bib
11.1 Testplanung
Importparameter
Periode &PERIOD =3
304
Sandini Bib
Importparameter
Abgrenzungsversion &VERSION =0
EKKO-EKORG = de01
EKKO-EKGRP = 999
RMO6E_LGORT = 0001
BDC_OKCODE = /00
BDC_CURSOR = RM06E_LGORT
EKPO_NETPR(1) &PRICE = 10
BDC_OKCODE =/00
BDC_CURSOR = EKPO-NETPR(01)
305
Sandini Bib
11.1 Testplanung
BDC_OKCODE = BU
BDC_CURSOR =EKPO_TXZ01(01)
PURCHASE-NR = 4500000377
EKKO-EKORG = de01
EKKO-EKGRP = 999
RMO6E-WERKS = DEAA
RMO6E_LGORT = 0001
BDC_OKCODE = /00
BDC_CURSOR = RM06E_LGORT
EKPO_NETPR(1) &PRICE = 20
BDC_OKCODE =/00
BDC_CURSOR = EKPO-NETPR(01)
BDC_OKCODE = BU
306
Sandini Bib
BDC_CURSOR =EKPO_TXZ01(01)
PURCHASE-NR = 4500000378
RM07M-BWARTWE = 101
RM07M_WERKS = DEAA
RM07M-LGORT = 0001
BDC_OKCODE = /00
BDC_CURSOR = RM07M_LGORT
BDC_OKCODE = SEUE
RCTMS-MWERT (4) = de
BDC_OKCODE = /00
BDC_OKCODE = BACK
307
Sandini Bib
11.1 Testplanung
BDC_OKCODE = BU
BDC_CURSOR = MKPF-BUDAT
RM07M-BWARTWE = 101
RM07M_WERKS = DEAA
RM07M-LGORT = 0001
BDC_OKCODE = /00
BDC_CURSOR = RM07M_LGORT
BDC_OKCODE = SEUE
BDC_OKCODE = BU
BDC_CURSOR = MKPF-BUDAT
&AMOUT = 10000 * 10
&AMOUT = 100000
308
Sandini Bib
&TAX = 015000
&AMOUNT = 115000
BDC_OKCODE =/00
BDC_CURSOR = BKPF-XBLNR
BKPF-BLART = KR
BKPF-BUKRS = de01
BKPF-WAERS = DEM
BKPF-XBLNR = Rechnungs-Nr.
BCD_OKCODE = /00
BDC_CURSOR = RM08R-WMWST1
309
Sandini Bib
11.1 Testplanung
BCD_OKCODE = PB
BDC_OKCODE = BU
&AMOUNT = 100 * 20
&AMOUNT = 2000
&AMOUNT = 0300
&AMOUNT = 2300
BDC_OKCODE =/00
BDC_CURSOR = BKPF-XBLNR
310
Sandini Bib
BKPF-BLART = KR
BKPF-BUKRS = de01
BKPF-WAERS = DEM
BKPF-XBLNR = Rechnungs-Nr.
BCD_OKCODE = /00
BDC_CURSOR = RM08R-WMWST1
BCD_OKCODE = PB
BDC_OKCODE = BU
&D01 = 19980304 + 1
&D01 = 19980305
311
Sandini Bib
11.1 Testplanung
CAUFVD-MATNR = 10019010090
CAUFVD-WERKS = DEAA
AUFPAR-PI_AUFART = PI01
BDC_OKCODE =/00
BDC_CURSOR = AUFPAR-PI_AUFART
CAUFVD_GAMNG &PRO_QUANTITY = 75
BDC_OKCODE = OMLA
BDC_CURSOR = CAUFVD-GAMNG
RC27X_FLG_SEL(1) = X
BDC_OKCODE = CHPI
BDC_CURSOR = RC27X-FLG_SEL(01)
BDC_OKCODE = Take
BDC_CURSOR = XV01FDP-Menge_P(01)
BDC_OKCODE = Frei
BDC_CURSOR = RESBD-MENGE(01)
BDC_OKCODE = BU
BDC_CURSOR = RESBD-Menge(01)
312
Sandini Bib
&ORDER_NR = 100000411
BDC_OKCODE = /00
BDC_CURSOR = CORUF-AUFNR
AFRUD-LMNGA &PRO_QUANTITY = 75
BDC_OKCODE = MB03
BDC_CURSOR = AFRUD-LMNGA
BDC_OKCODE = WEIT
RCTMS-MWERT(4) = de
BDC_OKCODE = /00
BDC_OKCODE = BACK
BDC_CURSOR = RCTMS-MWERT(04)
313
Sandini Bib
11.1 Testplanung
SAPMKAZB 1000
KAZB-KOKRS = 1000
KAZB-PERIODE &CO_PERIO = 3
KAZB-TESTLAUF = ´ ´
BDC_OKCODE = ZUBR
BDC_CURSOR = *KAZB-TESTLAUF
KKA0100-BIS_AGBR_M &BIS_ABGR_M = 3
KKA0100-VERSN &VERSN_ABGR = 0
KKA0100-TESTL = ´ ´
KKA0100-MAXAN = ´ ´
BDC_OKCODE = AUSF
BDC_CURSOR = KKA0100-MAXAN
BDC_OKCODE = /EBACK
BDC_CURSOR = KKA0100-BIS_ABGR_M
314
Sandini Bib
KKS00-POPER &PERIOD = 3
KKS00-TESTL = ´ ´
KKS00-LISTF = ´ ´
BDC_OKCODE = AUSF
BDC_CURSOR = KKS00-LISTF
LK074-PERIO &PERIOD = 3
LKO74-VAART = 1
LKO74-TESTLAUF = ´ `
BDC_OKCODE = AUSF
BDC_CURSOR = LKO74-TESTLAUF
&D01 = 19980304 + 7
&D01 = 19980311
315
Sandini Bib
11.1 Testplanung
VBAK-AUART = ta
VBAK-VKORG = de10
VBAK-VTWEG = 01
VBAK-SPART = 51
BDC_OKCODE = ENT2
BDC_CURSOR = VBAK-SPART
VBAK-BSTNK = CATT1
BDC_OKCODE = ENT1
BDC_CURSOR = RV45A-KETDAT
BDC_OKCODE = ENT1
BDC_OKCODE = SICH
&SDORDERNR = 555
316
Sandini Bib
BDC_OKCODE = ENT2
BDC_CURSOR = LV50C-DATBI
BDC_OKCODE = PALL
BDC_OKCODE = ENT1
BDC_OKCODE = WABU
BDC_CURSOR = LIKP-VBELN
&LIEFERNR = 80000318
317
Sandini Bib
11.1 Testplanung
SAPMV60A 0102
BDC_OKCODE = ENT2
BDC_CURSOR = KOMFK-VBELN(01)
SAPMV60A 0104
BDC_OKCODE = SICH
BDC_CURSOR = KURGV-KUNNR
&F2NR = 9000000173
318
Sandini Bib
Testabläufe zu
Geschäftsprozessen des
Referenzmodells
12
In diesem Kapitel wird für ausgewählte Geschäftsprozesse aus dem Referenz-
modell exemplarisch dargestellt, wie die (diesen Geschäftsprozessen zuzuord-
nenden) Testabläufe aussehen können. Außerdem wird zu diesen Prozessen
gegebenenfalls auf die Testbausteine bzw. Testabläufe verwiesen, die standard-
mäßig mit dem R/3-System ausgeliefert werden.
Um dem Leser die Möglichkeit zu bieten, sich bei der Erstellung der einzelnen
CATTs an bekannten Strukturen zu orientieren, werden wir die Geschäftspro-
zesse in der gleichen Reihenfolge bearbeiten, wie dies Keller und Teufel in ih-
rem Buch »SAP R/3 prozessorientiert anwenden« [/Keller98/] getan haben.
Dem Leser, der über CATT hinausgehende Informationen zu den einzelnen Ge-
schäftsprozessen erhalten möchte, findet zudem in diesem Buch umfassende
Beschreibungen der betriebswirtschaftlichen Aspekte und SAP-spezifische Be-
sonderheiten.
Auf diese Beschreibungen wird jeweils zu Beginn der folgenden Abschnitte ei-
gens verwiesen.
12.1 Absatzplanung
Ausführliche Informationen zu den betriebswirtschaftliche Aspekten und den
SAP-spezifischen Besonderheiten sind zu finden in [/Keller98/ 298ff.].
319
Sandini Bib
12.1 Absatzplanung
Der Testablauf
YTL_Absatzplan (Absatzplanung)
Testbaustein - Pool
Abbildung 12.1
Testablauf zum Geschäftsprozess »Absatzplanung«
YTL_Absatzplanung
Standard-CATTs
keine
320
Sandini Bib
12.2 Kosten-/Erlösartenbearbeitung
Ausführliche Informationen zu den betriebswirtschaftliche Aspekten und den
SAP-spezifischen Besonderheiten sind zu finden in [/Keller98/ 318ff.].
Der Testablauf
YTL_Kostenarten (Kosten-/Erlösartenbearbeitung)
Testbaustein - Pool
Abbildung 12.3
Testablauf zum Geschäftsprozess »Kosten-/Erlösartenbearbeitung«
YTL_Kosten-/Erlösartenbearbeitung
Standard-CATTs
K1102369, K1103317, K1102547, K1103521, K1102621, P3009025, P00664, P300666
321
Sandini Bib
12.3 Kreditorenstammbearbeitung
12.3 Kreditorenstammbearbeitung
Ausführliche Informationen zu den betriebswirtschaftliche Aspekten und den
SAP-spezifischen Besonderheiten sind zu finden in [/Keller98/ 526ff.].
Der Testablauf
YTL_Kreditor (Kreditorenstammbearbeitung)
YBS_FK01
Testbaustein - Pool
Abbildung 12.5
Testablauf zum Geschäftsprozess »Kreditorenstammbearbeitung«
YTL_Kreditorenstammbearbeitung
Standard-CATTs
K1100833, K1101716, K1102364
322
Sandini Bib
12.4 Debitorenstammbearbeitung
Ausführliche Informationen zu den betriebswirtschaftliche Aspekten und den
SAP-spezifischen Besonderheiten sind zu finden in [/Keller98/ 734ff.].
Der Testablauf
YTL_Debitor (Debitorenstammbearbeitung)
YBS_FD01
Testbaustein - Pool
Abbildung 12.7
Testablauf zum Geschäftsprozess »Debitorenstammbearbeitung«
YTL_Debitorenstammbearbeitung
Standard-CATTs
K1100477, K1101754
323
Sandini Bib
12.5 Bestellanforderungsbearbeitung
12.5 Bestellanforderungsbearbeitung
Ausführliche Informationen zu den betriebswirtschaftliche Aspekten und den
SAP-spezifischen Besonderheiten sind zu finden in [/Keller98/ 496ff.].
Der Testablauf
YTL_Banf (Bestellanforderungsbearbeitung)
Testbaustein - Pool
Abbildung 12.9
Testablauf zum Geschäftsprozess »Bestellanforderungsbearbeitung«
YTL_Bestellanforderungsbearbeitung
Standard-CATTs
K1102132, K1101501, S1100739, S1100740
324
Sandini Bib
12.6 Materialstammbearbeitung
Ausführliche Informationen zu den betriebswirtschaftliche Aspekten und den
SAP-spezifischen Besonderheiten sind zu finden in [/Keller98/ 504ff.].
Der Testablauf
YTL_Material (Materialstammbearbeitung)
YBS_MM01
Testbaustein - Pool
Abbildung 12.11
Testablauf zum Geschäftsprozess »Materialstammbearbeitung«
YTL_Materialstammbearbeitung
Standard-CATTs
S1100085, P3002913, P3002920, P3002422, P3002435
325
Sandini Bib
12.7 Kundenkontraktbearbeitung
12.7 Kundenkontraktbearbeitung
Ausführliche Informationen zu den betriebswirtschaftliche Aspekten und den
SAP-spezifischen Besonderheiten sind zu finden in [/Keller98/ 698ff.].
Der Testablauf
YTL_Kontrakt (Kundenkontraktbearbeitung)
Testbaustein - Pool
Abbildung 12.13
Testablauf zum Geschäftsprozess »Kundenkontraktbearbeitung«
YTL_Kundenkontraktbearbeitung
Standard-CATTs
K1100336, K1101145, P3004529
326
Sandini Bib
12.8 Fakturabearbeitung
Ausführliche Informationen zu den betriebswirtschaftliche Aspekten und den
SAP-spezifischen Besonderheiten sind zu finden in [/Keller98/ 740ff.].
Der Testablauf
YTL_Faktura (Fakturabearbeitung)
YBS_VF01
Testbaustein - Pool
Abbildung 12.15
Testablauf zum Geschäftsprozess »Fakturabearbeitung«
YTL_Fakturabearbeitung
Standard-CATTs
K1101131, K1101223, K1101306, K1101318, K1101591, K1102028, P3011957,
P3012773, S1100231, S1100886
327
Sandini Bib
12.9 Materialstücklistenbearbeitung
12.9 Materialstücklistenbearbeitung
Ausführliche Informationen zu den betriebswirtschaftliche Aspekten und den
SAP-spezifischen Besonderheiten sind zu finden in [/Keller98/ 406ff.].
Der Testablauf
YTL_Stückliste (Materialstücklistenbearbeitung)
YBS_CS01
Testbaustein - Pool
Abbildung 12.17
Testablauf zum Geschäftsprozess »Materialstücklistenbearbeitung«
YTL_Materialstücklistenbearbeitung
Standard-CATTs
S1100068, S1100087, S1100099
328
Sandini Bib
12.10 Arbeitsplatzbearbeitung
Ausführliche Informationen zu den betriebswirtschaftliche Aspekten und den
SAP-spezifischen Besonderheiten sind zu finden in [/Keller98/ 418ff.].
Der Testablauf
YTL_Arbeitsplatz (Arbeitsplatzbearbeitung)
YBS_CR01
Testbaustein - Pool
Abbildung 12.19
Testablauf zum Geschäftsprozess »Arbeitsplatzbearbeitung«
YTL_Arbeitsplatzbearbeitung
Standard-CATTs
K1103535, P3021177, S1100313, S1107143
329
Sandini Bib
Sandini Bib
Mercury Testtools
13
13.1 Mercury Interactive Inc. – Das Unternehmen
Mercury Interactive wurde 1989 in den USA gegründet. Seit 1991 besteht eine
Niederlassung in Deutschland. Seinen Stammsitz hat das Unternehmen in
Sunnyvale, Kalifornien, und unterhält Niederlassungen in den USA, Europa
und Japan, unterstützt durch ein weltweites Distributorennetz. Das europäische
Headquarter von Mercury Interactive ist in Paris. In Deutschland befindet sich
der Hauptsitz in München mit Geschäftsstellen in Frankfurt, Düsseldorf, Berlin,
Hamburg und Wien.
Im Geschäftsjahr 1999 wurde weltweit ein Umsatz von 187,7 Millionen US-Dol-
lar erzielt, eine Steigerung von 55 Prozent gegenüber dem Vorjahr. Mercury In-
teractive wurde 1999 von der US-amerikanischen Analystenfirma Merrill Lynch
in die Liste der zehn besten Unternehmen in der High-Tech-Industrie aufge-
nommen. Aktien des Unternehmens werden in den USA unter dem Kürzel
MERQ (Nasdaq) gehandelt. Die Web-Site von Mercury Interactive ist unter
www.mercuryinteractive.com erreichbar.
Mercury Interactive ist der weltweit führende Anbieter von Test- und Perfor-
mance-Management-Lösungen und bietet eine umfassende Produktlinie an
automatisierten Tools zum Testen der Skalierbarkeit, Verfügbarkeit und Zu-
verlässigkeit von Internet-Anwendungen und zur Optimierung der Endbenut-
zererfahrung. Die Lösungen sind unternehmensweit einsetzbar und umfassen
Funktionalitätstests, Testmanagement sowie Last- und Performancetests zur
Unterstützung des Qualitätssicherungsprozesses und des Risikomanagements
beim Testen von Client/Server-, E-Business-, Mainframe- sowie ERP- und
CRM-Applikationen.
331
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
332
Sandini Bib
333
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
Abbildung 13.1
Testen der Enterprise application integration (EAI)
334
Sandini Bib
des R/3-Systems immer auf dem R/3-Applikationsserver läuft und quasi in den
R/3-Basiskern eingebettet ist, wird WinRunner QuickTest für R/3 oder auch
WinRunner für Tests an Web-, Java- oder anderen Applikationen immer auf der
Client-Seite, also dem Arbeitsplatz installiert und aktiviert. Dadurch ergibt sich
ein etwas anderes Testverhalten. WinRunner arbeitet mit dem R/3-System im-
mer exakt in der gleichen Weise wie der Endanwender, also über die Dialogo-
berfläche. Unter CATT ablaufende Transaktionen verändern hier teilweise ent-
sprechende Dialogschritte bzw. unterliegen auch Limitierungen hinsichtlich der
Art und Weise, wie Geschäftsprozesse aufgezeichnet werden (Mitschneiden der
Einzeltransaktionen und nachfolgendes Aneinanderreihen mehrerer Transak-
tionen zu einem Geschäftsprozess) mit separater Definition von Input- und Out-
putparametern. Abschließend bleibt festzuhalten, dass beide Werkzeuge jeweils
spezifische Vorteile und Leistungsmerkmale aufweisen. Sie sind damit nicht
primär als konkurrierende Werkzeuge einzustufen, sondern können sich inner-
halb einer komplexen Testaktivität jederzeit hervorragend ergänzen.
335
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
Abbildung 13.2
Einbindung des Load Runner Controller in die Systemarchitektur
336
Sandini Bib
Nutzen
Der Nutzen für R/3-Projekte besteht im Wesentlichen darin, zu jedem Zeit-
punkt einen sinnvollen und genauen Überblick über die Performance und Leis-
tungsfähigkeit des R/3-Systems zu gewinnen. Ganz gleich, ob es nur darum
geht, zu einem frühen Zeitpunkt detailliertere Informationen über die (grobe)
Antwortzeitperformance zu erhalten oder vor Produktivstart Sicherheit zu ge-
winnen über die konkrete kundenspezifische R/3-Implementierung. Zu jedem
Zeitpunkt ist es möglich, sich detaillierte Informationen über Antwortzeitver-
halten sowie über die Skalierbarkeit der R/3-Systeme zu verschaffen. Parallel
dazu erhält man auf Wunsch innerhalb weniger Stunden eine Rückmeldung,
wie sich Änderungen an Systemkonfiguration, Einstellungsparametern, Hard-
ware oder Applikation auf die Performance auswirken (Rückkopplungseffekt).
Diese Feedback-Wirkung erlaubt es, innerhalb kurzer Zeit (typischerweise drei
bis sechs Wochen) auch komplexe Last- und Performancetests zu realisieren
und die jeweiligen Systeme auch aus Sicht der Performance zu stabilisieren und
zu optimieren. Darüber hinaus ist es möglich, die Last- und Performancereak-
tionen des Systems auf unterschiedliche Lastprofile hin zu untersuchen. Das IT-
System bleibt ja schließlich nicht statisch, sondern ist mit kontinuierlich verän-
derten Benutzerprofilen konfrontiert und damit auch Performanceeinflüssen
ausgesetzt. Mit LoadRunner lassen sich auch Spezialfälle wie beispielsweise si-
multane Zugriffe (»Montag-Morgen-Effekt«) – alle zehn, fünfzehn Minuten
kommen weitere Benutzer, loggen sich ein und beginnen mit der Arbeit – oder
Spitzenlasteffekte wie beispielsweise die Zeit nach der Mittagspause oder vor
Feierabend elegant prüfen. Hier ist es möglich, über sogenannte Synchronisati-
onsmechanismen gleichzeitige Zugriffe auf R/3-Systeme nachzubilden. Ein
weiterer Pluspunkt ist darin zu sehen, dass nicht nur Performanceauswirkun-
gen von fachlich korrekter Bedienung der Applikation getestet werden können, Kapitel 13 – Mercury Testtools
sondern darüber hinaus entsprechende »Fehlbedienungen« hinsichtlich ihrer
Auswirkungen auf das Antwortzeitverhalten geprüft werden können (z.B. ar-
beiten zehn Prozent alle Benutzer anstelle von gezielten Parametern mit Match-
Code-Funktionen). Insbesondere bei gemischten Lastprofilen können somit
sehr schnell die tatsächlichen Leistungsreserven in der R/3-Konfiguration aus-
gelotet werden. Einen weiteren wesentlichen Nutzen bringt die Möglichkeit, Ak-
tivitäten im System, die normalerweise über längere Zeiträume sich erstrecken
und auflaufen, in einem quasi Zeitraffereffekt durchzuspielen. So kann bei-
spielsweise ein wachsender Daten- und Informationsbestand im R/3-System
mit seinen Auswirkungen beobachtet werden, indem LoadRunner innerhalb
weniger Stunden bzw. Tage diese Aktivitäten eines Systems durchspielt. Zeit-
337
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
räume von sechs, zwölf oder achtzehn Monaten können folglich innerhalb we-
niger Tage mit Blick auf die entstehenden Datenvolumina abgebildet und um-
gesetzt werden. Hieraus lassen sich dann wieder performancekritische
Informationen etwa zur Beantwortung folgender Fragen ableiten: Wie schnell
wächst die Datenbank? Ab welchem Zeitpunkt ist es notwendig, entsprechende
zusätzliche Archivierungsmechanismen einzuschalten, um über eine sinnvolle
und performancerelevante Datenbankgröße nicht hinauszuwachsen?
Leistungsüberblick LoadRunner
LoadRunner besteht im Wesentlichen aus den folgenden Produktkomponenten:
Tabelle 13.1
Produktkomponenten des LoadRunners
338
Sandini Bib
Abbildung 13.3
Generierung von geschäftsprozessorientierten Lastbausteinen
Abbildung 13.4
Variation der Testdaten
339
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
Projektablauf
Der typische Projektablauf beim Last- und Performancetest mit LoadRunner
lässt sich grob wie folgt skizzieren:
A Definition der Testziele, Performanceerwartungen und des Projektzeitrah-
mens
B Vorbereitende Maßnahmen
C Skripterstellung für Lastbausteine
D Aufbau der Lastprofile aus Lastbausteinen
E Testdurchführung
F Monitoring und Protokollierung der Ergebnisse
G Nachtest/Optimierung
Zu 1 Definition der Testziele, Performanceerwartungen und des Projekt-
zeitrahmens
Wie bei allen Test- und Qualifizierungsmaßnahmen wird der Grundstock über
die später zu erzielende Genauigkeit bereits zu einem sehr frühen Zeitpunkt
festgelegt. Hier ist es unabdingbar, sich über die zu verwendende Version des
R/3-Systems, die Anzahl der (gleichzeitigen) Benutzer, Module und Customi-
zing-Einstellungen Klarheit zu verschaffen. Gleichzeitig aber ist es wichtig, rea-
listische und sinnvolle Soll-/Referenzwerte für Antwortzeitverhalten und Ska-
lierbarkeit vorzugeben. Empfehlenswert ist es, prinzipiell Performance immer
im Hinblick auf Geschäftsprozesse zu definieren, das heißt, z.B. 90 Prozent aller
Auftragserfassungsvorgänge kleiner gleich 30 Sekunden anzunehmen anstelle
von 90 Prozent aller Transaktionen kleiner gleich eine Sekunde Antwortzeit.
Nur bei einer geschäftsprozessspezifischen Betrachtung ist hinterher auch ein
optimaler Nutzen für die Performanceoptimierung gegeben. Sollten alle Trans-
aktionen gleich gewichtet werden, ist sicherlich eine etwas schwächere Aussa-
gekraft gegeben, da dann nicht notwendigerweise eine Hundert-Prozent-Ver-
bindung zur Geschäftsprozessperformance möglich ist. Darüber hinaus ist es
wichtig, den möglichen Projektzeitrahmen sowie die Ressourcenstruktur zu ko-
ordinieren.
Zu 2 Vorbereitende Maßnahmen
Systemaufbau: Nun gilt es, die spätere Testumgebung als System aufzubauen.
Idealerweise stehen für Testaktivitäten bereits Zugriffsmöglichkeiten auf das
später zu verwendende Produktivsystem zur Verfügung (zumindest für den
Testrahmen, die Testskripte und Lastbausteine können jederzeit auch auf einem
vorgeschalteten Qualitätssicherungs- oder Integrationssystem erstellt werden).
Sollte der Zugriff auf das Produktivsystem oder eine vergleichbare Hardware-
Plattform aus projektspezifischen Gründen nicht möglich sein, kann man auch
340
Sandini Bib
auf Alternativsystemen testen. Allerdings ist dann die Übertragbarkeit der Er-
gebnisse nicht immer eins zu eins gegeben.
Identifikation der Lastquellen: Nächster Schritt bei den vorbereitenden Maß-
nahmen ist die Identifikation der Lastquellen. Auf jedes R/3-System wirken un-
terschiedliche Lastquellen ein. Als Wesentliche sind hier Dialog-last (d.h. Inter-
aktion der Benutzer mit dem R/3-System), Batchlast (permanent bzw.
zeitgesteuert laufende Hintergrundprozesse) sowie Schnittstellenlast (z.B. auto-
matische Kopplung von R/3 mit anderen Systemen bzw. AME-Kopplung un-
terschiedlicher R/3-Systeme, Edifact-Informationsaustausch). Um eine mög-
lichst genaue Performanceaussage innerhalb des Last- und Performancetests zu
erzielen, ist es wichtig, bereits zu einem frühen Zeitpunkt alle wesentlichen
Last- und Performancequellen zu identifizieren und für den späteren Last- und
Performancetest zu berücksichtigen. Die Abbildung der Dialoglast ist mit Load-
Runner für R/3 einfach und schnell möglich. Alle anderen Lastquellen müssen
projektspezifisch untersucht und gegebenenfalls mit Hilfsapplikationen (z.B.
Edifact-Nachrichtengenerator oder Idoc-Strukturgenerator) nachgebildet wer-
den. Bei der eigentlichen Testdurchführung ist es dann sinnvoll und notwendig,
im Normalfall laufende Hintergrundprozesse realitätsnah zeitgesteuert oder
automatisch aktiviert mitlaufen zu lassen. Nur bei entsprechender Berücksich-
tigung aller Lastquellen können die gemessenen Performanceergebnisse auch
mit dem späteren Realverhalten übereinstimmen.
Auswahl der Geschäftsprozesse: Für einen Last- und Performancetest können
erfahrungsgemäß nicht alle »theoretisch« vorkommenden Geschäftsprozesse
umgesetzt werden. Von einer ausreichenden Genauigkeit der Performanceaus-
sage kann man bei einer Abbildung von ca. 15 bis 30 Geschäftsprozessen ausge-
hen. Die wichtigsten Kriterien für die Auswahl sind Häufigkeit des jeweiligen
Geschäftsprozesses, Kritikalität im Sinne von Performanceeinfluss (so sind z.B.
verbuchungsintensive Geschäftsprozesse sicherlich performancekritischer als
reine Hilfefunktionen) und die Wichtigkeit der Geschäftsprozesse (z.B. wenn
Geschäftsprozess abc nicht funktioniert, dann haben wir ein Problem).
Aufbau der Stamm- und Bewegungsdaten: Nachdem nun ausgewählt und de-
finiert wurde, über welche Schnittstelle welche Informationen in welcher Kom- Kapitel 13 – Mercury Testtools
bination letztendlich eingespielt werden, müssen die entsprechenden Aus-
gangsvoraussetzungen auch auf Systemseite geschaffen werden. Dazu muss
auch innerhalb des R/3-Systems eine entsprechende Informationsmenge vor-
handen sein. Konkret gilt es, eine ausreichende Anzahl von Stamm- und Bewe-
gungsdaten herzustellen. Hier gibt es prinzipiell zwei unterschiedliche Ansätze:
a) Übernahme möglichst vieler Daten aus bereits bestehenden Produktiv- oder
Altsystemen oder b) Neuanlage und Generierung der entsprechenden Datenin-
formation. Beide Ansätze sind möglich und haben sich in der Praxis bewährt. Im
projektspezifischen Kontext wird eine Entscheidung für das jeweilige Vorgehen
gefällt. Je nachdem wie einfach oder schwierig beispielsweise der Zugriff auf be-
reits bestehende Informationssysteme ist, entscheidet man sich für den einen
341
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
oder anderen Weg. Neben der Informationsquelle ist auch die Anzahl der Infor-
mationen von entscheidender Bedeutung für die Genauigkeit der Ergebnisse
der späteren Tests. Sinnvoll ist es, Datenbanken so aufzubauen und vorzuberei-
ten, dass für den eigentlichen Testdurchlauf ein Informationsstand vorliegt, der
dem R/3-System etwa vier bis acht Wochen nach Produktivstart entspricht.
Schließlich nutzt ein Test auf einer nur halb so großen Datenbank wenig, um de-
finitive Performanceaussagen machen zu können. Eine spätere, möglichst ge-
naue Reproduzierbarkeit der Performanceergebnisse erfordert die Sicherung
dieses Datenbankzustands für spätere Nachfolgetests (idealerweise durch eine
Backup-Restore-Möglichkeit).
Zu 3 Skripterstellung für Lastbausteine
Für alle im Rahmen der Testvorbereitung festgelegten und definierten Lastquel-
len müssen nun geeignete Umsetzungsmaßnahmen gefunden werden. Load-
Runner unterstützt in idealer Weise die effiziente Nachbildung der Dialog-last.
Dabei werden die einzelnen Geschäftsprozesse (innerhalb eines R/3-Moduls
bzw. transaktionsübergreifend) aufgezeichnet. Jeder Fachanwender ist folglich
in der Lage, seinen Beitrag zu Last- und Performanceprofil zu liefern. Die bei der
Aufzeichnung »fest verdrahteten« Testdaten werden in einem zweiten Schritt
durch Parameter ersetzt, denen Ein- bzw. Ausgabedateien zugeordnet. Als Da-
tenquelle kann z.B. jederzeit ein externes Excel Spreadsheet verwendet werden.
Alternativ ist auch die Übernahme der Funktionsskripte von WinRunner Quick-
Test für R/3 möglich. Sofern bereits mit WinRunner als Funktionsstestwerk-
zeug Testskripte erstellt worden sind, können diese ohne jede Modifikation für
den Last- und Performancebereich verwendet werden. Neben der Parametrisie-
rung der Testskripte für Test- und Eingabedaten ist die Festlegung des Benut-
zerverhaltens wichtig. Hierbei wird exakt definiert, mit welcher Arbeitsge-
schwindigkeit der emulierte Anwender später mit dem R/3-System arbeitet.
Konkret werden neben einer generellen Arbeitsgeschwindigkeit auch entspre-
chende Pausen bzw. Denkzeiten in die Testskripte integriert. Nur so kann si-
chergestellt werden, dass die nachfolgenden Last- und Performancetests ein
realistisches Ergebnis hervorbringen. Abschließend wird jeder einzelne Last-
baustein für sich selbst auf seine Ablauffähigkeit und korrekte Funktionalität
hin überprüft. Ist dieser Vorgang erfolgreich abgeschlossen, so werden die so
genannten »Messpunkte« hinzugefügt. Hier gilt es zu entscheiden, welche De-
tailinformationen bei der späteren Testdurchführung geprüft und gemessen
werden sollen. So ist es z.B. möglich, sowohl die gesamte Durchlaufdauer eines
Benutzers als Messpunkt zu betrachten, als auch jeden durchgeführten einzel-
nen Dialogschritt. In den meisten Projekten liegt die Realität zumeist zwischen
diesen beiden Extremen. Grundsätzlich ist es zu empfehlen, die Messpunkte an
den wirklich wichtigen geschäfts- oder businesskritischen Stellen zu setzen.
342
Sandini Bib
Dadurch ist sichergestellt, dass von allen Standorten aus die Performance getes-
tet wird. Der Black-Box-Testaufbau mit LoadRunner macht es so möglich, das
System unter exakt den gleichen Konditionen zu testen, wie sie auch im späte-
ren Wirkbetrieb vorzufinden sind. Dadurch lässt sich nicht nur garantieren,
dass das System eine entsprechende Performance bietet, sondern auch wie viel
Prozent dieser Performance tatsächlich beim Endanwender ankommen. Neben
der Lastverteilung über mehrere Standorte, Netzwerksegmente oder ähnliches
hinweg ist es darüber hinaus auch ratsam, bestimmte Sonderprofile zu definie-
ren. Häufigster Anwendungsfall für Sonderprofile sind sogenannte Spitzenlast-
szenarien wie z.B. »Mittagspausen-Effekt« um 12 Uhr, wenn der Großteil der
343
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
Mitarbeiter in die Mittagspause geht und wenn um 13 Uhr nahezu alle zeit-
gleich zurückkommen und die Arbeit mit dem System erneut aufnehmen. An-
dere Spitzenlastprofile sind Szenarien wie der »Montag-Morgen-Effekt«: Alle
zehn bis fünfzehn Minuten kommen weitere Mitarbeiter, verbinden sich mit
dem System, melden sich an und beginnen mit der Arbeit. Je nach Projekt- bzw.
Kundenumfeld sind alternativ weitere Sonderszenarien wie z.B. gemeinsame
Aktualisierung der Forecasts jede Woche donnerstagabend oder ähnliches
denkbar. In vielen Projekten hat sich hier gezeigt, dass Anwender rein aus Ge-
wohnheitsgründen immer noch zu bestimmten Tätigkeiten Aktionen am Sys-
tem durchführen, weil dies in einem früheren IT-System nur zu diesem Zeit-
punkt möglich war. Auch falls moderne Systeme wie beispielsweise SAP R/3
jetzt hier mehr Flexibilität bieten, werden die alten Gewohnheiten beibehalten.
Technisch realisiert wird die Spitzenbelastung durch den so genannten »Syn-
chronisations-« oder »Rendezvous-Mechanismus«, d.h., in die einzelnen Last-
bausteine werden entsprechende Querverweise eingefügt, so dass die einzelnen
Lastbausteine einander synchronisieren. Dies ist gleichzusetzen mit Meetings,
wo beispielsweise auch einzelne Meetingteilnehmer aufeinander warten. Load-
Runner ermöglicht für die Synchronisation ebenso das Festlegen entsprechen-
der Vorgehensleitfäden. Wie in der Praxis kann auf diese Weise bestimmt wer-
den, wie z.B. verfahren werden soll, wenn nur 80 Prozent aller Teilnehmer eines
virtuellen Meetings tatsächlich erscheinen. So kann beispielsweise definiert
werden, ob das Meeting dann trotzdem stattfindet, d.h. die eingestellte Warte-
zeit durchgeführt wird.
Zu 5 Testdurchführung
Nachdem alle Lastbausteine erstellt worden sind und in einem zweiten Schritt
zu Lastprofilen zusammengefügt wurden, kann die eigentliche Testausführung
beginnen. Obwohl in den meisten Projektumgebungen alle Testteilnehmer dar-
auf brennen, das System unter Spitzenlast agieren zu sehen, sollte man der Ver-
suchung, sofort mit zu hoher Last auf das System zu gehen, widerstehen. An-
dernfalls besteht die Gefahr, dass beispielsweise das System sehr frühzeitig in
die Knie geht (unter Umständen sogar »zerschossen« wird) und man dadurch
wertvolle Testzeit verliert. Es ist daher ratsam, in einem ersten Schritt stufenwei-
se mit mehr und mehr Benutzern gleichzeitig auf das System zu gehen. Eine
sinnvolle Steigerung sind hier beispielsweise fünfzig oder hundert zusätzliche
gleichzeitig damit arbeitende Mitarbeiter. Dadurch erhält man bereits eine erste
aktive Rückmeldung und beugt der Gefahr eines frühzeitigen Systemproblems
vor. In vielen Projektumgebungen stellen auch bereits diese ersten Testaktivitä-
ten eine erste ernst zu nehmende Hürde dar. In einem zweiten Testschritt sollte
dann versucht werden, die zu erwartende Nennlast auf das System zu geben,
also bis zum Zielszenario hochzuskalieren. Hier ist zu beachten, dass jedes Sys-
tem dynamisch reagiert, d.h. so genannte »Einschwingzustände« aufweist. Die
Performanceuntersuchungen dürfen sich nicht nur auf diese Einschwingzeit be-
schränken, sondern zielen insbesondere ab auf den eingependelten, stabilen Zu-
stand nach einer halben Stunde bis zwei Stunden Wirkbetrieb. Nur durch eine
344
Sandini Bib
ausreichend lange Testphase ist sichergestellt, dass nicht nur die optimierten
Antwortzeiten des Systems gemessen werden, sondern das Zusammenspiel al-
ler Systemkomponenten. So ist es nicht selten, dass die Dialogantwortzeiten in
der ersten halben Stunde des Wirkbetriebs sehr gut sind (weil z.B. noch gar kei-
ne physikalischen Verbuchungsvorgänge auf die Festplatten erfolgen). In der
dritten Testphase wird dann versucht, Sonderprofile für Spitzenbelastungszei-
ten und ähnliches nachzubilden oder aber mit veränderten Lastszenarien Per-
formanceuntersuchungen durchzuführen. So kann man beispielsweise mit ei-
ner 25 oder 50 Prozent höheren Belastung als der angenommenen Nennlast
bereits erkennen, welche Sicherheitsreserven für Funktionalität und Perfor-
mance noch im System stecken.
Zu 6 Monitoring und Protokollierung der Ergebnisse
Wie bereits in dem vorherigen Kapitel mit dem Titel »Skripterstellung« kurz
angesprochen, gilt es festzulegen, welche Performancewerte hinterher gemes-
sen werden sollen. Je nach Projektumgebung können hier ganz unterschiedli-
che Parameter entscheidend sein. Für ein R/3-System etwa, das im Call-Cen-
ter-Betrieb betrieben wird, ist die Gesamtdauer des Geschäftsprozesses von
wesentlicher Bedeutung – vom ersten Einstieg in die Dialogmaske bis hin zum
Verbuchen in der Datenbank und erneutem Einstieg für den nächsten Anrufer
am Telefon. Gilt es im Wesentlichen, die Akzeptanz der Endanwender sicher-
zustellen, so ist neben der eigentlichen Geschäftsprozessdauer insbesondere
die so genannte »Dialogwechselzeit« wichtig, die aussagt, wie schnell das Sys-
tem von Maske zu Maske weiterkommt. Je nach Anforderungen werden dann
entsprechend Messpunkte in die Testskripte integriert. Für die Performancea-
nalyse der Testergebnisse wird auf die Messdaten im LoadRunner, genauer im
LoadRunner Controller zugegriffen. Zusätzlich werden Testdateninformatio-
nen aus dem Computing Center Management System (CCMS) von SAP R/3
verwendet. Durch die Kombination dieser beiden Sichtweisen (Black-Box-An-
satz und Inside-Out-Performancemessungen) ist es möglich, in kurzer Zeit ein
genaues Verständnis für die Systemperformance zu gewinnen und entspre-
chende Optimierungsmaßnahmen zu identifizieren und abzuleiten. Während
für die Testskripterstellung einzelne Sachbearbeiter involviert werden können, Kapitel 13 – Mercury Testtools
erfolgt die Zusammenstellung des Lastprofils ebenso wie die Testdurchführung
und Performanceauswertung immer durch Spezialisten. Insbesondere bei der
Performanceanalyse sollten neben R/3-Anwendungs-Know-how auch entspre-
chende Spezialisten aus dem Bereich R/3-Basis bzw. R/3-Implementierungs-
partner anwesend sein. Nur so kann aus den ermittelten Performancewerten
kurzfristig abgeleitet werden, an welchen Stellschrauben (Customizing, Konfi-
gurationseinstellungen, Hardware, Software, Datenbank,...) gedreht werden
muss. Ein Beispiel für die von LoadRunner gelieferten Performancewerte finden
Sie in den Abbildungen 13.6 und 13.7.
345
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
Abbildung 13.6
Darstellung der ermittelten Performancewerte in LoadRunner (1)
346
Sandini Bib
Abbildung 13.7
Darstellung der ermittelten Performancewerte in LoadRunner (2)
Zu 7 Nachtest/Optimierung
Sind die Problemstellen der R/3-Konfiguration identifiziert, so kann mit ent-
sprechenden Maßnahmen eine Verbesserung/Optimierung vorgenommen
werden. Durch einen schnellen Nachtest mit dem gleichen LoadRunner-Szena-
rio kann die Auswirkung einer durchgeführter Modifikation auf die Systemper-
formance analysiert werden. Bei allen Optimierungsmaßnahmen ist Folgendes
zu beachten: Was vielleicht in einem Bereich gut ist, kann sich in einem anderen Kapitel 13 – Mercury Testtools
Bereich funktional oder hinsichtlich der Performance negativ auswirken. Kurz
gesagt: Der Weg zum optimierten System ist nicht notwendigerweise eine Ein-
bahnstraße. Durch permanente Tests mit gleichen Lastprofilen bei veränderter
Systemkonfiguration bzw. veränderten Lastprofilen ist es möglich, das Perfor-
manceverhalten der Systeme aus unterschiedlichen Perspektiven zu durch-
leuchten. So kann das System optimal auf den späteren Wirkbetrieb ausgerich-
tet werden.
347
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
348
Sandini Bib
349
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
Abbildung 13.8
Konfiguration des Systems R/3 für den Performancetest
350
Sandini Bib
Abbildung 13.9
Zusammenfassung der Vorgehensweise für den Performancetest
Abbildung 13.10
LoadRunner, beispielhafte Performancekurven
351
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
352
Sandini Bib
353
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
354
Sandini Bib
355
Sandini Bib
13.2 Testlösungen von Mercury – Executive Summary
356
Sandini Bib
letzt als Projekt Manager für die Leitung von Entwicklungsprojekten (Personal
Computer-Plattformen und Softwarelösungen) verantwortlich. In seinen Auf-
gabenbereich fiel neben der weltweiten Koordination von Marketing, Einkauf,
Produktmanagement, Entwicklung und Fertigung auch die Produktauswahl
und Erstellung von Produktspezifikationen und Projektplänen.
Manfred Eierle, der am 9. Juni 1967 in Schwabmünchen geboren wurde, hat
nach der Fachoberschule in Augsburg ein Studium der Elektrotechnik mit dem
Schwerpunkt Nachrichtentechnik absolviert. Für seine Diplomarbeit erhielt er
eine Auszeichnung des VDI (Verband der Deutschen Industrie).
357
Sandini Bib
Sandini Bib
Anhang A
A
Das nachfolgend abgebildete traditionelle Vorgehensmodell zur Einführung
der R/3-Software wurde von der SAP entwickelt. Jede Aktivität innerhalb der
einzelnen Phasen dieses Vorgehensmodells, die mit CATT abgearbeitet werden
kann, ist mit dem Zusatz »CATT« gekennzeichnet.
Jeder Arbeitsschritt, der mithilfe der Testworkbench durchgeführt werden
kann, wird im Folgenden mit dem Zusatz »Testworkbench« versehen.
A.1 R/3-Einführung:
Traditionelles Vorgehensmodell
Projekt vorbereiten
Projekt initialisieren
Unternehmensziele des R/3-Einsatzes definieren
Bestandsaufnahme durchführen
Prozesse/Funktionen des R/3-Systems kennen lernen
Geschäftsprozesse definieren
Funktionale Anforderungen mit R/3-System abgleichen
Abbildung der Unternehmensstruktur erarbeiten
Ziele und Umfang von Standardisierungsvorhaben definieren
Einführungsstrategie festlegen
359
Sandini Bib
A.1 R/3-Einführung: Traditionelles Vorgehensmodell
Hardware-Bedarf ermitteln
Projektaufbauorganisation festlegen
Projektstandards und -arbeitsweise festlegen
Systemlandschaft festlegen
Aufwands-, Termin- und Kostenplan erstellen
Ergebnisse der Projektvorbereitung verabschieden
Projektauftrag erstellen
Kick-off des Einführungsprojektes durchführen
Systemlandschaft einrichten
Systeme und Mandanten einrichten CATT
Benutzerstammsätze für Projektmitarbeiter einrichten CATT
Mandantensteuerung, Korrektur-/Transportwesen einrichten
Systemumfeld einrichten
Remote-Verbindung einrichten
Landesspezifische Voreinstellungen ändern
Unternehmens-IMG erzeugen
Customizing-Projekte anlegen
Projektteam schulen
Projektteam ausbilden CATT
R/3-Funktionalität kennenlernen CATT
Prozesse/Funktionen festlegen
Prozesse/Funktionen anhand des Referenzmodells spezifizieren
Verantwortung für Prozesse/Funktionen festlegen
Input/Output-Informationsobjekte überprüfen
Anforderungen an das Berichtswesen ermitteln
Schnittstellen und Systemerweiterungen bestimmen
Abbildung der Unternehmensstruktur festlegen
Prototyping ausgewählter Prozesse/Funktionen durchführen
DV-Konzept spezifizieren
Fach- und DV-Konzept abstimmen
360
Sandini Bib
Qualitätsprüfung Sollkonzept
Projektaufbau- und -ablauforganisation überprüfen
Einhaltung der Projektstandards überprüfen
Systemlandschaft überprüfen
Sollkonzept überprüfen
Schnittstellen- und Systemerweiterungsbeschreibung überprüfen
Projektplanung überprüfen
Prüfungsprotokoll erstellen
Freigabe der nächsten Phase veranlassen
Unternehmensstruktur abbilden
R/3-Systemorganisationseinheiten prüfen und anpassen
Prozesse/Funktionen abbilden
Felder und Inhalte für Prozesse/Funktionen festlegen CATT
Systemeinstellungen für Prozesse/Funktionen durchführen CATT
361
Sandini Bib
A.1 R/3-Einführung: Traditionelles Vorgehensmodell
Berichtssystem abbilden
Informationsbedarf ermitteln
Informationsbedarfsabdeckung prüfen
Lösungen für noch offene Anforderungen erstellen
Organisation des Berichtssystems festlegen
Berichtssystem testen
Archivverwaltung abbilden
Konzept für Archivverwaltung erstellen
Systemeinstellungen durchführen
Archivierungsvorgänge testen
Berechtigungsverwaltung abbilden
Berechtigungskonzept erstellen
Berechtigungskonzept realisieren
Berechtigungen testen
Abschlusstest durchführen
Testkonzept erstellen Testworkbench
Testplan erstellen Testworkbench
Testaktivitäten durchführen CATT
362
Sandini Bib
Qualitätsprüfung Anwendungssystem
Projektaufbau- und -ablauforganisation überprüfen
Einhaltung der Projektstandards überprüfen
Umsetzung Sollkonzept überprüfen
Schnittstellen-/Systemerweiterungsrealisierung überprüfen
Berichtssystem überprüfen
Archivverwaltung überprüfen
Berechtigungskonzept überprüfen
Abschlusstest überprüfen
Projektplanung überprüfen
Prüfungsprotokoll erstellen
Freigabe der nächsten Phase veranlassen
Anwenderdokumentation entwickeln
Struktur, Inhalt und Medien festlegen
Erstellung der Anwenderdokumentation vorbereiten
Änderungskonzept erstellen
Anwenderdokumentation erstellen
Produktivumgebung einrichten
Anhang A
Netzwerk installieren
Hardware und Software am Arbeitsplatz installieren
R/3-System im Produktivsystem installieren
363
Sandini Bib
A.1 R/3-Einführung: Traditionelles Vorgehensmodell
Anwender schulen
Schulungsprogramm erstellen CATT
Schulungen vorbereiten CATT
Schulungen durchführen CATT
Systemadministration organisieren
Systemadministration festlegen
Systemadministratoren schulen
Qualitätsprüfung Produktivsystem
Anwenderdokumentation überprüfen
Produktivumgebung überprüfen CATT
Durchgeführte Anwenderschulung überprüfen
Organisation der Systemadministration überprüfen
Datenübernahmen überprüfen CATT-Protokoll
Projektplanung überprüfen
Prüfungsprotokoll erstellen
Freigabe der nächsten Phase veranlassen
Produktivbetrieb unterstützen
Anwender in der produktiven Anfangsphase betreuen
Permanente Betreuung durch Help-Desk-Organisation festlegen
Systemnutzung optimieren
Systemeinsatz überwachen und optimieren CATT
364
Sandini Bib
Anpassungen vornehmen
Projekt offiziell abschließen
Anhang A
365
Sandini Bib
Sandini Bib
Anhang B
B
B.1 Aufgabenbeschreibung der ASAP-Phasen
Das nachfolgend abgebildete ASAP-Vorgehensmodell zur Einführung der R/3-
Software wurde von der SAP AG entwickelt. Jede Aktivität innerhalb der ein-
zelnen Phasen dieses Vorgehensmodells, die mit CATT abgearbeitet werden
kann, ist mit dem Zusatz »CATT« gekennzeichnet.
Jeder Arbeitsschritt, der mithilfe der Testworkbench durchgeführt werden
kann, wird im Folgenden mit dem Zusatz »Testworkbench« versehen.
Projektplanung erstellen
Projektauftrag erstellen
Formulierung des Projekts Mission Statements
Business-Drivers bestimmen
Betriebswirtschaftliche Erfolgskennzahlen festlegen
Projekterfolgskennzahlen bestimmen
Inhalte des Projektauftrags zusammenstellen
Genehmigung des Projektauftrags
Einführungsstrategie prüfen und detaillieren
Einführungsvorschlag prüfen
Einführungsmethode bestätigen
367
Sandini Bib
B.1 Aufgabenbeschreibung der ASAP-Phasen
Projektabläufe
Projektmanagementstandards und -abläufe definieren
Kommunikationsplan festlegen
Projektdokumentation definieren
Plan für Issue-Management erstellen
Plan für Projektumfang-Management erstellen
Plan für teambildende Aktivitäten festlegen
Standards für Projektplanung und -controlling definieren
Verwendung der R/3-Services festlegen
Verfahren der Qualitätssicherung bestimmen CATT
Einführungsstandards und -abläufe definieren
Standards für Systemkonfiguration entwickeln
Strategie für Benutzerschulung und Dokumentation definieren
368
Sandini Bib
Projekt-Kickoff
Kickoff-Meeting
Kickoff-Meeting vorbereiten
Kickoff-Meeting durchführen
Projekt unternehmensweit vorstellen
Meeting zur Vorstellung der Projektstandards
Meeting zu Projektstandards vorbereiten
Meeting zu Projektstandards durchführen
Sizing-Ergebnisse abstimmen
Hardware bestellen
Remote-Netzwerkanbindung bestellen
369
Sandini Bib
B.1 Aufgabenbeschreibung der ASAP-Phasen
Qualitätsprüfung Projektvorbereitung
Qualitätsprüfung vornehmen und Abnahme durchführen
Qualitätsprüfung durchführen
Projektvorbereitungsphase abnehmen
370
Sandini Bib
Systemumgebung entwickeln
Technisches Konzept entwerfen
Systeminfrastruktur und Verteilung dokumentieren
Druckerinfrastruktur definieren und dokumentieren
Netzwerktopologie dokumentieren
Schnittstellentopologie dokumentieren
Change-Request-Management definieren
Release-Management-Strategie definieren
Desktop-Management-Strategie definieren
Technisches Konzept abstimmen
Entwicklungsumgebung einrichten
Hardware-Grundausstattung installieren
Systemumgebung überprüfen
Entwicklungsmandant einrichten und konfigurieren CATT
Desktop-Komponenten für Projektteam installieren
Benutzerstammsätze für Projektteam einrichten CATT
Entwicklungssystem sichern
Druckdienste für Projektteam installieren und konfigurieren
Remote-Netzwerkanbindung konfigurieren
Remote-Anbindung zu SAP einrichten
Systemlandschaft einstellen
Entwicklungsmandanten einrichten und konfigurieren CATT
Transportsystem konfigurieren und testen CATT
Systemverwaltung
Basis- und Systemsworkshop durchführen
Systemverwaltung für Entwicklungssystem definieren
CCMS konfigurieren
Anhang B
Backup-Strategie definieren
Funktionen der Systemverwaltung überprüfen
Periodische Vorgänge der Systemverwaltung festlegen
371
Sandini Bib
B.1 Aufgabenbeschreibung der ASAP-Phasen
Organisationsstruktur
Unternehmensstrukturen bestimmen
Unternehmensstruktur-Workshop planen
Empfehlungen zur Unternehmensstruktur verteilen
Unternehmensstruktur-Workshop durchführen
Unternehmensstruktur empfehlen und abstimmen
Geschäftsprozessdefinition
Geschäftsprozess-Workshops vorbereiten
Geschäftsprozess-Workshops planen
Workshop zur Vorgehensweise bei Prozessdefinition durchführen
Workshop zu globalen Anforderungen durchführen
Globale Parameter festlegen
Unternehmensspezifische Standards festlegen
Geschäftsprozess-Workshops durchführen
Anforderungen zu Geschäftsprozessen bestimmen
Bedarf an erweiterter R/3-Funktionalität bestimmen
Anforderungen zum Berichtswesen bestimmen
Erforderliche Schnittstellen bestimmen
Anforderungen zur Datenübernahme bestimmen
Erforderliche Erweiterungen bestimmen
Bereiche mit niedrigem Abdeckungsgrad klären
Beschreibungen und Modelle der Geschäftsprozesse detaillieren
Bedarf an zusätzlichen detaillierten Workshops bestimmen
Detailanforderungs-Workshops planen
372
Sandini Bib
Detailanforderungs-Workshop durchführen
Detaillierte Anforderungen bestimmen
Geschäftsprozessdefinition und -modelle optimieren
Business Blueprint vervollständigen
Projektorganisation und -rollen detaillieren
Blueprintdokumente zusammenstellen
Baseline-Umfang ermitteln
Vollständigkeit des Blueprints überprüfen
Prüfung und Freigabe Business Blueprint
Blueprint-Präsentation vorbereiten
Prüfung und Freigabe durchführen
Benutzerschulung planen
Umfang, Inhalt und Ablauf der Benutzerschulung festlegen
Benutzerschulungsplan ausarbeiten
Benutzerschulungsplan abstimmen
Projektmanagement Realisierung
Abstimmung des Projektstatus
Status-Meetings vorbereiten
Status-Meetings durchführen
Erledigung der zugeordneten Aufgaben verfolgen
Anhang B
Projektabweichungen korrigieren
Projektplan anpassen
373
Sandini Bib
B.1 Aufgabenbeschreibung der ASAP-Phasen
Lenkungsausschuss
Lenkungsausschuss-Meetings vorbereiten
Lenkungsausschuss-Meetings durchführen
Erledigung der zugeordneten Aufgaben verfolgen
Ausgangsplanung für Produktionssupport und Cutover
Plan für Produktionssupport festlegen
Plan für Cutover festlegen
Allgemeines Projektmanagement
Change Management
Teambildende Aktivitäten durchführen
374
Sandini Bib
Systemverwaltung
Systemtestpläne erarbeiten CATT
Testplan für Systemausfallszenarien erarbeiten
Durchsatztestplan erarbeiten
Stresstestplan erarbeiten
Testplan zur Systemadministration erarbeiten
Druck- und Faxtestplan erarbeiten
Service-Level-Abkommen definieren
Systemausfallszenarien festlegen
Disaster-Recovery-Verfahren definieren
Service-Level-Abkommen einrichten
Systemadministrationsfunktionen einrichten
Verfahren für Mandantenkopie überprüfen
Anhang B
375
Sandini Bib
B.1 Aufgabenbeschreibung der ASAP-Phasen
Qualitätssicherungsumgebung einrichten
Hardware für QS-System installieren
Technische Systemumgebung überprüfen
Qualitätssicherungssystem installieren
Benutzerstammsätze für Qualitätssicherung einrichten CATT
Qualitätssicherungssystem sichern
Druckdienste einrichten
Mandantenverwaltung und Transportsystem einrichten
Produktivsystemdesign festlegen
Schätzungen für Arbeitslast und Speicherplatz überprüfen
Festplattenlayout für das Produktivsystem entwerfen
Systemmanagement für das Produktivsystem definieren
Sicherheitskonzept des Produktivsystems festlegen
Produktive Betriebsabläufe definieren
Systemadministration für das Produktivsystem definieren
Druckumgebung für das Produktivsystem definieren
Administrationsabläufe für die Produktivdatenbank definieren
R/3-System-Bedienerhandbuch erstellen
Produktivumgebung aufbauen
Hardware für Produktivsystem installieren
Technische Umgebung des Produktivsystems überprüfen
Produktivsystem installieren
Netzwerkumgebung installieren und konfigurieren
Desktop-Hardware und -Komponenten installieren
Betriebssystem und Datenbank sichern
Drucker installieren und Druckfunktionen konfigurieren
376
Sandini Bib
Datenübernahmeprogramme entwickeln
Datenübernahmeverfahren ausarbeiten
Detaillierte Definition der Datenübernahme erstellen
Datenübernahmeprogramme erstellen CATT
Manuelle Datenübernahmevorgänge durchführen
Datenübernahmeprogramme testen und transportieren
Anhang B
377
Sandini Bib
B.1 Aufgabenbeschreibung der ASAP-Phasen
Erweiterungen entwickeln
Erweiterungsprogramme erarbeiten
Detailierte Definition der Erweiterung ausarbeiten
Genehmigung prüfen
Erweiterungen erstellen
Erweiterungsprogramme testen und transportieren
Testverfahren für Erweiterungen definieren CATT
Erweiterungsprogramme testen und prüfen CATT
Ergebnisse der Erweiterungstests abstimmen
Erweiterungen in QS-System transportieren
Reports entwickeln
Reports erarbeiten
Detaillierte Definition der Reports ausarbeiten
Genehmigung prüfen
Reports erstellen
378
Sandini Bib
Formulare entwickeln
Formulare erarbeiten
Formulare entwickeln
Genehmigung prüfen
Formulare erstellen
Formulare testen
Testverfahren für Formulare definieren
Formulare testen und nochmals prüfen
Ergebnisse der Formulartests abnehmen
Formulare in QS-System transportieren
Berechtigungskonzept erarbeiten
Detaillierte Definition des Berechtigungskonzeptes ausarbeiten
Berechtigungsstrategie des Unternehmens detaillieren
Wichtige Transaktionen für Berechtigungen dokumentieren
Autorisierungsgespräch mit Bereichsverantwortlichen durchführen
Allgemeinen Zugang zu Informationen bestimmen
Verfahren zur Berechtigungsverwaltung beschreiben
Berechtigungskonzept implementieren
Aktivitätsgruppen erstellen
Berechtigungsprofile anlegen CATT
Modelle für Benutzerstammsätze entwickeln
Anhang B
379
Sandini Bib
B.1 Aufgabenbeschreibung der ASAP-Phasen
Archivierung einrichten
Archivierungsverfahren erarbeiten
Archivierungsstrategie festlegen
Archivierungsverfahren erstellen
Archivierungsvorgänge testen
Archivierungsverfahren prüfen und abstimmen
Abschließender Integrationstest
Planung des Integrationstests erarbeiten Testworkbench
Umfang des Integrationstests festlegen Testworkbench
Testfälle bestimmen Testworkbench
Plan für Integrationstest erstellen Testworkbench
Planung des Integrationstests erarbeiten
Transport aller Objekte im Qualitätssicherungssystem (QS) sicherstellen
System sperren
Abschließenden Integrationstest durchführen CATT
Systemeinrichtung abschließen
Integrationstest prüfen und abstimmen
380
Sandini Bib
Qualitätsprüfung Realisierung
Qualitätsprüfung vornehmen und Abnahme durchführen
Qualitätsprüfung durchführen
Realisierung abnehmen
Projektmanagement Produktionsvorbereitungsphase
Projektstatus-Meeting
Status-Meetings vorbereiten
Status-Meetings durchführen
Erledigung der zugeordneten Aufgaben verfolgen
Projektabweichungen korrigieren
Projektplan anpassen
Lenkungsausschuss
Lenkungsausschuss-Meetings vorbereiten
Lenkungsausschuss-Meetings durchführen
Erledigung der zugeordneten Aufgaben verfolgen
Allgemeines Projektmanagement
Change-Management
Teambildende Aktivität durchführen
Anhang B
381
Sandini Bib
B.1 Aufgabenbeschreibung der ASAP-Phasen
Benutzerschulung
Benutzerschulung vorbereiten
Logistik für Schulung fertigstellen
Umgebung für Benutzerschulung einrichten CATT
Schulungsdaten in Trainingsumgebung transportieren
Benutzerschulungen durchführen
Benutzerschulung durchführen CATT
Benutzerschulung prüfen
Systemmanagement
Administration des Produktivsystems einrichten
CCMS für Produktivumgebung konfigurieren
Druck- und Spooladministration für das Produktivsystem konfigurieren
Personal für Systemadministration schulen
Systemtests durchführen CATT
Durchsatztest durchführen
Stresstest durchführen
Systemadministrationstests durchführen
Disaster-Recovery-Test durchführen
Backup- und Restore-Verfahren testen
Druck- und Faxtests durchführen
GoingLive (Check)
382
Sandini Bib
Cutover
Cutover in Produktivsystem durchführen
Transport in die Produktionsumgebung
Datenübernahme vornehmen CATT
Daten manuell eingeben
Endabnahme für den Produktionsanlauf
Produktivsystem abnehmen
Produktivsystem sichern
Bereitschaft der Benutzer sicherstellen
Qualitätsprüfung Produktionsvorbereitung
Qualitätsprüfung vornehmen und Abnahme durchführen
Qualitätsprüfung durchführen CATT
Produktionsvorbereitungsphase abnehmen
Produktionssupport
Produktionssupport bereitstellen
Probleme und Issues kommunizieren
Issues klären und Probleme lösen
Ergebnisse der produktiven Geschäftsprozesse prüfen
Anhang B
383
Sandini Bib
B.1 Aufgabenbeschreibung der ASAP-Phasen
Systemnutzung optimieren
EarlyWatch-Sitzungen durchführen
Technische Umgebung optimieren
R/3-Transaktionen optimieren CATT
384
Sandini Bib
Anhang C
C
C.1 Kernprozesse im IDES-Schulungssystem
Unter den so genannten »Kernprozessen« im IDES-Schulungssystem sind die
Beispiele aufgeführt, die eine hohe Integration der Geschäftsabläufe im R/3-Sy-
stem abbilden und wichtige Geschäftsprozesse in IDES darstellen. Jeder dieser
Kernprozesse, der mit CATT abgearbeitet werden kann, ist mit dem Zusatz
»CATT« gekennzeichnet.
C.1.1 Logistik
Einzelfertigung
Kundeneinzelfertigung mit konfigurierbarem Produkt CATT
Auftragserfassung im Internet für konfigurierbare Produkte CATT
Geschäftsprozesse in der Automobilindustrie CATT
Losfertigung
Kundenauftragsanonyme Vorplanung CATT
Vorplanung mit Endmontage CATT
Vorplanung auf Baugruppe CATT
Langfristplanung
385
Sandini Bib
C.1 Kernprozesse im IDES-Schulungssystem
Serienfertigung
Planungsintegration Vertrieb/Produktion
Serienfertigung Glühlampen CATT
Serienfertigung Personal Computer CATT
Auftragserfassung im Internet über einen Produktkatalog CATT
Verkauf eines serialisierten Produktes und Anlegen eines Equipment-
Stammsatzes
Serviceabwicklung und aufwandsbezogene Fakturierung ohne
Servicevertrag
Allgemein
Buchungskreisübergreifende Transportaufträge mit MM und SD
Kreditkontrolle CATT
Einzelkapazitätsplanung auf Personenebene
Rechnungswesen
Anzahlungsabwicklung/Kreditor
Auftragserstellung und Nachweis aller Belege im Rechnungswesen
Personalwirtschaft
Einstellung eines neuen Mitarbeiters
386
Sandini Bib
Anhang D
D
D.1 Übersicht der standardmäßig verfügbaren
Testabläufe
Die folgende Tabelle gibt eine Übersicht über die Testabläufe, die standardmä-
ßig mit dem SAP R/3-System ausgeliefert werden. Die Tabelle ist nach der
Kurzbeschreibung des Testablaufes sortiert. Auf eine Übersicht zu den Testbau-
steinen wurde verzichtet, da standardmäßig über 3000 Bausteine mitausgelie-
fert werden.
Abgrenzungsschlüssel K1105410
ABSCHLUSS K1102674
afds B2000600
387
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
Anpassungsbuchungen K1102449
388
Sandini Bib
Batch-Input K1105042
Batchkalkulation ! K1105001
Bauteilauflösung K1105027
389
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
Berichtswesen K1105002
390
Sandini Bib
391
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
Debitorenbuchhaltung K1102680
Dispositionsgruppen K1105409
DURCHBUCHUNGEN K1102678
392
Sandini Bib
Fehlerhandling K1105041
Anhang D
Fertigungsauftragskalkulation K1105013
393
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
394
Sandini Bib
GESCHÄFTSVERKEHR K1102673
GESCHÄFTSVORFÄLLE K1102672
Includemenüs B2000824
Instandhaltungskalkulation K1105018
Internet-Test B2000764
Invst.auftr.anl./Plan/Budget/IP/Equi/IH/Rück P3006522
395
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
Invst.auftr.anl./Plan/Budget/IP/Equi/IH/Rück P3008854
KONS-RF410 K1102376
Kontenverwaltung P3013894
Kontenverwaltung P3013896
Kontrollsummen K1101431
Kopfdaten P3001780
396
Sandini Bib
Kostenstellenzuordnung P3001764
Kreditorenbuchhaltung K1102681
Kuppelproduktion K1105010
397
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
Materialselektion K1105332
Messagevariablen-Check ALRSCAT_X_MSG05
Messagevariablen-Check ALRSCAT_X_MSG06
Messagevariablen-Test ALRSCAT_X_MSG02
Moduswechsel B2000763
Navigation P3001817
Netzplankalkulation K1105017
398
Sandini Bib
Personen P3001768
Planstellen P3001767
399
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
Plausibilitätsprüfungen K1102448
Positionstypenzuordnung P40SD_05
Prozessfertigung K1105019
Qualifikationen P3001769
400
Sandini Bib
401
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
Referenzangebot P3001781
402
Sandini Bib
Rohberichtsfreigabe P3007631
Sachkontenbuchhaltung K1102679
Sonderbeschaffungsschlüssel K1104993
STAMMDATEN K1102671
Stammdaten K1104989
Stammdaten/Kostenträgerrechnung K1104357
Anhang D
403
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
404
Sandini Bib
STEUERN K1102676
405
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
Stücklisten-/Arbeitsplanselektion K1104999
406
Sandini Bib
Terminierung P3001763
TEXT K1104988
TM31 B2000362
407
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
Übernahmesteuerung K1104995
Übernahmestrategien K1105040
Übersicht P3001778
Verwendungsnachweis B2000804
Vorschlagswerte P3001749
WÄHRUNGEN K1102677
408
Sandini Bib
Währungsumrechnung K1102450
Workflow-Schrittprotokoll K1105710
409
Sandini Bib
D.1 Die standardmäßig verfügbaren Testabläufe
410
Sandini Bib
Glossar
411
Sandini Bib
Glossar
412
Sandini Bib
413
Sandini Bib
Glossar
414
Sandini Bib
415
Sandini Bib
Glossar
416
Sandini Bib
Glossar
417
Sandini Bib
Sandini Bib
Literaturverzeichnis
Balzert92
Helmut Balzert:
Die Entwicklung von Software-Systemen: Prinzipien, Methoden, Sprachen,
Werkzeuge. Mannheim u.a. 1992
Balzert96
Helmut Balzert:
Lehrbuch der Software-Technik: Software-Entwicklung. Heidelberg, Berlin
1996
Balzert98
Helmut Balzert:
Lehrbuch der Software-Technik: Software-Management, Software-Qualitäts-
sicherung, Unternehmensmodellierung, Heidelberg, Berlin 1998
Beims95
H. D. Beims:
Praktisches Software Engineering: Vorgehen, Methoden, Werkzeuge. Mün-
chen, Wien 1995
Beyer98
Hugh Beyer, Karen Holtzblatt:
Contextual Design: Defining Customer-Centered Design. San Francisco 1998
Bieberstein93
N. Bieberstein:
CASE-Tools: Auswahl, Bewertung, Einsatz, München, Wien 1993
419
Sandini Bib
Literaturverzeichnis
Boehm81
B. W. Boehm :
Software Engineering, Englewood Cliffs 1981
Brand 98
Hartwig Brand:
SAP R/3-Einführung mit ASAP: Technische Implementierung von SAP R/3
planen und realisieren. Bonn u.a. 1998
Cohn77
Ruth Cohn:
Von der Psychoanalyse zur Themenzentrierten Interaktion, Klett Cotta 1977
Curth89
Michael A. Curth, Martin C. Giebel:
Management der Software-Wartung. Stuttgart 1989
DSDM95
DSDM Consortium:
Dynamic Systems Development Method. Version 2, Farnham 1995
DSDM97
DSDM Consortium:
Dynamic Systems Development Method. Version 3, Farnham 1997
Frese94
Michael Frese, Jochen Prümper, Ferdinand Solzbacher:
Eine Fallstudie zu Benutzerbeteiligung und Prototyping. In: Felix C. Brod-
beck, Michael Frese (Hrsg.): Produktivität und Qualität in Software-Projek-
ten. Psychologische Analyse und Optimierung von Arbeitsprozessen in der
Software-Entwicklung. München, Wien 1994, S. 135–143
Frick95
A. Frick:
Der Softwareentwicklungsprozeß. Ganzheitliche Sicht. München 1995
Gladden82
G. R. Gladden:
Stop the Life-Cycle, I want to get off. In: Software Engineering Notes. Nr.2,
1982, S. 25–39
Geiss, Soltysiak98
M. Geiss, R. Soltysiak:
SAP R/3 dynamisch einführen. Bonn 1998
420
Sandini Bib
Haberfellner92
Haberfellner, Nagel, Becker, Büchel, von Massom:
Systems Engineering: Methodik und Praxis. 7. Auflage, Zürich 1992
Himmler94
J.F. Himmler, N. H. C. Thuy:
Marktreport 1994 – Intelligente Software-Technologien. München 1994
Jäger93
E. Jäger et al.:
Die Auswahl zwischen alternativen Implementierungen von Geschäftspro-
zessen im einem Standardsoftwarepaket am Beispiel eines KFZ-Zulieferes.
In: Wirtschaftsinformatik 35, 1993
Jalote91
Pankaj Jalote:
An Integrated Approach to Software Engineering. New York u. a. 1991
Jamin94
K.-W. Jamin:
Das Software-Lexikon. 3., akt. Auflage, Renningen-Malmsheim 1994
Keller98
G. Keller, Th. Teufel:
SAP R/3 prozeßorientiert anwenden. 2., durchges. u. korr. Auflage, Bonn
Reading, Mass. 1998
Lehner94
F. Lehner:
Softwaredokumentation. München, Wien 1994
Martin91
James Martin:
Rapid Application Development. New York 1991
Mayrhauser90
Anneliese von Mayrhauser:
Software Engineering. Methods and Management. Boston u.a. 1990
Literaturverzeichnis
421
Sandini Bib
Literaturverzeichnis
Mumford84
Enid Mumford, Günter Welter:
Benutzerbeteiligung bei der Entwicklung von Computersystemen. Verfah-
ren zur Steigerung der Akzeptanz und Effizienz des EDV-Einsatzes. Berlin
1984
Nomina96
Nomina Information Services
ISIS PC Report 2-1996, München 1996
Page-Jones95
M. Page-Jones:
Strukturiertes Systemdesign. London 1995
Paulk95
Mark C. Paulk, Charles V. Weber, Bill Curtis, Mary Beth Chtissis:
The Capability Maturity Model: Guidelines for Improving the Software Pro-
cess. Reading u.a. 1995
Pomberger96
G. Pomberge, G. Blaschek:
Software Engineering, 2., überarb. Auflage, München, Wien 1996
Managermagazin98
J. Rieker:
Die drei von der Baustelle. In: Managermagazin Nr.4, 1998
Börse Online97
W. Rüppel:
SAP – einfach die erfolgreichste Aktie. In: Börse Online Nr. 46, 1997
Schneider97
H.-J. Schneider:
Lexikon Informatik und Datenverarbeitung. 4., akt. u. durchges. Auflage,
München, Wien 1997
Stahlknecht95
P. Stahlknecht:
Einführung in die Wirtschaftsinformatik. 7., vollst. überarb. und erw. Aufla-
ge, Berlin 1995
Sommerville92
Ian Sommerville:
Software Engineering. 4. Auflage, Wokingham, u.a. 1992
422
Sandini Bib
Stapleton97
Jennifer Stapleton:
Dynamic Systems Development Method. The Method In Practice. Harlow
1997
Thome96
R. Thome, A. Hufgard:
Continuous System Engineering. Würzburg 1996
Trauboth93
H. Trauboth:
Software-Qualitätssicherung. München, Wien 1993
Ungermann96
C. Ungermann, F.-J. Tesch, B. Stolpe, M. Weissert:
Qualitätsmanagement bei der Softwareerstellung: Leitfaden für die Umset-
zung der DIN EN ISO 9000. Düsseldorf 1996
VDI92
VDI-Gemeinschaftsausschuß CIM:
Qualitätssicherung. Düsseldorf 1992
Wenzel96
P. Wenzel:
Betriebswirtschaftliche Anwendungen des integrierten Systems SAP R/3.
2., verbes. u. erw. Auflage, Braunschweig, Wiesbaden 1996
Xu95
Z.-Y. Xu:
Prinzipien des Entwurfs und der Realisierung eines Organisationsinformati-
onssystems. Heidelberg 1995
Zöller91
H. Zöller:
Wiederverwendbare Software-Bausteine in der Automatisierung. Düssel-
dorf 1991
Literaturverzeichnis
423
Sandini Bib
Literaturverzeichnis
Internetadressen:
SAP AG: Strasbourg – Summary, Walldorf 1997
http://www.sap-ag.de/products/r2/aktuell/strasbou.htm
SAP AG: CATT – A simple tool, Walldorf
http://www.sap-ag.de/products/r2/press/catte.htm
SAP AG: CATT – automated test procedures for improved quality assurance,
Walldorf 1997
http://www.sap-ag.de/products/r2/press/10rieg12.htm
SAP AG: ABAP/4-Develoment Workbench – Media Center, Walldorf 1998
http://www.sap-ag.de/germany/products/abap/media/mc_over.htm
SAP AG: Funktionen im Detail: ABAP/4 Development Workbench, Walldorf
1997
http://www.sap-ag.de/germany/products/abap/media/50007832.htm
Anforderung an moderne Softwareentwicklungswerkzeuge
http://www.sap-ag.de/germany/products/techno/media/pdf/07832_02.pdf
Anwendungsentwicklung mit der ABAP/4 Development-Workbench
http://www.sap-ag.de/germany/products/techno/media/pdf/07832_03.pdf
Einführung des Entwicklungssystems
http://www.sap-ag.de/germany/products/techno/media/pdf/07832_04.pdf
Glossar
http://www.sap-ag.de/germany/products/techno/media/pdf/07832_gl.pdf
SAP AG: System R/3 – ABAP Workbench, Walldorf 1997
http://www.sap-ag.de/germany/products/techno/media/pdf/50004382.pdf
424
Sandini Bib
Stichwortverzeichnis
◗◗ A Blockmodus 158
Funktionseditor 158
ABAP/4 58 Altdatenübernahme 78, 124
ABAP/4-Data-Modeller 62 Anwenderschulung 89
ABAP/4-Development-Workbench 47, 57 Anwendungssystem 29
Bestandteile 58 Anwendungstest 153
ABAP/4-Dictionary 59 Application Link Enabling 132
ABAP/4-Editor 61 application software 29
ABAP/4-Navigation/Browser 61 Archivierung von Protokollen 144
ABAP/4-Query 62 ARIS-Toolset 80
ABAP/4-Repository 59 ASAP 74, 97
ABAP/4-Workbench-Organizer 61 ASAP-Einführungsmethodik 43, 80
Abbruch einer Schleife – EXIT 164 Backup- und Restore-Verfahren 43
Abbruchkennzeichen 154 ASAP-Roadmap 97
Abgebildet in CATT-Testbaustein Attribute 147
ZDCE0091 293 Abhängigkeiten 152
Abhängigkeiten definieren – IF...ENDIF 164 Allgemeine Daten 150
Ablaufprotokoll – Testablauf 220 Kennzeichen 154
Ablaufstatistik 249 Kopfdaten 148
Abschlussreview 80 Nutzbarkeit 153
Abschlusstest durchführen 84 Verwaltungsdaten 151
Abspielmodus 181, 252–253 Attributspflegebildschirm 148, 214–215,
Dunkles Abspielen 181 295
Helles Abspielen 181 Aufbau von Stammdaten im Rahmen der
Nur Fehler anzeigen 181 Altdatenübernahme sowie Anlegen
Protokollart 181 neuer Stammdaten 83
Abspielparametrisierung 259 Aufzeichnung von Testbausteinen 294
Add Ons 78 Aufzeichnungsfunktionalität 131, 140,
Add-On-Komponente 128 185
ALE 132 Auswertung von Protokollen 144
Allgemeine Funktionen Authorisationskonzept 130
425
Sandini Bib
Stichwortverzeichnis
◗◗ B Bildschirmbildern orientierte
Statistik 258
Batch-Input 70 Statusanalyse 255
Batch-Input-Mappe 72 CATT-Testablauf 318
Bearbeitungsfunktionen 159 CATT-Testaktivitäten 124
Beenden einer Schleife – ENDDO 163 CATT-Transportvorbereitung 263
Benutzerfestwerte 151 CATT-Übersicht 264
Benutzerhandbuch 37 CHEERR 164
Benutzerschnittstelle 48 CHETAB 165
Berechtigungsobjekt 129 CHEVAR 165
Berechtigungsprüfung 129 Client/Server-Anwendungsentwicklung 58
Betriebswirtschaftliche Testszenarien 131 Client/Server-Architekturen 54
Betriebswirtschaftlicher Prozess 140 COMMIT WORK 70
Bildschirmbildabfolge 140 Computer Aided Software Engineering 46
Branchenlösung 55 Computer Aided Test Tool 40, 67, 269
Branchenmodell 52 Computergestütztes (Test-)Werkzeug 28
Business Blueprint 97 Contextual Inquiry 123
Customizing 142, 271
Customizing-Änderungen 78
◗◗ C Customizing-Einstellung 53, 117, 288
Customizing-Tabellen 231
CASE 48 mit CATT einstellen – SETTAB 162
CASE-Begriff 46
CASE-Plattform 47
CASE-Tool 46–50, 68, 287 ◗◗ D
CASE-Umgebung 28, 47–49, 127
CASE-Werkzeuge 28 Datenbankinhalt prüfen – CHETAB 165
CASE-Werkzeugkategorien 48 Datenintegrität 48
CATT 28, 50, 67, 73, 284 Datenkonsistenz 55
Funktionsüberblick 68 Datumsvariablen 177
CATT-Abläufe 128 Debugging 28
CATT-Ablaufprotokoll 208 Rückverfolgung 45
CATT-Attributspflegebildschirm 191 Defaultparameter 259
CATT-Entwicklung 129 Defaultparametrisierung 254
CATT-Historie 67 Detailbildschirm von CATT 195, 199
CATT-Management 180, 249, 264 Detaillierung und Realisierung 75
Einzelstart 250 Dialogmeldung 204
Massenstart 249 DIN ISO 9000-3 40
Selektion 250 DIN ISO 9003 318
CATT-Massentest-Report 261 DO 163
CATT-Objekt 132, 201 Downloadfunktion 143
CATT-Projekt 283 DSDM 35, 103
CATT-Protokoll 141–142, 220, 247, 304 DSDM-basiertes Vorgehensmodell 32, 36,
CATT-Protokoll-Archiv 184 103
CATT-Prozedur 253 DSDM-Besonderheiten 111
CATT-Rangfolge-Pflege 261 DSDM-Durchlauf 118
CATT-Startbildschirm 207 DSDM-Konsortium 34
CATT-Statistik 254 DSDM-Modell 35
An Transaktionscode und DSDM-Tauglichkeit 35
426
Sandini Bib
427
Sandini Bib
Stichwortverzeichnis
Nachspannläufe 153
◗◗ K Namenskonvention 201, 204
Nur Fehler anzeigen 181
Klassische Softwareentwicklung 28
Kommunikation 123
Komplexer CATT 209 ◗◗ O
Komplexität 51
Konfigurationsmanagement 37, 122 Objekt-Management-System 48
Konfigurierung 53, 137 Organisation und Konzeption 75
Kopfdaten 148
Korrektur- und Transportwesen 127
Kritik 47 ◗◗ P
Kurzprotokoll 253
Parameter 198, 200, 211
Parameter des CATT 172
◗◗ L Exportparameter 173
Importparameter 172
Langprotokoll 253 Namensgebung 173
Laufzeitstatistik 252 SET/GET-Parameter 174
Laufzeitsummierung 252 Parameterpflegebild 179
LEAVE TO TRANSACTION 71 Parameterpflegebildschirm 201
Lebenszyklustätigkeiten 40 Parametrisierung 53, 131, 283
Listauswertung 271 der Testbausteine 295
Listverarbeitung 250, 252 Pflege
Lokale Variablen 175, 303 der Eingabewerte/Parameter/Variablen
des Testablaufs 215 198
Lower CASE 49 von Customizing-Tabellen 183
Phasenkonzept 29
Phasenübergreifende Aktivitäten 108
◗◗ M Plattformtest 153
Priorisierung 37
Machbarkeitsstudie 35 Prioritätenliste 113
Machbarkeitsstudie/Vorstudie 111 Problembehandlung 245
428
Sandini Bib
◗◗ Q ◗◗ S
Protokoll 252
Prüfkennzeichen 253
◗◗ R Repository-Informationssystem 250
Varianten 254
R/3 – R/2-Verbindung 244 Selektionsbildschirm 250
R/3 – R/3-Verbindung 243 SET/GET-Parameter 174, 246
R/3-Funktionsbibliothek 128 SET/GET-Paramter/Parameter-Ids 175
R/3-Software 40 SETTAB 162
R/3-Testkatalog 271 SETVAR 161, 204
429
Sandini Bib
Stichwortverzeichnis
Software-Bürokratie 50 Systemtest 42
Softwareentwicklung 27, 284 Testaufwand 278
Softwareentwicklungs- und Testkonzept Testausführende 269
28, 284 Testauswertung 270
Softwareentwicklungsprozess 29 Testbaustein 129, 139, 183, 283, 291
Softwareentwicklungsumgebung 47 abspielen 206
Softwareentwicklungswerkzeug 46 anzeigen 193
Softwarequalität 46, 136 aufrufen und ausführen - REF 160
Software-Wartung 51 Testdaten 94
Sondervariablen 176 Testdurchführung 269, 277
Sonstige Funktionen 240 Testen 27, 38, 40, 123, 142
Start aus CATT-Protokoll 143 Testqualität 40
Startbildschirm 143 von Transaktionen 82
mit aktivierten Varianten – Testablauf Ziel 40
225 Testfallaufzeichnung 113
Testablauf 219 Testfallbeschreibung 271
Startoptionen 220, 225 Testkatalog 270–271
Statusanalyse 270, 279 Erstellung 272
Statusanalyseliste 255 Integration manueller Tests 270
Statusbildschirm des R/3-Systems 186 Knoten hinzufügen 273
Steuerungsfunktionen 159 Test aus Katalog heraus starten 274
Syntaxprüfung 191, 211, 214, 219 Testkataloge 269
System R/3 54 Testkonzept 284
Systematisierung 68 erstellen 80
System-Design- und System-Build-Iteration Testkosten 136
37, 117 Testmanagement 271
Systementwicklung 29 Testmethodik 28
Systemtest 92 Testobjekte 41
Systemvariablen 176 Testpakete 269
Testplan 269
Erstellung 80, 275
◗◗ T Testplanung 283
Testprozedur 271
Tabelleneinträge 231, 233 Testsystem 288
Tabellenkalkulationsprogramm 227 Testszenario 128, 142, 269, 288
TCD 160, 194 Testumgebung 57
Test 39, 269 Testverantwortlicher 284
Testablauf 139–140, 183, 214–215, 221, Testverlauf 141
234, 283, 301 Testvorhaben 269
abspielen 221 Testwerkzeug 67
erstellen 214 Testworkbench 28, 40, 80, 269
Testablaufebene 217, 220 Testziel 287
Testadministrator 269 Textdatei 227
Testarten Texte eingeben – TXT 161
Abnahmetest 42 Timeboxing 37
Integrationstest 42 Priorisierung 121
Modultest 42 Traditionelles SAP-Vorgehensmodell 74
Regressionstest 42 Transaktion 70, 131, 140
Symbolischer Test 42 Anlegen Faktura VF01 294
430
Sandini Bib
431
Sandini Bib
Copyright
Daten, Texte, Design und Grafiken dieses eBooks, sowie die eventuell angebotenen
eBook-Zusatzdaten sind urheberrechtlich geschützt.
Dieses eBook stellen wir lediglich als Einzelplatz-Lizenz zur Verfügung!
Jede andere Verwendung dieses eBooks oder zugehöriger Materialien und
Informationen, einschliesslich der Reproduktion, der Weitergabe, des Weitervertriebs,
der Platzierung im Internet, in Intranets, in Extranets anderen Websites, der
Veränderung, des Weiterverkaufs und der Veröffentlichung bedarf der schriftlichen
Genehmigung des Verlags.
Bei Fragen zu diesem Thema wenden Sie sich bitte an:
mailto:[email protected]
Zusatzdaten
Möglicherweise liegt dem gedruckten Buch eine CD-ROM mit Zusatzdaten bei. Die
Zurverfügungstellung dieser Daten auf der Website ist eine freiwillige Leistung des
Verlags. Der Rechtsweg ist ausgeschlossen.
Hinweis
Dieses und andere eBooks können Sie rund um die Uhr
und legal auf unserer Website
(http://www.informit.de)
herunterladen