Blog über Software, Mensch und Persönlicher Entwicklung

Enterprise Software richtig testen - Richard Seidl

Geschrieben von Richard Seidl | 01.04.2025

Testen ist in großen Enterprise-Umgebungen von zentraler Bedeutung, insbesondere im Kontext von SAP und anderen konfigurierbaren Systemen. Ein tiefgehendes Verständnis der Komplexität solcher Systeme ist entscheidend, um effektiv testen zu können. Die Integration von Testkriterien in User Stories, die Anwendung von Prozessmodellierung und die Förderung von Testautomatisierung spielen eine entscheidende Rolle für den Erfolg von Enterprise Tests. Darüber hinaus ist die Einbeziehung verschiedener Stakeholder sowie der Einsatz erfahrungsbasierter Techniken von wesentlicher Bedeutung für den Erfolg des Testens in komplexen IT-Projekten.

Podcast Episode: Enterprise Software richtig testen

In dieser Episode spreche ich mit Ursula Beiersdorf über die Herausforderungen und Methoden des Testens in großen Enterprise-Umgebungen, insbesondere im Kontext von SAP und anderen konfigurierbaren Systemen. Ursula teilt ihre Erfahrungen und erklärt, wie wichtig es ist, die Komplexität solcher Systeme zu verstehen. Sie spricht über die Integration von Testkriterien in User Stories, die Nutzung von Prozessmodellierung und die Förderung von Testautomatisierung. Außerdem zeigt sie, warum die Einbindung verschiedener Stakeholder und erfahrungsbasierte Techniken entscheidend für den Erfolg im Testen sind.

"Was ich so gespürt habe, ist, dass viele Leute das Konfigurieren gar nicht ernst nehmen, obwohl es ganz böse Nebeneffekte haben kann." - Ursula Beiersdorf

Ursula Beiersdorf hat nach dem Studium der Wirtschaftsmathematik schon in ihrem ersten Projekt vor mehr als 30 Jahren festgestellt, wie wichtig gute Qualität bei der Softwareentwicklung ist. Seitdem ist sie als Beraterin für Testfragen mehrere Jahrzehnte vorwiegend im Großkundenbereich unterwegs gewesen. Parallel zu dieser Arbeit entdeckte sie die Hamburger Software Testing Community StugHH, deren Moderatorin sie bald wurde. In mehr als 12 Jahren hat sie gemeinsam mit den anderen Hamburger Qualitätsbesessenen eine Möglichkeit des Lernens und des Austausch geschaffen. Vor einigen Jahren nahm sie die Herausforderung an, ihr Testwissen in den SAP Bereich zu übertragen. Daraus entstand unter Anderem der Podcast "Testschnack", dem ersten deutschen Podcast über spannende Fragen im Test von hoch integrierten Systemen wie SAP.

Vor 3 Jahren wechselte sie die Seiten zu einem Hersteller von Gabelstaplern, um als interne Test Service Mangerin den Test vor allem der Enterprise Software fit zu machen für anstehenden Änderungen.

Highlights der Episode

  • Herausforderungen beim Testen in Enterprise-Umgebungen
  • Bedeutung der Komplexität konfigurierbarer Systeme
  • Unterschiede zwischen Enterprise Testing und agilem Testing
  • Unterstützung von Anwendern und Fachleuten im Testprozess
  • Integration von Testkriterien in User Stories

Enterprise Software richtig testen

Einführung

In großen Unternehmen wird oft sogenannte Enterprise Software eingesetzt. Diese hilft dabei, Geschäftsprozesse besser zu organisieren und Abläufe zu automatisieren. Damit solche komplexen Softwaresysteme, wie zum Beispiel SAP, auch wirklich zuverlässig funktionieren und die Erwartungen der Nutzer erfüllen, ist gründliches Testen wichtig.

Warum ist das Testen von Enterprise Software so wichtig?

Beim Testen von Enterprise Software geht es nicht nur darum, Fehler zu finden. Es geht darum, die Qualität und Zuverlässigkeit der Software sicherzustellen. Dabei gibt es besondere Herausforderungen, da die Systeme oft sehr komplex sind und viele Schnittstellen zu anderen Programmen haben. Enterprise Software muss außerdem an die spezifischen Anforderungen jedes Unternehmens angepasst werden. Änderungen und Konfigurationen können unerwartete Nebenwirkungen haben.

Deshalb braucht es eine durchdachte Teststrategie und gutes Fachwissen. Ein gutes Testmanagement hilft dabei klare Ziele zu setzen, eine gute Planung vorzunehmen und den Testprozess systematisch zu überwachen und zu steuern.

Die Grundlagen des Enterprise Testings

Enterprise Testing bedeutet, dass eingekaufte ERP-Systeme - zum Beispiel SAP - getestet werden, vor allem dann, wenn sie stark an die Bedürfnisse des Unternehmens angepasst wurden. Anpassungen sind wichtig, damit die Software genau das tut, was das jeweilige Unternehmen braucht. Gleichzeitig wird das Testen dadurch aber auch schwieriger. Bei SAP können Anpassungen bspw. sehr schnell die Komplexität und die Herausforderungen beim Testen erhöhen.

Softwaretester haben beim Testen von Enterprise Software eine zentrale Funktion. Sie sind selbst Nutzer der Software mit Wissen über die Prozesse im Unternehmen, was sie befähigt, das System aus der Perspektive der Endanwender zu bewerten. Gleichzeitig fehlt es häufig an spezialisierten Testwerkzeugen und -methoden, um die Softwarequalität des angepassten ERP-Systems zu garantieren.

Tester müssen sich mit verschiedenen Aspekten auseinandersetzen:

  • Sie müssen ein Verständnis für die Systemkonfigurationen entwickeln.
  • Sie müssen mögliche Fehlerquellen identifizieren
  • Sie müssen einen effektiven Testprozesses gewährleisten, trotz unzureichender Ressourcen.

Diese Aspekte sind wichtig für den Erfolg des Enterprise Testings und zeigen, wie notwendig eine strukturierte Herangehensweise in Kombination mit fundiertem Fachwissen ist.

Komplexität beim Enterprise Testing

Durch die Zusammenarbeit und die Schnittstellen zu anderen Systemen wird das Testen von Enterprise Software schnell komplex. ERP-Systeme sind in der Regel hochgradig konfiguriert und erfordern eine sorgfältige Abstimmung zwischen verschiedenen Abteilungen und Teams. Hier sind einige der wichtigsten Herausforderungen beim Enterprise Testing:

  • Kollaboration: Die interdisziplinäre Zusammenarbeit zwischen Entwicklern, Testern und Anwendern ist besonders wichtig und sollte gut funktionieren, um Missverständnisse zu vermeiden.
  • Schnittstellen: Die Integration von SAP in andere Systeme kann unerwartete Probleme hervorrufen. Deshalb müssen Schnittstellen klar definiert und getestet werden, um sicherzustellen, dass alle Systeme nahtlos zusammenarbeiten.

Durch Konfigurationen und Änderungen an bestimmten Teilen des Systems können unerwartete Nebenwirkungen entstehen, die unvorhergesehene Auswirkungen auf andere Teile haben. Oftmals bleiben diese Nebenwirkungen bei unzureichenden Tests unentdeckt, was zu potenziellen Risiken für die Unternehmensabläufe werden kann. Die Herausforderung liegt darin, eine umfassende Teststrategie zu entwickeln, die all diese Komplexitäten berücksichtigt. Strukturiertes Testing ist wichtig, um die Auswirkungen der Konfigurationen zu verstehen und sicherzustellen, dass alle Aspekte des Systems ordnungsgemäß funktionieren.

Ein Bereich, der besondere Aufmerksamkeit erfordert, ist das beispielsweise das Data Warehouse Testing. Auch hier gibt es aufgrund seiner Komplexität Herausforderungen, die es mit effektiven Testmethoden zu bewältigen gilt.

Anforderungen an Tester im Bereich Enterprise Testing

Die Anforderungen an Tester im Bereich des Enterprise Testings sind hoch. Tester benötigen nicht nur technisches Wissen, sondern auch Unternehmens- und Prozesswissen, um die spezifischen Abläufe und Bedürfnisse der Organisation zu verstehen und deren Anforderungen gerecht zu werden.

Herausforderungen für Tester im Enterprise Testing

Ein häufiges Problem ist der Mangel an geeigneten Testwerkzeugen. Viele Tester arbeiten mit begrenzten Ressourcen und müssen improvisieren. Die Verfügbarkeit von spezialisierten Tools kann die Effizienz steigern, gleichzeitig sollte dabei aber auch an ausreichend Schulungsprogramme gedacht werden, um diese Werkzeuge effektiv zu nutzen.

Hilfreiche Methoden zur Schulung von Testern sind zum Beispiel:

  • Praktische Workshops: Interaktive Sessions, in denen Tester gegenseitig Erfahrungen austauschen und von realen Szenarien lernen können.
  • Abstrakte Beispiele: Verwendung von hypothetischen Szenarien oder simulierten Projekten helfen dabei, komplexe Konzepte verständlich zu machen.

Schulungen können dazu beitragen, das Verständnis für Testmethoden zu vertiefen und sicherzustellen, dass Tester auf die Herausforderungen vorbereitet sind. Außerdem: Je mehr Unternehmenswissen in den Testprozess inkludiert wird, desto besser ist die Qualität der Tests,.

Testmethoden und -designs im Enterprise Testing

Im Enterprise Testing kommen verschiedene Testmethoden zum Einsatz:

  • Integrationstests: Diese überprüfen, ob verschiedene Systeme und Komponenten reibungslos zusammenarbeiten.
  • Benutzerstory-Tests: Diese fokussieren sich auf spezifische Anforderungen aus Sicht des Endbenutzers.
  • End-to-End-Tests: Diese simulieren den Geschäftsprozess von Anfang bis Ende.

Strukturierte Testmethoden, wie z.B. der Systemtest, sind wichtig, um eine Balance zwischen den Anforderungen des Unternehmens und der Qualität der Testergebnisse zu finden.

Herausfordernd beim Enterprise Testing ist die Vielzahl an geschäftlichen Anforderungen: Im schlimmsten Fall kann es zur Überlastung der Tester kommen, wenn eine große Anzahl an Tests in kurzer Zeit durchgeführt werden muss. Folgen sind dann verringerte Testqualität und das Übersehen von kritischen Fehlern.

Stress und Frustration sind weitere Auswirkungen, die sich negativ auf die Motivation und Effizienz der Tester auswirken können. Deshalb ist es wichtig den Testprozess gut zu strukturieren und die jeweiligen Teststufen mitzudenken.

Testarten im Enterprise Kontext

Im Enterprise Testing gibt es zwei Hauptarten von Tests: Benutzerstory-Tests und integrative Tests:

Benutzerstory-Tests konzentrieren sich auf kleine Anforderungen, die direkt aus den Bedürfnissen der Endbenutzer abgeleitet werden. Sie ermöglichen eine schnelle Überprüfung einzelner Funktionalitäten und helfen, das Benutzerfeedback frühzeitig zu integrieren.

Integrative Tests decken hingegen größere Zusammenhänge ab und prüfen, wie verschiedene Komponenten eines Systems zusammenarbeiten. Diese Tests sind komplexer, da sie oft mehrere Systeme oder Module umfassen und sicherstellen müssen, dass alle Teile harmonisch interagieren.

Beiden Testarten beleuchten unterschiedliche Aspekte der Softwarequalität. Während Benutzerstory-Tests agile Anpassungen unterstützen, sind die integrativen Tests auf die Stabilität und Funktionalität des gesamten Systems ausgerichtet.

Optimierung durch Pipelines

Mit optimierten Pipelines können Teams ihre Testprozesse automatisieren und effizienter gestalten, was schnellere Rückmeldungen für die Entwickler und eine agilere Reaktion auf Änderungen im Projektverlauf bedeuted. Pipeline-Optimierungen reduzieren nicht nur den manuellen Aufwand, sondern erhöhen auch die Testabdeckung und -qualität.

Change Management und Überzeugungsarbeit im Enterprise Testing

Change Management spielt eine wichtige Rolle bei der Einführung und Anpassung von Enterprise Software. Organisatorische Veränderungen müssen gut durchdacht werden, damit alle Beteiligten die Notwendigkeit und Vorteile der Maßnahmen verstehen - auch in Hinblick auf die Testprozesse.

Wichtige Strategien zur Überzeugung von Stakeholdern umfassen:

  • Transparente Kommunikation: Der Testprozess und seine Bedeutung für das Unternehmen sollten transparent und klar kommuniziert werden. Stakeholder sollten verstehen, welche Risiken mit unzureichenden Tests verbunden sind.
  • Schulungen und Workshops: Durch Schulungen kann vermittelt werden, warum das Testen wichtig ist. Praktische Beispiele helfen, den Nutzen konkret zu verdeutlichen.
  • Beteiligung an Entscheidungsprozessen: Stakeholder aktiv in den Testprozess einzubeziehen fördert das Verständnis und die Akzeptanz, schafft Vertrauen und verringert Widerstände gegen Veränderungen.
  • Erfolgsgeschichten teilen: Positive Ergebnisse aus früheren Projekten können als Argumentationshilfe dienen.

Die Implementierung dieser Strategien hilft dabei, eine positive Einstellung gegenüber dem Testing von Enterprise Software zu fördern und die Effektivität der Prozesse zu steigern.

Werkzeuge für das Enterprise Testing

Für das Testen von Enterprise Software braucht es die richtigen Werkzeuge. Zu den bevorzugten Tools gehört Excel, das aufgrund seiner Benutzerfreundlichkeit und einfachen Handhabung eingesetzt wird. Der Vorteil: Viele Tester sind bereits mit Excel vertraut. Ein großer Vorteil: Viele Tester sind bereits mit Excel vertraut. Zudem ermöglicht die Flexibilität von Excel, spezifische Anpassungen und Abfragen schnell umzusetzen.

Allerdings gibt es auch Nachteile – insbesondere die begrenzten Möglichkeiten zur Automatisierung und die Fehleranfälligkeit bei manuellen Eingaben. Ein weiteres Problem ist die Skalierbarkeit: Bei großen Projekten kann Excel schnell unübersichtlich werden.

Eine sinnvolle Ergänzung ist in diesem Kontext X-Ray, ein Tool, das speziell zur Verbesserung der Defektverwaltung entwickelt wurde. X-Ray integriert sich nahtlos in JIRA und bietet folgende Vorteile:

  • Effektive Defektverfolgung: Benutzer können Defekte detailliert nachverfolgen und verwalten.
  • Testabdeckung: X-Ray ermöglicht die Visualisierung der Testabdeckung pro User Story, was die Qualitätssicherung unterstützt.

So kann der Testprozess optimiert werden und die Tester effizienter arbeiten.

Defektmanagement im Enterprise Testing

Für die Nachverfolgbarkeit und das effektive Management von Fehlern spielt beim Enterprise Testing die Defektkategorisierung eine zentrale Rolle. Defekte werden typischerweise in vier Kategorien unterteilt:

  • Sicherheits- oder Berechtigungsfehler: Probleme, die sich auf Berechtigungen und Zugriffsrechte beziehen.
  • Funktionsfehler: Fehler, die während der Überprüfung spezifischer Funktionen auftreten.
  • Integrationsfehler: Schwierigkeiten, die bei der Integration verschiedener Systeme oder Komponenten zutage treten.
  • **Datenfehler: Fehlerhafte, unvollständige oder falsch übernommene Daten.

Diese Kategorisierung ermöglicht es Testern, gezielt an den identifizierten Schwächen zu arbeiten und priorisierte Lösungen zu entwickeln.

Retro-Evaluierung

Die Retro-Evaluierung ist ein weiterer wichtiger Aspekt im Defektmanagement. Sie bietet Teams die Möglichkeit, aus vergangenen Projekten zu lernen. Durch die Analyse von aufgetretenen Defekten können wertvolle Erkenntnisse gewonnen werden, um zukünftige Testprozesse zu optimieren, zum Beispiel durch:

  • Identifikation wiederkehrender Fehlerquellen
  • Bewertung der Effektivität bereits implementierter Lösungen
  • Anpassung der Teststrategien basierend auf den gewonnenen Erkenntnissen

Die Rolle der KI im Testprozess

Künstliche Intelligenz (KI) kann dabei helfen, die Effizienz und der Qualität der Enterprise Tests zu verbessern. Durch den Einsatz von KI können Unternehmen:

  • Defekte besser bewerten: KI-gestützte Algorithmen können Testergebnisse analysieren, Muster erkennen und die Schwere von Defekten bewerten. Dies ermöglicht eine gezielte Priorisierung von Fehlerbehebungen.
  • Fehlerquellen besser identifizieren: KI kann dabei helfen, die Ursachen von Fehlern schneller zu finden, indem historische Testdaten analysiert und potenzielle Problembereiche identifiziert werden. Das spart Zeit bei der Fehlersuche.

KI dabei helfen, die Testeffizienz deutlich zu steigern und das Vertrauen in die getesteten Systeme zu erhöhen.

Sonderrolle: SAP-spezifisches Testing

Das Testen von Enterprise Software wie SAP unterscheidet sich signifikant von individuell entwickelter Software. Vor allem der Fokus auf modulare Systeme bei SAP bringt spezifische Herausforderungen mit sich.

1. Modularer Aufbau

SAP-Systeme bestehen aus verschiedenen Modulen, die nahtlos zusammenarbeiten müssen. Jedes Modul hat seine eigenen Funktionen und Konfigurationen, was die Testabdeckung komplex macht.

2. Testverfahren

Während individuelle Ansätze oft maßgeschneiderte Lösungen erfordern, nutzen SAP-Tests vordefinierte Standards und Best Practices, um die Modularität zu berücksichtigen.

3. Konfigurationsmanagement

Änderungen an einem Modul können unerwartete Auswirkungen auf andere Module haben. Diese Wechselwirkungen müssen während des Testens berücksichtigt werden.

Tests bei Konfigurationsänderungen

Gerade bei Konfigurationsänderungen in SAP-Systemen braucht es strukturierte Tests, um sicherzustellen, dass alle Anpassungen umfassend überprüft werden und keine unerwarteten Nebenwirkungen entstehen. Dabei ist ein gutes Verständnis der Geschäftsprozesse unerlässlich, um die Auswirkungen von Änderungen auf die Abläufe im Unternehmen richtig einschätzen zu können.

Wichtige Aufgaben, die Tester in diesem Zusammenhang übernehmen sollten, sind:

  • Risikoerkennung: Potenzielle Probleme frühzeitig identifizieren, die durch Konfigurationsänderungen entstehen könnten.
  • Testabdeckung: Sicherstellen, dass alle relevanten Anwendungsfälle und Szenarien vollständig getestet werden.
  • Dokumentation: Änderungen und deren Auswirkungen systematisch festhalten, um daraus Erkenntnisse für künftige Tests zu gewinnen.

Durch strukturierte Tests wird sichergestellt, dass Anpassungen nicht nur technisch funktionieren, sondern auch den Geschäftsanforderungen gerecht werden. Das hilft bei, die Qualität der Enterprise Tests zu erhöhen und Vertrauen in die Systemintegrität zu schaffen.

Fazit

Das Testen von Enterprise Software erfordert eine strukturierte Vorgehensweise, fundiertes Prozesswissen und die richtigen Werkzeuge. Aufgrund der hohen Komplexität von Systemen wie SAP müssen Tester nicht nur technische Fehler erkennen, sondern auch die Auswirkungen von Änderungen auf Geschäftsprozesse verstehen. Eine durchdachte Teststrategie, klare Defektkategorisierung und der gezielte Einsatz von Tools und KI-Technologien tragen entscheidend dazu bei, die Qualität und Zuverlässigkeit von Enterprise Software nachhaltig zu sichern.

Häufige Fragen

Was ist Enterprise Testing und warum ist es wichtig?

Enterprise Testing bezieht sich auf den Test von großen, komplexen Softwarelösungen, die in Unternehmen eingesetzt werden, wie z.B. SAP-Systeme. Die Bedeutung des Testens liegt darin, sicherzustellen, dass diese Systeme effizient funktionieren und die Geschäftsprozesse unterstützen, um Fehler und Ausfallzeiten zu minimieren.

Welche Herausforderungen gibt es beim Testen von Enterprise Software?

Beim Enterprise Testing ist die Komplexität der Systeme, die Zusammenarbeit zwischen verschiedenen Schnittstellen sowie unerwartete Nebenwirkungen von Konfigurationen herausfordernd. Oftmals sind die Tests unzureichend, was zu Problemen bei Anpassungen führen kann.

Welche Rolle spielen Tester im Kontext des Enterprise Testings?

Beim Enterprise Testing benötigen Tester umfassendes Unternehmenswissen und sollten mit geeigneten Testwerkzeugen vertraut sein. Ihre Rolle umfasst das Design und die Durchführung von Tests sowie die Schulung neuer Tester durch praxisnahe Methoden.

Welche Testmethoden werden im Enterprise Kontext verwendet?

Im Enterprise Testing kommen verschiedene Testmethoden zum Einsatz, darunter Benutzerstory-Tests und integrative Tests. Diese Methoden helfen dabei, die Qualität der Software zu gewährleisten.

Welche Rolle spielt Change Management beim Testen von Enterprise Software?

Wenn organisatorische Veränderungen auftreten, braucht es gutes Change Management, um Stakeholder zu überzeugen. Beim Testen von Enterprise Software ist es wichtig klar und transparent zu kommunizieren und Wissen über die Bedeutung und Relevanz der Tests zu vermitteln.

Welche Werkzeuge sind für das Enterprise Testing am besten geeignet?

Zu den bevorzugten Werkzeugen im Enterprise Testing gehören Excel für einfache Datenanalysen sowie X-Ray und JIRA zur effektiven Verwaltung von Defekten. Diese Tools bieten haben, je nach den spezifischen Anforderungen des Projekts, verschiedene Vorteile und Herausforderungen.