Files
gig-line/Docs/Architecture/10_quality_requirements.adoc
T
zwitschi 72705268b5 docs: arc42 architecture documentation for Gig Line
Populated from the arc42-template (EN/adoc) with project-specific content
across all 12 sections:

1.  Introduction and Goals — requirements overview, quality goals, stakeholders
2.  Architecture Constraints — technical (engine, collision, coordinates),
    organisational (squash-merge, visual review, provenance), conventions
3.  Context and Scope — business and technical context tables
4.  Solution Strategy — technology decisions, top-level decomposition,
    quality achievement approach
5.  Building Block View — Gameplay (6 C++ classes), Site (7 meshes + 7
    materials), Facades (9 buildings), Art Pipeline, QA & Review; Level 2
    white boxes for input flow and collision model
6.  Runtime View — walk, screenshot capture, QA self-test, build/import
    pipeline scenarios
7.  Deployment View — dev workstation and packaged build infrastructure
8.  Cross-cutting Concepts — coordinate system, collision model, lighting,
    materials, data provenance, QA harness
9.  Architecture Decisions — 7 ADRs (dynamic lighting, UE materials,
    C++ collision helper, grounded reset, core ticker, Y convention,
    headless Blender)
10. Quality Requirements — overview table + 7 measurable scenarios
11. Risks and Technical Debts — 5 risks, 2 debts with mitigations
12. Glossary — 16 domain-specific terms

Master document: Docs/Architecture/architecture.adoc
Config: Docs/Architecture/config.adoc
2026-11-08 13:08:35 +01:00

35 lines
1.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
ifndef::imagesdir[:imagesdir: ./images]
[[section-quality-scenarios]]
== Quality Requirements
=== Quality Requirements Overview
[cols="1,2,1" options="header"]
|===
| Category | Requirement | Priority
| Performance efficiency | 60 FPS at 2560×1440, documented preset, no frame generation | 1
| Reliability / Terrain | Zero raycast holes across sidewalks and carriageway (84-sample transect) | 1
| Accuracy / Fidelity | Building placement matches reference photography within ~1 m | 2
| Accuracy / Fidelity | Street scale (lane width, sidewalk width) within ~10 cm of measured profile | 2
| Usability | WASD + mouse look, jump, reset (R), pause (Escape) — no tutorial needed | 2
| Compliance | ODbL attribution visible at runtime | 2
| Maintainability | Fresh checkout builds with documented engine installation | 2
| Portability | Linux build packages and runs; Windows build ships | 3
|===
=== Quality Scenarios
[cols="1,1,2,2" options="header"]
|===
| ID | Source/Stimulus | Response | Metric
| QS-1 | Player walks both sides of the demo | No fall-through, character stays at ground Z | 0 raycast holes in 84-sample transect
| QS-2 | Player holds W for 2 s on flat road | Character moves forward | ≥ 200 cm displacement, Z constant within ±5 cm
| QS-3 | Player presses R | Character teleports to spawn | < 100 cm from `StartLocation`
| QS-4 | Player presses Escape | Game pauses, cursor appears | `IsGamePaused()` = true
| QS-5 | Player presses Escape while paused | Game unpauses, cursor hides | `IsGamePaused()` = false
| QS-6 | Game runs on dev workstation at 1440p | Frame rate stable | ≥ 60 FPS, 99th percentile ≥ 55 FPS
| QS-7 | Fresh checkout + engine install | Build succeeds | Exit code 0, runnable binary produced
|===