Zum Hauptinhalt springen

Architecture-Driven Requirements Allocation

·7 min
Thomas Arends
Autor
Thomas Arends
Management Consulting, Interim-, Projekt-, Qualitätsmanagement

Klassische Werkzeuge zwingen Anforderungen in eine Gliederung und verlangen, dass alles auf jeder Ebene wiederholt wird. Ab einigen hundert Anforderungen kippt das, und der Analyst vereinfacht — unkontrolliert und undokumentiert. Architecture-Driven Requirements Allocation, kurz ADRA, dreht die Reihenfolge um: Die Architektur ist der Anker, die Zuordnung ist eine geprüfte Beziehung, und Vollständigkeit wird nachrechenbar statt behauptet.

Das Problem

Rechnen Sie einmal nach, was gepflegt werden muss

Ein mittelgroßes Projekt mit Bestandssystem, realistische Größenordnung:

WAS ERFASST WIRD1.500Anforderungendavon 800 allgemeingültig für jede Komponente700Funktionen3.000+MerkmaleWAS GEPFLEGT WERDEN MUSS3.000+Fehlerbildermehr als 2 je Anforderung4.500+Fehlerbilder2-5 Fehler / Funktion und Ø 1,5 /Merkmal6.000+Maßnahmenmindestens 2 je MerkmalWie wollen Sie das pflegen?
Das ist keine theoretische Obergrenze, sondern die Menge an Einträgen, die jemand aktuell halten muss. Jeder einzelne kann veralten, ohne dass es auffällt.

Was in der Praxis passiert, kennt jeder, der es einmal gemacht hat: Irgendwo zwischen Anforderung 400 und 600 beginnt das Konstrukt zu kippen. Das Werkzeug wird langsam. Die Übersicht geht verloren. Und dann beginnt der Analyst zu vereinfachen.

Diese Vereinfachung ist der eigentliche Befund. Sie geschieht unkontrolliert, sie wird nicht aufgeschrieben, und sie hängt vollständig am Wissen und der Sorgfalt der jeweiligen Person. Kein Prozess, keine Nachvollziehbarkeit, keine Auditierbarkeit.

Das Ergebnis ist keine schlechte Analyse. Es ist eine Analyse mit unbekannten Lücken.

Die Ursache

Die Tyrannei der dominanten Gliederung

Klassische Werkzeuge erzwingen eine Hauptgliederung — meist die physische Bauteilstruktur. Alles andere, also Anforderungen, Zustände, Risiken, Testfälle, wird dieser einen Gliederung als Anhängsel untergeordnet. In der Softwaretechnik heißt dieses Phänomen seit über zwanzig Jahren Tyranny of the dominant decomposition — die Tyrannei der einen Zerlegung.

Das Problem: Ein technisches System hat nicht eine sinnvolle Gliederung. Es hat mindestens zwei die gleichzeitig gültig sind und einander nicht ersetzen.

HEUTE — eine Gliederung erzwungenBauteilstrukturSteuerung → FreitextAnforderungen → AnhängselRisiken → Excel-SpalteADRA — zwei Gliederungen gleichrangigBauteil-strukturSteuerungs-strukturAnforderungZugeordnet auf beide — als geprüfte Beziehung,nicht als Notiz.
Eine Anforderung wie „Bremsweg unter 40 Meter" betrifft eine Funktion, die über mehrere Stellen der Steuerung und mehrere physische Bauteile verteilt ist. Zwingt man das Werkzeug zur Wahl, wird die andere Gliederung zu Freitext.
Der Kategorienfehler

Wann Lösungsfreiheit Sinn ergibt — und wann sie Theater ist

Der Systems-Engineering-Ansatz nach SOPHIS oder INCOSE und ISO/IEC 15288 ist im Grundsatz richtig: Anforderungen lösungsfrei formulieren, erst danach die Architektur entscheiden. Für Neuentwicklungen ist das der korrekte Weg.

Bei Bestandssystemen ist derselbe Ansatz ein Kategorienfehler. Ein Notstromaggregat, ein Fahrzeuggetriebe, eine Medizinpumpe — die Architektur dieser Systeme ist keine Designentscheidung mehr. Motor, Generator, Rahmen, Steuerung sind physische Realität. Ihnen gegenüber auf Lösungsfreiheit zu bestehen ist methodisch nicht sauber.

LÖSUNGSFREIHEIT IST RICHTIGNeuentwicklungKonzeptphaseoffener SuchraumLÖSUNGSFREIHEIT IST THEATERVariantenabsicherungSerienbegleitungbekannte Architektur
Dieselbe Regel, zwei Kontexte, entgegengesetzte Wirkung. Der Unterschied zwischen Methodendogma und Methodenverstand.

Erfahrene Ingenieure umgehen die Doktrin ohnehin. Sie weisen Anforderungen direkt den Komponenten zu (was technisch korrekt ist), sie aggregieren Funktionen, sie vereinfachen das Systemmodell. Das Problem ist nicht, dass sie es tun. Das Problem ist, dass es implizit geschieht, jeder es ein bisschen anders macht und niemand aufschreibt, warum. Das nächste Projekt beginnt wieder bei null.

ADRA ist die Formalisierung dessen, was ohnehin funktioniert — mit vollständiger Nachvollziehbarkeit.

Die Methode

Fünf Grundsätze

GrundsatzWirkung
Einmal erfassen, per Zuordnung sichtbarKeine Doppelpflege auf jeder Hierarchieebene
Die Architektur ist der AnkerNicht eine abstrakte Funktionshierarchie, die niemand pflegt
Zuordnung auf beide StrukturenSteuerungsarchitektur und, wo physisch relevant, mechanische Architektur
Funktionen werden aggregiertAus 700 Systemfunktionen werden 50 bis 80 analyserelevante
Die Granularität tragen die FehlerbilderNicht die Funktionen — sonst wächst die Menge wieder

Das Ergebnis wird überschaubar und vollständig, prüfbar.

Der Hebel

Einmal generisch — gepflegt wird nur, was abweicht

Zurück zu den 800 Anforderungen, die für jede Komponente gelten. Bei zwanzig Komponenten wären das sechzehntausend Einträge, die dasselbe sagen. Sie einzeln zu pflegen ist ausgeschlossen. Sie einzeln zu filtern übrigens auch — eine Triage, die jede Anforderung gegen jede Komponente prüft, ist dasselbe Skalierungsproblem in Grün.

Der einzige Weg, der trägt: einmal am Typ deklarieren, alle Verwendungen erben per Verweis, und gepflegt wird ausschließlich die Abweichung.

TYP — einmal geschrieben800 allgemeingültige Anforderungen,Funktionen, Merkmaleerbt per VerweisKomponente Akeine Abweichung0 Einträge gepflegtKomponente B3 Abweichungen3 Einträge gepflegtKomponente C1 Abweichung1 Eintrag gepflegtÄndert sich der Typ, ändern sich alle Verwendungen — ohne dass jemand nachzieht.
Ohne diese Trennung gibt es nur zwei Ausgänge: Eine Änderung schlägt fälschlich überall durch, oder dreifache Pflege erzeugt drei Wahrheiten.

Zwei Regeln machen das tragfähig.

Die Abweichung ist eine Abweichung, keine Kopie. Wer eine Anforderung für eine Komponente ändert, erzeugt keinen zweiten Text, der irgendwann auseinanderläuft. Er erzeugt einen sichtbar markierten Unterschied gegenüber dem Typ. Man sieht auf einen Blick, wo abgewichen wurde — und warum.

Die Verwendung verweist auf einen Stand, nicht auf einen Namen. Der Typ ist versioniert. Eine Komponente hängt an einer bestimmten Fassung. Ändert sich der Typ, ist sichtbar, welche Verwendungen auf dem alten Stand stehen — statt dass es niemand merkt.

Dasselbe gilt für fachliche Sichten wie Sicherheit, Umwelt oder elektromagnetische Verträglichkeit. Sie sind zusätzliche Facetten an einem Objekt, keine exklusiven Kategorien. Ein Bauteil wird nicht „zu einem Sicherheitsteil", weil jemand eine Sicherheitsanforderung daran hängt — es trägt danach eine Facette mehr. Die Sicherheitssicht zeigt dann alle Objekte mit dieser Facette, nicht die Objekte, die Sicherheit sind. Wer daraus ein exklusives Attribut macht, erzeugt Kopien, und Kopien laufen auseinander.

Der Filter ist kein Arbeitsschritt am Anfang. Er ist eine Eigenschaft der Struktur.

Der Gewinn

Vollständigkeit wird prüfbar statt behauptet

Weil die Zuordnung eine eigenständige Beziehung im Modell ist und keine Notiz, kann eine Maschine sie prüfen. Drei Fragen, deterministisch beantwortbar, ohne Workshop und ohne Review-Meeting.

PRÜFUNG 1Hat jede Anforderungeine Verifikations-methode?PRÜFUNG 2Ist jede Anforderungbeiden Strukturenzugeordnet?PRÜFUNG 3Hat jede Steuerungs-aktion ein Bauteil,das sie ausführt?Läuft in Sekunden, weil sie gegen eine Struktur läuft, die die Zuordnung ohnehin erzwingt.
Prüfung 1 ist keine Ermessensfrage: ISO/IEC/IEEE 29148 verlangt für jede Anforderung ein Verifikationskriterium, ohne Ausnahme.

Das ist der Unterschied zwischen einem Werkzeug, das Nachvollziehbarkeit ermöglicht, und einer Struktur, die sie erzwingt.

Normbezug

Bricht das mit ISO 26262?

Das ist die häufigste Reaktion. Die kurze Antwort ist nein — und es lohnt, die beiden Spalten nebeneinanderzulegen.

Was die Standards fordernWas kein Standard vorschreibt
Bidirektionale Nachvollziehbarkeit von der Anforderung über Funktion und Komponente bis zum TestDass jede Anforderung auf jeder Hierarchieebene explizit erscheint
Lückenloser Anforderungsnachweis — keine Anforderung ohne VerifikationEine bestimmte Werkzeugstruktur oder Hierarchietiefe
Vollständigkeit der VerifikationRedundante Verknüpfungen durch alle Ebenen
Nachvollziehbarkeit jeder Zuweisung

Das eigentliche regulatorische Risiko liegt nicht in diesem Ansatz. Es liegt in den unkontrollierten Vereinfachungen, die Analysten in klassischen Werkzeugen vornehmen — undokumentiert, nicht nachvollziehbar, nicht auditierbar.

Fachsichten

Was bleibt, und was verschwindet

Der berechtigte Einwand jedes erfahrenen Requirements-Engineers lautet: „Ich will weiter mein gewohntes Anforderungsdokument sehen. Der Sicherheitsanalytiker will sein Formblatt. Der Architekt will sein Strukturbild."

Genau das bleibt. Anforderungsdokument, Fehleranalyse, Architekturbild, Testplan sind Sichten auf dasselbe Modell — keine getrennten Systeme, die synchronisiert werden müssen.

Ein ModellArchitektur + AnforderungenAnforderungs-dokumentFehleranalyseArchitekturbildTestplan
Was verschwindet, ist ausschließlich die Arbeit zwischen den Sichten: Übertragen, Abgleichen, Suchen nach dem aktuellen Stand. Die Fachsichten selbst bleiben unverändert.
Grenzen

Drei Dinge nimmt auch ADRA niemandem ab

  1. Der Streit um den richtigen SchnittWie ein Produkt sinnvoll zerlegt wird, bleibt eine Ingenieursentscheidung. Die Methode setzt eine Architektur voraus, sie erzeugt keine.
  2. Anforderungen, die mehrere Elemente gleichzeitig betreffenEin Gewichtsbudget aufzuteilen ist eine Entscheidung, keine Automatik.
  3. Schnittstellen mit zwei EigentümernWas der eine liefert, muss der andere vertragen. Die Methode macht das Paar sichtbar und prüfbar. Einigen müssen sich die Menschen.

Wer verspricht, auch das zu automatisieren, verspricht zu viel.

Und der Wirksamkeitsnachweis fehlt. Es gibt für ADRA keine kontrollierte Studie. Was es gibt, sind Prüfungen, die scheitern können: Eine Anforderung ist zugeordnet oder nicht. Ein Verifikationskriterium existiert oder nicht. Eine Verwendung steht auf dem aktuellen Stand oder nicht. Das ist kein Beweis — es ist die Bedingung dafür, dass je einer möglich wird. Der ehrliche Vergleich lautet nicht „ADRA gegen bewiesene Alternative", sondern dokumentierte Zuordnung gegen undokumentierte Vereinfachung.

Weiterlesen

Die erzählte Fassung mit dem Beispiel aus dem Alltag steht im Beitrag Warum euer bester Konstrukteur drei Wochen braucht, um eine E-Mail zu verarbeiten. Der übergeordnete Rahmen steht unter Lebensfähigkeit, die Prüfung von Schnittstellen und Gefahrenmengen unter Der erlaubte Raum.