active, level, links
| active |
level |
links |
| true |
1.0 |
|
SWA-XXX: [Komponenten-Name]
Software Architectural Design Element (ASPICE SWE.2).
Beschreibt eine Software-Komponente und ihr Mapping auf Software-Anforderungen.
| Feld |
Wert |
| Projekt |
[Projektname] |
| Datum |
[YYYY-MM-DD] |
| Version |
[1.0] |
| Status |
[Entwurf / Freigegeben] |
| ASIL |
[QM / A / B / C / D] |
| Autor |
[Name] |
| Parent |
[SA-XXX, falls vorhanden] |
1. Verantwortung
[Ein bis zwei Saetze: Was tut diese Komponente? Wo ist die Abgrenzung zu Nachbar-Komponenten?]
2. Statische Sicht
2.1 Komponentendiagramm
2.2 Eingebettete / verwendete Komponenten
| Komponente |
Verweis |
Verwendung |
| [Name] |
SWA-YYY |
[wofuer] |
3. Schnittstellen
3.1 Bereitgestellte Schnittstelle (Provided)
| Funktion |
Zweck |
Pre-Condition |
Post-Condition |
| component_init |
Initialisierung |
cfg != NULL |
Komponente betriebsbereit |
| component_send |
Daten senden |
initialisiert |
Daten in TX-Buffer |
3.2 Benoetigte Schnittstelle (Required)
| Schnittstelle |
Bereitgestellt von |
Zweck |
| ILogger::log() |
LoggerComponent |
Diagnose / Tracing |
| IClock::now() |
ClockComponent |
Zeitstempel |
4. Dynamisches Verhalten
4.1 Sequenzdiagramm (kritischer Ablauf)
4.2 Zustandsdiagramm (falls zutreffend)
5. Ressourcen-Bedarf
| Ressource |
Worst-Case |
Methode der Bestimmung |
| Stack |
[z.B. 256 B] |
[Messung / statische Analyse] |
| Heap |
[z.B. 0 B] |
[keine Heap-Nutzung] |
| Flash |
[z.B. 4 KB] |
[Map-File des Linkers] |
| RAM (statisch) |
[z.B. 128 B] |
[Map-File des Linkers] |
| CPU-Last |
[z.B. < 1 %] |
[Messung auf Zielsystem] |
| Worst-Case Timing |
[z.B. 200 us / Aufruf init()] |
[Messung HiL] |
6. Fehlerverhalten
| Fehlerfall |
Erkennung |
Reaktion |
| Ungueltige Konfig |
Parameter-Check |
Status STATUS_EINVAL |
| HW-Timeout |
Timer |
Retry, dann STATUS_TIMEOUT |
| Buffer voll |
Check vor Schreiben |
STATUS_NOSPACE |
7. Designentscheidungen
| Entscheidung |
Alternative(n) |
Begruendung |
| [z.B. statische Allokation] |
[Heap] |
[deterministisch, MISRA] |
| [Lock-Strategie] |
[Mutex / lock-free] |
[Begruendung] |
8. Mapping auf Anforderungen
| Anforderung |
Wie abgedeckt |
Verifikations-Test |
| SWE-XXX |
[welcher Teil dieser Komponente erfuellt es] |
TST-UNIT-XXX, TST-INT-YYY |
| SWE-YYY |
[...] |
TST-UNIT-YYY |
Jede in den links referenzierte SWE-Anforderung muss in dieser Tabelle einen Eintrag haben.
9. Detail-Design
Detail-Design (ASPICE SWE.3) wird ab ASIL-C separat in arch/swd/SWD-XXX.md gefuehrt.
Fuer ASIL-A/B und QM ist Code + Header-Kommentare ausreichend.
Aenderungen an diesem Architektur-Element gehen per PR mit mind. 2 Technical-Review-Approvals (siehe SWE-Plan).