Die Bedeutung von Tests bei der Installation, Anpassung, Migration und Modernisierung von Unternehmenssoftware ist essenziell. [...]
Schließlich sind es die IT-Systeme, über die die wichtigsten Geschäftsprozesse abgewickelt werden, von der Finanzverwaltung über den Vertrieb bis hin zur Qualitätssicherung. Künstliche Intelligenz (KI) kann die Belastungen bei komplexen Datenmigrationsprojekten verringern, und den Grad der Testabdeckung erhöhen.
Die größte Herausforderung für Softwaretests ist sicherlich der Zeitfaktor. Mit zunehmender Systemkomplexität steigt die Zahl der erforderlichen Testfälle exponentiell an. Aktuelle Modelle gehen davon aus, dass ein kleines System, mit beispielsweise 50 Datenbanktabellen, einigen Eingabe- und Ausgabeformularen und wenigen Berichten, über 4.000 Testfälle erfordert.
Wenn jeder Fall nur 10 Minuten benötigt, sind fast 6 Monate Testaufwand erforderlich. Bei der Größe moderner Unternehmenssysteme könnte eine vollständige Testabdeckung Jahrhunderte dauern!
In modernen Softwareprojekten mit strengen Zeitplänen und chronischer Eskalation stehen nur wenige Tage oder Wochen zur Verfügung. Dass bei Terminverzug Tests als erstes gekürzt werden, verschärft das Problem. Auch die Erstellung von Testfällen, die Fehlerverwaltung und abschließende Dokumentation sind enorm aufwendig.
Innovative Antworten auf moderne Probleme
Künstliche Intelligenz verspricht, die Erstellung, Vorbereitung, Ausführung, Analyse, Fehlerverwaltung und Berichterstattung von Testfällen zu beschleunigen und die Testabdeckung zu erhöhen. Es gibt Testautomatisierungssoftware speziell für SAP ERP-Tests, die bei komplexen Datenmigrationen, wie die Einführung von SAP S/4HANA oder Cloudifizierung, erforderlich sind.
Aktuell sehen wir eine explosionsartige Entwicklung von KI-Methoden und -Modellen, die den gesamten Testprozess noch umfassender abdecken können, was Projekte erheblich beschleunigt und gleichzeitig Risiken verringert.
DIE GESCHÄFTSLOGIK EINER ANWENDUNG SPIEGELT SICH IN DEN DATEN WIDER, DIE SIE SPEICHERT UND VERWALTET.
Dr. Steele G. Arbeeny, Chief Technology Officer, SNP Schneider-Neureither & Partner
Der feine Unterschied
Nur ein vollständiger Satz von Testfällen garantiert eine gute Testabdeckung. Man kann Tausende von Testfällen haben und trotzdem keine gute Abdeckung, weil die Anwendung nicht in den richtigen Bereichen getestet wird. Erstellt man SAP ERP bezogene Migrationsinhalte, können mit dem gewonnenen Wissen Testfälle für die gesamte SAP-Datenbank generiert werden.
Durch die Erweiterung der Testfallgenerierung von rein statischen Techniken und das Einbeziehen von Analyse und Clustering historischer Daten, können zusätzliche Testfälle gewonnen werden. Anhand der bekannten Technik „K-Means-Clustering“ kann nicht nur bestimmt werden, welche Geschäftsfunktionen ausgeführt werden müssen, sondern auch, welche relevanten Gruppierungen von Eingabedaten erforderlich sind, um die in der Praxis vorkommenden Datenvalidierungsszenarien richtig abzudecken.
Die Geschäftslogik einer Anwendung spiegelt sich in den Daten wider, die sie speichert und verwaltet. Kombinationen, die von der Geschäftslogik nicht zugelassen werden, sollten in den Daten nicht vorkommen.
Bei der Migration dieser Daten in eine ähnliche oder andere Unternehmenssoftware oder ein Cloud-basiertes Berichtsrepository, müssen diese Beziehungen beibehalten und überprüft werden. Sie zu entdecken ist keine leichte Aufgabe.
Hier ist Innovation gefragt und Algorithmen des maschinellen Lernens. Sie erkennen die Beziehungen, erstellen die Testfälle und garantieren, dass sie durchgesetzt werden. Daten werden mit voller Integrität migriert und alle vor der Migration durchgeführten Geschäftstransaktionen funktionieren weiter wie zuvor.
Ein Testfall für Spezialisten
Meist fehlt Zeit. Spezialisten setzen daher auch auf risikobasierte Tests. Dabei wird ermittelt, welche Bereiche der Anwendung sich am stärksten verändert haben und mehr Zeit benötigen. Die stark voneinander abhängigen ERP-Daten sind eine zusätzliche Erschwernis.
Zum Beispiel Bestandsdaten: Es gibt viele Prozesse, die sich auf den Bestand auswirken können – einige offensichtlich, andere nicht. Der Einfluss von Kundenaufträgen ist offensichtlich, der der Anlagenverwaltung weniger. Anbieter, die KI einbinden, arbeiten an Algorithmen für die Hauptkomponentenanalyse (PCA) und die blinde Quellentrennung (BSS, Blind Source Separation), um festzustellen, welche entfernten Funktionen sich auf einen bestimmten Datensatz auswirken.
Die Verwendung von PCA und die Ermittlung der unbekannten Anwendungsprozesse verbessert die Testabdeckung erheblich. Insbesondere, weil einige dieser entfernten Beziehungen mehrere andere Prozesse durchlaufen können, bevor die Auswirkungen spürbar werden.
Für die zeitaufwendige Sichtung, Klassifizierung und Zuordnung von Fehlern gibt es maschinelle Lernmodelle, die von der menschlichen Fehlerklassifizierung lernen. Während Menschen Defekte bearbeiten, erkennen Algorithmen Ähnlichkeiten und gruppieren gleichwertige Defekte, die eine gemeinsame Lösung haben. Auf diese Weise wird eine der zeitaufwändigsten und repetitivsten Aufgaben reduziert.
Alles auf KI?
Unternehmen haben viel in die Entwicklung von Testplänen und Testfalldokumenten investiert. Muss mit KI nun alles über Bord geworfen werden? Ich glaube nicht. Mithilfe von Natural Language Processing (NLP) und Named Entity Recognition (NER) können diese Dokumente verarbeitet und Testfälle in eine Testautomatisierungsplattform eingebunden werden.
Häufig verfügen die getesteten Systeme nicht über genügend Daten mit ausreichender Vielfalt, um eine angemessene Testabdeckung zu gewährleisten. Hier helfen generative adversarische Netzwerke (GAN) – die Technologie, die für Deep Fakes verwendet wird – um Testdaten zu synthetisieren.
Ziel ist eine Ausgabe, die so genau ist, dass sie ein Unterscheidungsnetzwerk täuschen kann und sie für echt hält. SNP verwendet diesen Ansatz für die Generierung von Testdaten. Das hat den zusätzlichen Vorteil, dass Daten generiert werden, die die Geschäftsregeln einhalten und den Nutzungsmustern in den echten Daten des Kunden entsprechen.
Die realitätsnahen Testdaten können auch zum Trainieren neuer KI-Modelle und Testen bestehender Modelle verwendet werden. Und schließlich wird kein geschäftskritischer Testprozess von der Geschäftsleitung oder von Prüfern akzeptiert, wenn er nicht detailliert dokumentiert ist.
Mithilfe speziell trainierter großer Sprachmodelle (LLMs) werden abschließende Testberichte erstellt. Zusammenfassende Berichte sind sofort nach Abschluss der Tests verfügbar – und ihre Genauigkeit ist garantiert, da sie auf den Testergebnissen basieren und nicht erfordern, dass ein Mensch alle Ergebnisse erfasst, was fehleranfällig ist.
Es gibt noch Vieles, was KI beschleunigen kann, etwa Leistungs- und Sicherheitstests und die automatische Aktualisierung bei Datenänderungen. Da Testen derzeit so arbeitsintensiv und oft vernachlässigt ist, werden sicher noch viele andere Bereiche mit Verbesserungspotenzial entdeckt, die zu Innovationen führen.
*Dr. Steele G. Arbeeny ist Chief Technology Officer bei SNP Schneider- Neureither & Partner.
Be the first to comment