Auswirkungsanalyse im Softwaretest
⚡ Intelligente Zusammenfassung
Die Folgenabschätzung im Softwaretest bewertet, wie sich eine vorgeschlagene Änderung auf Anforderungen, Design, Code, Tests und den Lieferplan auswirkt.ping Die Teams schätzen den Aufwand ein, priorisieren die Regressionsabdeckung und verhindern unbeabsichtigte Fehler vor der Veröffentlichung.
Was ist Wirkungsanalyse?
Die Wirkungsanalyse ist der Prozess der Untersuchung der Auswirkungen von Änderungen an einem bereits eingesetzten Produkt oder einer Anwendung. Sie identifiziert die Bereiche des Systems, die betroffen sein können, wenn ein bestimmter Abschnitt oder eine bestimmte Funktion der Anwendung geändert wird.
Die Auswirkungen werden anhand von Anforderungen, Design und ArchiArchitektur, Test und Lieferplan.
Wird einer Anwendung oder einem Produkt eine neue Funktion hinzugefügt, ist es unerlässlich zu prüfen, wie sich diese Änderungen auf die Leistung und Stabilität des Systems auswirken. Aus diesem Grund wird eine Wirkungsanalyse durchgeführt.
Warum wird eine Veränderungsfolgenanalyse durchgeführt?
- Um die möglichen Folgen der Änderung zu verstehen: Zu viele zusätzliche Funktionen können die Gesamtleistung eines Produkts beeinträchtigen.
- Um alle Dateien, Dokumente und Modelle zu identifizieren, die möglicherweise angepasst werden müssen, falls das Team beschließt, die Änderung umzusetzen.
- Um den Aufwand abzuschätzen, der zur Umsetzung der Änderung erforderlich ist.
- Um die zur Umsetzung der Veränderung erforderlichen Aufgaben zu ermitteln.
- Um die Abhängigkeiten des jeweiligen Elements aufzulisten, das geändert wird.
Was ist ein Wirkungsanalysedokument?
Ein Dokument zur Folgenabschätzung kann als Checkliste verwendet werden, um einen Änderungsantrag zu bewerten, bevor das Team mit der Bearbeitung beginnt. Das Dokument sollte Details wie die folgenden erfassen:
- Eine kurze Beschreibung des Problems.
- Eine Erklärung oder ein Beispiel dafür, wie der Defekt zu Fehlern oder Ineffizienz führt.
- Eine Schätzung der Komplexität.
- Eine Kosten- und Zeitschätzung für die Reparatur.
- Die zu testende Funktionalität.
- Die für die Änderung erstellten neuen Testfälle.
- Referenzdokumente wie die technische Spezifikation oder zugehörige Konstruktionshinweise.
Ejemplo:
Dokument zur Wirkungsanalyse.
- Änderungsanforderungs-ID:
- Titel:
- Beschreibung:
- Datum der Vorbereitung:
- Priorisierungsschätzung:
- Relativer Nutzen
- Relative Strafe
- Relative Kosten
- Relatives Risiko
- Geschätzter Gesamtaufwand: ______ Stunden
- Geschätzter Arbeitsaufwand: ______ Stunden
- Geschätzte Auswirkungen auf den Zeitplan: ______ Tage
- Qualität beeinträchtigt:
- Weitere betroffene Anforderungen:
- Weitere betroffene Aufgaben:
- Integrationsprobleme:
Wie man die Wirkungsanalyse präsentiert: Einflussniveau
Die Folgenabschätzung kann mithilfe eines Farbcodes dargestellt werden, der die Kritikalität der Änderungen für das System anzeigt. Ein gängiger Farbcode ist unten dargestellt:
- Rot – Starke Auswirkung
- Gelb – Mäßige Auswirkungen
- Grün – Schwache Auswirkungen
Die obige Tabelle erläutert die Auswirkungen der umgesetzten Änderungen:
- Die rot markierten Merkmale sind die Hauptmerkmale, die sich ändern. Die gelb markierten Merkmale sind weniger stark von der Änderung betroffen. Die grün markierten Merkmale werden am wenigsten beeinflusst.
- Die vertikal aufgelisteten Merkmale sind diejenigen, die geändert werden. Die horizontal aufgelisteten Merkmale sind diejenigen, die von der Änderung beeinflusst werden können. Im obigen Beispiel beeinflusst eine Änderung von Merkmal 1 Merkmal 3.
- Bei größeren Projekten mit zahlreichen Funktionen und Features ist die obige Tabelle möglicherweise nicht praktikabel. In diesem Fall wird ein anderer Ansatz gewählt, bei dem der Entwickler den Einfluss der Änderungen an den Hauptfunktionen direkt markiert, wie unten dargestellt. Dort wird die Auswirkung der Hauptfunktion für jede Unterfunktion angegeben.
Beispielhafte Fragen, die bei der Durchführung einer Wirkungsanalyse zu berücksichtigen sind:
- Was sind die nachteiligen Nebenwirkungen oder Risiken der vorgeschlagenen Änderung?
- Muss für die Implementierung und das Testen der Änderung ein neues Tool angeschafft werden?
- Wenn die Änderung akzeptiert wird, wie viel der bereits investierten Anstrengungen geht dann verloren?
- Beeinträchtigen die vorgeschlagenen Änderungen die Leistungsanforderungen?
- Ist eine zusätzliche Benutzereingabe erforderlich, um die vorgeschlagene Änderung zu überprüfen?
- Erhöht die Änderung die Produktkosten?
- Verfügt das derzeitige Personal über das Wissen und die Fähigkeiten, um die vorgeschlagene Veränderung umzusetzen?
- Stellt die vorgeschlagene Änderung eine inakzeptable Belastung der Computerressourcen dar?
Best Practices für die Veränderungsfolgenanalyse
- Bevor Sie mit der Wirkungsanalyse beginnen, stellen Sie sicher, dass die Testanforderung jeden Teil des Projekts identifiziert, der von den Änderungen betroffen ist.
- Eine kontinuierliche Kommunikation zwischen Entwickler und Tester ist unerlässlich, damit keine notwendige Änderung am Endprodukt übersehen wird.
- Prüfen Sie, ob Änderungen, Löschungen oder Ergänzungen der Benutzeroberfläche erforderlich sind.
- Schätzen Sie die Anzahl der erforderlichen Akzeptanz-, System- und Integrationstestfälle.
- Ermitteln Sie, welche Auswirkungen die vorgeschlagene Änderung auf den Projektplan, den Konfigurationsmanagementplan oder den Qualitätssicherungsplan hat.
Arten der Wirkungsanalyse im Softwaretest
Die Veränderungsfolgenabschätzung ist keine einheitliche Methode. Praktiker verwenden typischerweise eine von drei sich ergänzenden Arten, um unterschiedliche Fragen zu einer geplanten Veränderung zu beantworten.
- TracAnalyse der Auswirkungen auf die Funktionsfähigkeit: Berücksichtigt die Anforderungen TracDie Machbarkeitsmatrix und die Designverknüpfungen ordnen jede Anforderung den Modulen, Tests und Dokumenten zu, die sie implementieren. Ändert sich eine Anforderung, zeigt die Matrix alle nachgelagerten Artefakte an, die aktualisiert oder erneut getestet werden müssen.
- Abhängigkeitsfolgenanalyse: Untersucht die Anrufdiagramme, Datenflüsse und Schnittstellenkonturentracts innerhalb der Codebasis. Eine Änderung an einem Modul ist tracdurch direkte Anrufer, indirekte Anrufer und gemeinsame Datenstrukturen, sodass versteckte Folgeeffekte sichtbar werden, bevor die Änderung in Kraft tritt.
- Experimentelle (historische) Wirkungsanalyse: Es analysiert historische Änderungsdaten – vergangene Fehler, fehlgeschlagene Sprints und Regressionsausbrüche –, um das Verhalten der aktuellen Änderung vorherzusagen. Moderne Tools kombinieren die Auswertung der Versionskontrollhistorie mit statistischen Modellen oder Modellen des maschinellen Lernens, um das Risiko jeder Änderung zu bewerten.
Die meisten Teams kombinieren mindestens zwei dieser Typen. TracDie Absicherungsanalyse zeigt Ihnen, welche Dokumente betroffen sind, die Abhängigkeitsanalyse zeigt Ihnen, welcher Code betroffen ist, und die historische Analyse zeigt Ihnen, wie riskant die Änderung voraussichtlich sein wird.
Gängige Tools zur Analyse der Auswirkungen von Veränderungen
Moderne Änderungsfolgenabschätzungen werden selten in Tabellenkalkulationen durchgeführt. Teams kombinieren ein Anforderungsmanagement-Tool mit einem Codeanalyse-Tool und einem Testmanagement-Tool, die eine gemeinsame Basis nutzen. tracWirbelsäule mit hoher Belastbarkeit.
- Jama Connect, IBM TÜREN, Modern Requirementsund Visure-Anforderungen: Anforderungen erfassen, Baselines pflegen und Wirkungsberichte über verknüpfte Anforderungen, Tests und Risiken erstellen, wenn eine Änderung vorgeschlagen wird.
- Atlassian Jira mit Xray oder Zephyr: Track User Stories, Fehler und Testfälle. Wirkungsberichte zeigen jede Story und jeden Test an, der von einer vorgeschlagenen Änderung innerhalb eines Sprints oder Release-Trains betroffen ist.
- SonarQube, Verstehen mit SciTools und Structure101: Analysiere die Abhängigkeiten im Quellcode und erstelle Aufrufdiagramme und Kopplungsberichte, damit der Entwickler den von einer Änderung betroffenen nachgelagerten Code erkennen kann.
- Startfähig, Testim Selbstheilung und TestGrid: Durch den Einsatz von maschinellem Lernen lässt sich vorhersagen, welche Tests am ehesten durch eine Änderung hervorgerufene Fehler aufdecken. Dies ermöglicht eine intelligente Testauswahl und schnellere Regressionszyklen.
- Microsoft Excel- bzw Google Blätter: Wird nach wie vor häufig für das erste Dokument zur Wirkungsanalyse, die farbcodierte Einflusstabelle und das Änderungsanforderungsprotokoll bei kleineren Projekten verwendet.
Die richtige Kombination hängt von der Größe der Codebasis, dem regulatorischen Umfeld und der Bereitstellungsmethode ab. Regulierte Branchen setzen aufgrund der Prüfbarkeit auf Jama oder DOORS. tracE-Fähigkeit, während agile Produktteams auf Jira setzen. SonarQubeund ein Test-Impact-Tool.



