Architekturtreiber
Architekturtreiber sind Anforderungen und Bedingungen mit besonders großem Einfluss auf den Entwurf. Ihre Priorisierung lenkt Entscheidungen auf die wirksamsten Fragen.
- TreiberAnforderung mit großem Einfluss auf den Entwurf.
- ConstraintVerbindliche Vorgabe, die den Lösungsraum begrenzt.
- PrioritätReihenfolge nach Einfluss.
Einordnung
Warum das wichtig ist
Nicht jede Anforderung prägt die Architektur gleich stark. Ohne Rangfolge richtet sich der Entwurf nach Zufall oder Lautstärke statt nach den wirksamsten Einflüssen. Messbare Qualitätsziele behandelt ein eigener Baustein.
Dieser Baustein erklärt die Auswahl prägender Einflüsse. Für messbare Qualitätserwartungen siehe Qualitätsattribute.
Auf einen Blick · Drei Treiber, eine Architektur
Priorisierte Treiber des Shops
Der Shop muss Bestellungen annehmen, Zahlungen zuverlässig klären und mit einem vorgeschriebenen Zahlungsanbieter arbeiten. Das Team priorisiert diese Einflüsse vor Detailentscheidungen.
So liest du das Bild
- Treiber Die Zeilen „Bestellung annehmen“ und „Unklaren Zahlungsstatus klären“ mit Priorität hoch.
- Constraint Die Zeile „Vorgegebener Anbieter“: Art Constraint, Priorität verbindlich.
- Priorität Die Spalte Priorität: hoch für prägende Treiber, mittel für Katalogbilder, verbindlich für den Constraint.
| Aspekt | Art | Einfluss auf den Entwurf | Priorität |
|---|---|---|---|
| Bestellung annehmen | Funktion | Bestell- und Lagermodul koordinieren | hoch |
| Unklaren Zahlungsstatus klären | Qualität | stabile Zahlungskennung und Statusabfrage | hoch |
| Vorgegebener Anbieter | Constraint | Adapter im Zahlungsmodul | verbindlich |
| Katalogbilder austauschen | Änderung | bleibt im Katalogmodul | mittel |
Nutzen & Grenzen
Hilft, wenn
- Ein Vorhaben muss entscheiden, welche Bedürfnisse bei der Strukturwahl besonderen Vorrang erhalten.
- Mehrere Ziele stehen in Konkurrenz und brauchen eine gemeinsam vereinbarte Priorität.
Grenzen
- Treiber sagen, was wichtig ist, nicht wie gut es sein muss; erst ein messbares Qualitätsattribut macht es prüfbar.
- Ein Constraint wie der vorgeschriebene Anbieter gilt verbindlich und wird nicht priorisiert; gleiche ihn mit den Constraints ab.
- Wenn alles als hoch gilt, steuert die Liste nichts mehr; nicht jede Anforderung ist ein Treiber, etwa die Katalogbilder.
In der Praxis
- Einflussreiche Bedürfnisse erfassen. Sammle Anforderungen, Risiken und Vorgaben und kläre, welche davon Architekturentscheidungen beeinflussen. Das Ergebnis ist eine begrenzte Liste statt eines ungeordneten Wunschkatalogs.
- Strukturelle Auswirkung bestimmen. Verfolge, welche Grenzen, Verantwortungen, Verträge oder Laufzeitbeziehungen sich aus dem Bedarf ergeben. Nutze messbare Szenarien aus Qualitätsattributen als Input, statt sie hier neu zu formulieren.
- Priorität und Herkunft vereinbaren. Benenne Eigentümer, Verbindlichkeit und Prüfzeitpunkt für jeden Treiber. Prüfe Constraints gesondert, damit nicht verhandelbare Bedingungen von priorisierten Zielen unterscheidbar bleiben.
Ausführliche Erklärung lesen
Ein Treiber wird relevant, wenn seine Erfüllung bestimmte Strukturen, Schnittstellen oder Betriebsweisen nahelegt. Fachliche Fähigkeiten können durch besondere Kritikalität oder Nutzungsmuster architekturprägend werden; auch verbindliche Constraints begrenzen Optionen. Funktionale Anforderungen beschreiben benötigte Leistungen, während Qualitätsattribute messbare Erwartungen an deren Verhalten formulieren.
Priorisiere Treiber nach ihrer Auswirkung auf Grenzen, Zuständigkeiten, Verträge und Laufzeitstruktur. Halte die Verbindung von Anforderung oder Bedingung zur betroffenen Entwurfswahl fest, damit spätere Änderungen rückverfolgbar bleiben. Messbare Qualitätsszenarien dienen hier als Input und werden im Baustein Qualitätsattribute erstellt.
Eine architektonisch signifikante Anforderung (ASR) ist eine Anforderung, die den Entwurf wesentlich prägt.
Selbst prüfen
Teste dich in drei Stufen
AblesenIm Bild nachsehen
Welche Priorität hat der Treiber „Katalogbilder austauschen“?
Lösung mit Begründung ansehen
Mittel. Die Änderung bleibt im Katalogmodul und prägt die Gesamtstruktur nicht.
AnwendenAuf eine neue Lage übertragen
Das Team erwägt, die Zahlungsstatus-Abfrage erst später zu bauen. Welcher Treiber spricht dagegen?
Lösung mit Begründung ansehen
„Unklaren Zahlungsstatus klären“ ist ein Qualitätstreiber mit Priorität hoch. Er verlangt eine stabile Zahlungskennung und eine Statusabfrage, die den Entwurf von Anfang an beeinflussen.
BewertenEine Alternative abwägen
Das Team will alle Treiber auf „hoch“ setzen. Ist das sinnvoll?
Lösung mit Begründung ansehen
Es wirkt gerecht, nimmt der Liste aber ihre Steuerungswirkung: Wenn alles hoch ist, fehlt bei Zielkonflikten eine Grundlage für die Entscheidung. Der vorgegebene Anbieter gehört ohnehin nicht in die Rangfolge, denn als Constraint ist er verbindlich.
Vertiefen
Diese Bausteine führen die Gedanken dieser Seite weiter.
Quellen
- arc42 · Einführung und Ziele (öffnet in neuem Tab)Geschäftsziele, Stakeholder und priorisierte Qualitätsziele als Ausgangspunkt.
- arc42 · Randbedingungen (öffnet in neuem Tab)Technische und organisatorische Vorgaben explizit festhalten.
- arc42 · Qualitätsanforderungen (öffnet in neuem Tab)Abstrakte Qualitätsziele in überprüfbare Szenarien übersetzen.