Rückverfolgbarkeit

R 2.0.0

Was ist Rückverfolgbarkeit?

Was ist Rückverfolgbarkeit?

Die Fähigkeit, explizite Beziehungen zwischen Arbeitsergebnissen oder zwischen Elementen von Arbeitsergebnissen darzustellen.

Anwendungsbeispiel

Anwendungsbeispiel
ALT MISSING

Unschlüssig stand Eddy vor der schier endlosen Auslage der Frischfleischtheke. Dabei hatte er doch so wenig Zeit! Die Freunde waren schon auf dem Weg mit dem Bier und er hatte es übernommen, das Grillgut einzukaufen. Das war früher einfacher gewesen, fand er. Da gab es noch vor den Metzgereien Pappaufsteller mit einem feixenden Schwein, das seinen eigenen Schinken feilbot, das Angebot war deutlich geringer und überschaubarer gewesen. „Dienstag ist Schwienstag“ hieß es dann. Heute dagegen lag das Fleisch in blitzenden Edelstahlwannen und war mit kleinen Etiketten versehen, deren Schrift er kaum entziffern konnte, und das Angebot war an jedem Tag gleich reichhaltig.

ALT MISSING

„Was darf’s denn sein“, riss ihn ein rotwangiger Fleischverkäufer aus seinen Gedanken, „etwas für den Grill vielleicht?“. „Was ist das nur alles“, stammelte Eddy ratlos, „und was steht auf den kleinen Zetteln?“. Der vierschrötige Mann blies die Backen auf: „Die Etiketten dienen dem Herkunftsnachweis. Gucken Sie mal, hier sind genau Herkunftsland und Schlachterei vermerkt. Jeder Produktionsschritt kann über eine eindeutige Identifikationsnummer über sämtliche Stufen zurückverfolgt werden, zurück zur Geburt jedes einzelnen Tieres, wie dem Kalb, dessen Steak dort jetzt vor Ihnen liegt.“ Eddy verstand sofort: „Falls es irgendwo in dieser Kette ein Qualitätsproblem gibt, kann man so rekonstruieren, wo genau der Fehler auftrat und ihn dann gezielt beheben.“

ALT MISSING

Die Zeit drängte. „Gut, dann nehme ich acht von den marinierten Schweinenackensteaks dort“ entschied er sich. „Moment“, warf sein Gegenüber ein, „das gilt nicht für weiterverarbeitete Ware, wie diese marinierten Steaks, die sind von der Etikettierpflicht zur Rückverfolgbarkeit ausgenommen“. „Was meinen Sie damit“, fragte Eddy misstrauisch, „heißt das etwa, Sie können nichts über die Herkunft und die einzelnen Verarbeitungsschritte sagen?“. Die Miene des Schlachters verfinsterte sich und sein Blick senkte sich über die blutverschmierte Schürze. „Also wieviel denn jetzt?“, brummte er ungeduldig. Beim Nachdenken über die ungewisse Herkunft der marinierten Steaks schienen diese plötzlich nicht mehr so attraktiv zu sein. „Ich nehme vier von den gekennzeichneten Rindersteaks und ein halbes Dutzend Bratwürste.“ „Eine gute Wahl“, meint der Verkäufer, „die Würste stammen aus regionaler Herstellung und sind mit kontrolliertem Fleisch nachvollziehbar produziert worden.“

ALT MISSING

Auf dem Heimweg dachte Eddy über das Thema Rückverfolgbarkeit nach. Ehrlicherweise musste er sich eingestehen, dass sie das in seinem Wartungsteam zwar mehrfach besprochen, aber nicht in letzter Konsequenz umgesetzt hatten. Auch die Fleischindustrie hatte die Nachverfolgbarkeit erst nach einer Gesetzesänderung eingeführt. Dabei lagen die Vorteile doch auf der Hand: Die Identifikationsnummer einer Anforderung begleitete sämtliche Artefakte, die während der Softwareproduktion entstanden, und zwar während des gesamten Lebenszyklus. Auf diese Art wären bei einer Änderung sämtliche betroffenen Artefakte über die eindeutige Nummer mit einer einfachen Suche zu finden. Würde zur Laufzeit während der Produktion ein Fehler gefunden, könnten über geeignete Instrumentierung (Logausgaben) viel einfacher alle betroffenen Artefakte, vor allem aber auch die Testfälle und Testfallspezifikationen ausgemacht werden.

ALT MISSING

Aber mithilfe eindeutiger Identifikationsnummern, die über den gesamten Lebenszyklus mitgeführt würden, wäre auch das Reporting deutlich einfacher: So könnten Testabdeckungsgrade leichter erhoben und Lücken deutlich erkennbar werden. Die Bildung von Regressionstestsuiten wäre deutlich leichter. Eddy beschloss das am nächsten Montag direkt anzugehen.

Beschreibung

Einfach ausgedrückt, ist Rückverfolgbarkeit die Fähigkeit, etwas zu verfolgen. In allen Branchen, einschließlich Gesundheitswesen, Fertigung, Lieferkette und Softwareentwicklung, stellt die Rückverfolgbarkeit sicher, dass die endgültigen Ergebnisse nicht zu weit von den ursprünglichen Anforderungen abweichen.

Der Begriff selbst ist eine Mischung aus zwei Worten – Verfolgung und Fähigkeit – und er untermauert drei kritische Geschäftsprozesse: Qualitätsmanagement (das es Unternehmen ermöglicht, Qualitätsziele zu erreichen/die Erwartungen der Kunden zu erfüllen), Änderungsmanagement (das Änderungen an Produkten während der Entwicklung verfolgt) und Risikomanagement (das Schwachstellen der Produktintegrität verfolgt und überprüft).

Die Rückverfolgbarkeit ist aufgrund verschiedener staatlicher Vorschriften und des zunehmenden Drucks auf Unternehmen in allen Branchen, die Produktqualität zu verbessern und strenge Sicherheitsvorschriften einzuhalten, heute wichtiger denn je.

Die Rückverfolgbarkeit bietet mehrere wichtige Vorteile, die es wert sind, den zusätzlichen Aufwand zu tragen. Die Bereitstellung einer vollständigen, vertrauenswürdigen Aufzeichnung aller vergangenen Aktivitäten hilft, Probleme bei Ereignissen wie Rückrufaktionen zu untersuchen und zu beheben, sodass die Beteiligten die Ursache des Problems finden können. Die durch die Rückverfolgbarkeit generierten Daten können genutzt werden, um kritische Geschäftsprozesse zu verbessern und Performance-Probleme, unter anderem in Bezug auf Durchlaufzeiten, Transportkosten und Bestandsmanagement zu lösen.

Wenn die meisten Menschen an „Rückverfolgbarkeit“ denken, dann haben sie die Anforderungen im Fokus, d.h. die Fähigkeit, das Leben einer Anforderung sowohl in Vorwärts- als auch in Rückwärtsrichtung im Entwicklungslebenszyklus, von ihren Ursprüngen bis zur Bereitstellung und darüber hinaus zu beschreiben und zu verfolgen.

Der Zweck der Rückverfolgbarkeit von Anforderungen besteht darin, Transparenz über die Anforderungen zu schaffen und eine einfache Überprüfung der Erfüllung der Anforderungen zu ermöglichen. Die Rückverfolgbarkeit von Anforderungen hilft auch bei der Analyse der Auswirkungen von Änderungen, indem sie aufzeigt, wie sich eine Änderung einer Anforderung auf andere Anforderungen auswirkt.

Testmanagementwerkzeuge können eine Verknüpfung zwischen Anforderungen, Testfällen, Testergebnissen und Fehlerberichten herstellen. Dies ermöglicht für jeden Fehlerbericht bzw. (gelösten oder noch ungelösten) Fehlerzustand die schnelle und lückenlose Verfolgbarkeit, welche Anforderungen betroffen sind und welche Testfälle jeweils durchgeführt wurden. Der Status der Verifikation und Validierung jeder Anforderung wird zuverlässig nachvollziehbar: fehlerhaft umgesetzte Anforderungen, "übersehene" Anforderungen (also Anforderungen, zu denen es keine Testfälle gibt), aber auch Lücken in den Anforderungen können aufgedeckt werden.

Die hergestellte Rückverfolgbarkeit, also die Verbindung zwischen den einzelnen Anforderungen und den sie prüfenden Testfällen, erlaubt eine Analyse ("Impact Analysis") und damit eine erheblich bessere Abschätzung der Auswirkungen bei Änderungen der Anforderungen auf den Test (Neustellung, Streichung oder Änderung von Testfällen). Andererseits erreicht die Rückverfolgbarkeit, dass eine Überdeckung der Anforderungen durch eine Menge an Testfällen ermitteln und somit ein Kriterium (Überdeckungsgrad) zur Beendung des dynamischen Tests festgelegt werden kann.

In der Praxis liegt die Zahl der Testfälle recht schnell bei einigen Hundert oder Tausend. Erst durch die Rückverfolgbarkeit wird es überhaupt möglich, aus der großen Anzahl von vorhandenen Testfällen diejenigen zu finden, die von einer geänderten Anforderung betroffen sind.

Anforderungsmanagement und Rückverfolgbarkeit minimieren das Risiko des Scheiterns oder kostspieliger Änderungen in späteren Entwicklungsphasen. Die frühzeitige Erkennung und Korrektur falscher oder fehlender Anforderungen ist wesentlich kostengünstiger als die Korrektur von Fehlern und Nacharbeiten, verursacht durch fehlende oder falsche Anforderungen.

Ein ausgereiftes Anforderungsmanagement sowie die Rückverfolgbarkeit von Artefakten sind Grundvoraussetzungen, um ein System richtig zu testen und daher von essenzieller Bedeutung für jedes Projekt.

Mit der Rückverfolgbarkeit kommen viele wichtige Vorteile, die sie zu einer lohnenden Tätigkeit machen, aber es gibt auch mehrere Normen, die sie für bestimmte Branchen oder Produktarten vorschreiben.

Welchen Nutzen bringt Rückverfolgbarkeit?

Die Rückverfolgbarkeit beantwortet mögliche Fragen wie:

  • Wo wird diese Anforderung getestet?

  • Worauf basiert diese Testbedingung / dieser Testfall?

  • Woher stammt der Fehlerbericht?

  • Warum wurde das getestet?

  • Wieso handelt sich um eine Fehlerwirkung?

  • In welchem Design wurde die Anforderung umgesetzt?

  • Welcher Testfall prüft diese Schnittstellendefinition ab?

Die Rückverfolgbarkeit bietet viele weitere Vorteile:

  • Wenn Anforderungen geändert oder Fehlerzustände behoben werden sollen, können mit ihrer Hilfe die Auswirkungen dieser Änderungen oder der Fehler besser analysiert werden. Es wird leicht ersichtlich, welche Testfälle angepasst oder durchgeführt werden müssen und welche zusätzlich ausgewählt werden sollen, um sicherzustellen, dass mit den Änderungen oder Korrekturen keine unbeabsichtigten Seiteneffekte aufgetreten (Regressionstests). Einige Testfälle können auch hinfällig werden und sollten dann archiviert werden.

  • Testberichte können beispielweise den Testfortschritt auf Basis getesteter versus fehlerhaft getesteter versus nicht abgedeckte Anforderungen darstellen.

  • Die Produktqualität kann genauer eingeschätzt werden, z. B. durch Darstellung der Fehlerhäufungen in Modulen geordnet nach realisierten Funktionen oder durchgeführten Tests.

  • Technisch schwieriger verständliche Aspekte des Testens (wie beispielweise technisch bedingte Abhängigkeiten) können über die Rückverfolgbarkeit so dargestellt werden, dass sie für die jeweilige Zielgruppe (vor allem Manager) leichter verständlich sind.

  • Die Beurteilung der Güte der Entwicklungs- und Testprozesse wird vereinfacht.

  • Bestimmungen (IT-Governance-Kriterien) werden eingehalten.

ALT MISSING
Abb. 1: Vollständige Rückverfolgbarkeit bis zur Testbasis

Herausforderungen im Bereich Rückverfolgbarkeit

Die Herausforderung für Rückverfolgbarkeit besteht darin, Vorteile zu schaffen, die helfen, die komplexen und umfangreichen Projekte zu bewältigen. Diese Vorteile gehen über das "Gewinnen von Erkenntnissen aus Datenanalysen" hinaus. Ein Beispiel für einen solchen Nutzen ist die werkzeugübergreifende Navigation. Hier sind Beispiele für die Vorteile - ihre Umsetzung ist eine Herausforderung:

  • Synchronisation von Daten zwischen verschiedenen Werkzeugen
    Folgendes Szenario illustriert den Nutzen der Synchronisation:
    Auf Basis der Traceability-Daten können zum Beispiel Anforderungen im Modellierungswerkzeug angezeigt werden, um sie zu verknüpfen. Die Anforderungen können sogar im Modellierungswerkzeug bearbeitet werden und in das Anforderungsmanagement-Werkzeug zurückgespielt werden.

  • Herstellung einer Historie deiner Artefakte und ihrer Verbindungen
    Basierend auf den Traceability-Daten werden sowohl Vergleiche einzelner Artefakte (zum Beispiel: Anforderung 345 hatte eine Textänderung, das Delta ist <…​>) als auch der Vergleich aggregierter Daten möglich (zum Beispiel: seit letzter Woche haben wir 23 neue Anforderungen, aber die Testabdeckung hat sich von 83% auf 92% erhöht).

  • Aussagekräftige Berichte mit Drill-Down-Funktionalitäten
    Bei der Beherrschung der Projektkomplexität helfen Drill Downs (die Navigation vom Aggregat zu den Details) - ungemein. Für das o.g. Beispiel mit der Testabdeckung von 92% wäre eine denkbare Drill Down etwa:

    • Testabdeckung beträgt 92 %.

    • Liste der Anzahl der nicht abgedeckten Anforderungen pro Subsystem

    • Liste der nicht abgedeckten Anforderungen für Subsystem A

  • Unterstützung der schnellen und sicheren Verlinkung von Artefakten
    In Situationen, bei den die automatisierte Herleitung von Verknüpfungen nicht möglich ist, muss manuell verlinkt werden. Die Anzahl der zu erzeugenden Links ist groß. Basierend auf Traceability-Daten lassen sich Editoren bauen, welche die schnelle und dennoch konsistente Verlinkung der Artefakte ermöglichen

Arten der Rückverfolgbarkeit

Es gibt drei Arten von Fragen, die mithilfe der Rückverfolgbarkeit beantwortet werden können (Abb. 2):

  • Rückwärtsverfolgbarkeit: Was war der Ursprung einer bestimmten Anforderung? Wo wurde es ermittelt? Welche Quellen (Stakeholder, Dokumente, andere Systeme) wurden bei der Ermittlung analysiert?

  • Vorwärtsverfolgbarkeit: Wo wird diese Anforderung verwendet? Welche Arbeitsergebnisse (programmierte Module, Testfälle, Prozeduren, Handbücher) basieren darauf?

  • Verfolgbarkeit zwischen Anforderungen: Hängen andere Anforderungen von dieser Anforderung ab oder umgekehrt (z.B. Qualitätsanforderungen im Zusammenhang mit einer funktionalen Anforderung)? Handelt es sich bei der Anforderung um eine Verfeinerung einer übergeordneten Anforderung (z.B. ein Epic, das in einer Reihe von User Stories verfeinert wurde, eine User Story, die mit einer Reihe von Akzeptanzkriterien versehen ist)? Wie hängen sie zusammen?

Um die Beziehungen rückverfolgbar zu machen, erstellt man Verknüpfungen zwischen den Artefakten. Diese Verknüpfungen sollen "semantisch gerichtet" sein (z.B. "wird verifiziert durch" oder "wird erfüllt durch"). Die Verknüpfungen sollten stets bidirektional analysierbar sein.

Auf Basis der Beziehung „wird verifiziert durch“ kann man in der einen Richtung prüfen, ob ein Test für eine Anforderung vorhanden ist. Die Begründung für einen Testfall kann dann geprüft werden, indem dieselbe Verbindung in entgegengesetzte Richtung ausgewertet wird.

ALT MISSING
Abb. 2: Richtungen der Rückverfolgbarkeit

Verfolgbarkeitsmatrix

Die Verfolgbarkeitsmatrix ist ein sehr effektiver Weg, um eine vollständige Rückverfolgbarkeit der Anforderungen zu gewährleisten. Die Verfolgbarkeitsmatrix erstellt einen Audit-Trail, indem sie Artefakte eines Typs (z.B. Anforderungen), die in Spalten dargestellt werden, auf Artefakte eines anderen Typs (z.B. Quellcode), die in Zeilen dargestellt werden, abbildet, was zu einer tabellenartigen Darstellung der Spuren zwischen Artefakten führt.

Eine Verfolgbarkeitsmatrix ist eine nützliche visuelle Hilfe, die eine große Menge an Informationen auf einen Blick sichtbar macht und mögliche Probleme aufzeigt, damit sie lange Zeit gelöst werden können, bevor sie die Chance haben, sich in große Probleme zu verwandeln.

Obwohl leicht zu erklären, können Verfolgbarkeitsmatrizen schnell sehr komplex und schwierig zu verwalten sein. Aus diesem Grund werden sie von Projektleitern selten manuell angelegt. Stattdessen setzen sie auf Anforderungsmanagement-Tools, um Änderungen an Anforderungen während der Produktion, über die Ideenfindung bis hin zur Fertigstellung zu verfolgen.

Eine gut durchdachte Rückverfolgbarkeit verbindet jede Anforderung mit den entsprechenden Unternehmenszielen, wodurch die Bewertung potenzieller Änderungen schnell und einfach erfolgt, das Projektrisiko reduziert, die Konsistenz zwischen den Anforderungen gefördert wird, die Überwachung und Kontrolle über den gesamten Lebenszyklus der Anforderungen ermöglicht wird und vieles mehr.

Tabelle 1: Beispiel einer Verfolgbarkeitsmatrix

(A1, A2…​ - Anforderung 1, Anforderung 2…​.)

Quellen für Anforderungen A1 A2 A3 A4 A5 A6 A7

User Story 123

x

Zusammenfassender Fragebogen 12. Mai

x

x

x

x

Bericht der Feldbeobachtung 03. Juli

x

x

x

Betriebsvorschrift 17.a.02

x

x

x

API - Dokumentation HR - System v3.0.2.a

x

x

x

Reifegradbestimmung & Entscheidungshilfen

Quellen