← Planung

Nicht-funktionale Anforderungen

15 Anforderungen nach ISO/IEC 25010 Qualitaetsmerkmalen: Performance, Reliability, Security, Usability, Maintainability, Portability, Compatibility. Jede Anforderung ist messbar und hat einen Zielwert.

Performance (3)

SlugBeschreibungMesskriteriumZielwertProzess
NFR-01 Antwortzeit von magic_code_login Schritt 1 bis Schritt 4 unter Last P95 Antwortzeit in Millisekunden <= 500 ms magic_code_login
NFR-02 Lexoffice-Voucher-Erzeugung P95 Antwortzeit fuer Lexoffice-API-Call <= 2000 ms monatsabo_zyklus
NFR-03 PayPal-Webhook-Verarbeitung bis Quittung P95 Ende-zu-Ende-Zeit <= 5 Sekunden monatsabo_zyklus

Reliability (3)

SlugBeschreibungMesskriteriumZielwertProzess
NFR-04 System-Uptime pro Monat Verfuegbarkeit in Prozent gemessen durch Monit >= 99.5 % global
NFR-05 PayPal-Webhook-Retry bei transienten Fehlern Anzahl Retries mit exponentiellem Backoff 3 Retries, Backoff 1-4-9 Sekunden monatsabo_zyklus
NFR-06 Zertifikat-Hash-Integritaet SHA-256 verifizierbar bei Abruf 100 % Match zwischen gespeichertem Hash und Datei zertifikat_ausstellung

Security (4)

SlugBeschreibungMesskriteriumZielwertProzess
NFR-07 Session-Cookie-Flags HttpOnly, Secure, SameSite alle drei Flags gesetzt magic_code_login
NFR-08 Magic-Code Brute-Force-Schutz Anzahl Anfragen pro E-Mail pro Stunde <= 5 Versuche magic_code_login
NFR-09 TLS-Mindestversion fuer alle Endpunkte TLS-Version laut Handshake-Log >= TLS 1.2, bevorzugt 1.3 global
NFR-10 Passwoerter nicht gespeichert Code-Scan auf password-Spalten in Schema keine Passwort-Spalten ausserhalb credentials global

Usability (1)

SlugBeschreibungMesskriteriumZielwertProzess
NFR-11 Seitensprache Deutsch mit korrekten Umlauten HTML lang-Attribut plus Zeichenvalidierung lang=de und UTF-8 global

Maintainability (2)

SlugBeschreibungMesskriteriumZielwertProzess
NFR-12 LOC pro PHP-Datei Zeilen pro Datei <= 80 hart global
NFR-13 Layer-Trennung Domain/App/Infra/UI Keine Query oder HTML in Domain-Klassen 0 Verletzungen in src/Planung/Domain global

Portability (1)

SlugBeschreibungMesskriteriumZielwertProzess
NFR-14 Datenbank-Abstraktion via PDO Anzahl direkter mysql-Funktionsaufrufe 0 global

Compatibility (1)

SlugBeschreibungMesskriteriumZielwertProzess
NFR-15 Browser-Kompatibilitaet ohne JS-Framework Funktional in Chromium/Firefox/Safari letzte 2 Versionen 3 Browser aktuell global