Regulated Engineering · Deep Dive
Evidence by Design: Entwicklungsnachweise nicht erst am Projektende erzeugen
Der teuerste Weg zu einem Nachweis ist, ihn nachträglich zu rekonstruieren. Dieser Deep Dive zeigt, welche Belege ein Release mitbringen sollte, wie die Pipeline sie als Nebenprodukt erzeugt und woran die Aufbewahrung in der Praxis scheitert.
- Lesezeit
- ca. 5 Minuten
- Stand
- August 2026
- Für
- Engineering, QA, Validation, DevOps
Vier Wochen vor dem Audit beginnt in vielen Projekten dieselbe Übung: Testberichte suchen, Freigaben rekonstruieren, Versionsstände zuordnen, Dokumente nachziehen. Der Aufwand ist erheblich, das Ergebnis inhaltlich schwächer als das, was während der Arbeit ohnehin entstanden ist – nur eben nicht aufbewahrt wurde.
1. Das Problem mit nachträglichen Nachweisen
Ein Nachweis, der nachträglich zusammengestellt wird, hat drei Schwächen: Er ist teuer, weil Menschen ihn erzeugen. Er ist lückenhaft, weil Zwischenstände überschrieben wurden. Und er ist schwach, weil er zeigt, dass jemand die Belege suchen musste – ein Prozess, der sie automatisch erzeugt, wirkt in jeder Prüfung überzeugender.
Evidence by Design dreht die Reihenfolge um: Nicht der Nachweis folgt der Arbeit, sondern die Arbeit erzeugt den Nachweis als Nebenprodukt.
2. Was Evidence konkret ist
„Nachweis“ klingt abstrakt, ist aber sehr konkret. Belastbar ist ein Artefakt dann, wenn es vier Eigenschaften erfüllt:
- Automatisch erzeugt – nicht von Hand geschrieben.
- Zugeordnet – zu einem exakten Softwarestand und zu einer handelnden Person oder einem Prozess.
- Unverändert aufbewahrt – über die geforderte Frist, außerhalb flüchtiger Werkzeugoberflächen.
- Auffindbar – über eine Kennung, nicht über die Erinnerung einzelner Personen.
Kernsatz
Ein grüner Build ist ein Zustand. Ein aufbewahrtes, zugeordnetes Protokoll ist ein Nachweis. Der Unterschied kostet in der Pipeline zehn Zeilen und im Audit mehrere Tage.
3. Die Artefakte je Stufe
| Schritt | Artefakt | Entsteht durch |
|---|---|---|
| Anforderung | versionierte Anforderung mit Kennung | Anforderungsverwaltung |
| Änderung | Commit mit Requirement-Trailer, Diff | Versionsverwaltung |
| Review | Freigabe mit Zeitstempel und Befund | Merge-Request-Prozess |
| Test | Testbericht mit Anforderungsbezug | Testlauf in der Pipeline |
| Prüfungen | Berichte aus SAST, Dependency- und Secret-Scan | Quality Gates |
| Build | Artefakt mit Version, Prüfsumme, SBOM | Build-Job |
| Release | Release Notes, Freigabe, Deployment-Protokoll | Deployment-Job |
Auffällig ist, wie wenig davon zusätzlich erzeugt werden muss. Fast alles entsteht ohnehin – es wird nur nicht eingesammelt.
4. Erzeugung in der Pipeline
Der entscheidende Schritt ist banal: Berichte nicht nur anzeigen, sondern als Artefakte ablegen und mit dem Build verknüpfen.
# Collect evidence in the same job that produces the build.
# Reports must outlive the CI retention period.
evidence:
script:
- ./gradlew test jacocoTestReport
- syft dir:. -o cyclonedx-json > evidence/sbom.json
- git log --format='%H %s%n%b' $PREV..$HEAD > evidence/changes.txt
- sha256sum build/app.jar > evidence/checksums.txt
artifacts:
paths: [evidence/, build/reports/]
expire_in: never # retention follows the record-keeping policy
Wichtig ist die Aufbewahrungsfrist. Standardeinstellungen von CI-Systemen räumen Artefakte nach Wochen auf – das ist für Nachweise unbrauchbar. Die Frist muss aus der Aufbewahrungspflicht folgen, nicht aus dem Speicherplatzbudget.
5. Das Release-Paket
Am Ende sollte ein Release ein einziges, in sich geschlossenes Paket ergeben, das ohne Rückfragen beantwortet, was ausgeliefert wurde:
- Version, Commit-Stand und Prüfsumme des Artefakts,
- enthaltene Anforderungen mit Kennung,
- Testberichte mit Ergebnis und Anforderungsbezug,
- Berichte der Sicherheits- und Abhängigkeitsprüfungen,
- Software-Stückliste (SBOM),
- Freigaben mit Person und Zeitpunkt,
- Zielumgebung, Zeitpunkt und Ergebnis des Deployments.
Das Paket ist kein Dokument, das jemand schreibt. Es ist ein Verzeichnis, das die Pipeline füllt – und das im Zweifel unverändert an eine prüfende Stelle weitergegeben werden kann.
6. Aufbewahrung und Lesbarkeit
Der zweite Stolperstein nach der Frist ist das Format. Ein Nachweis muss auch dann lesbar sein, wenn das erzeugende Werkzeug abgelöst wurde. Praktische Regeln:
- Offene Formate bevorzugen – Text, JSON, XML, PDF statt proprietärer Exporte.
- Selbsttragend ablegen: Ein Bericht, der auf eine Werkzeug-URL verweist, ist nach der Ablösung wertlos.
- Integrität sichern: Prüfsummen oder Signaturen, damit spätere Veränderung erkennbar wäre.
- Migration einplanen. Wer Systeme wechselt, muss die Nachweise mitnehmen – das gehört in die Ablöseplanung, nicht ans Ende.
7. Grenzen des Ansatzes
- Automatische Nachweise belegen Ausführung, nicht Angemessenheit. Dass 400 Tests grün sind, sagt nichts darüber, ob sie das Richtige prüfen.
- Nicht alles ist automatisierbar. Risikobewertungen, Validierungspläne und Freigabeentscheidungen bleiben menschliche Artefakte – sie sollten aber im selben Paket referenziert sein.
- Speicher und Ordnung. Wer alles aufbewahrt, findet nichts. Die Struktur des Pakets ist Teil des Nutzens.
Typische Fehler
- Retention der CI-Artefakte auf Standardwert lassen.
- Nachweise nur im Werkzeug vorhalten statt als exportierte Artefakte.
- Kein Anforderungsbezug in Testberichten – dann ist keine Abdeckungsaussage möglich.
- Freigaben mündlich oder im Chat.
- Das Paket erst kurz vor dem Audit definieren statt zu Beginn.
Checkliste: Evidence by Design
- Der Umfang des Release-Pakets ist definiert – zu Projektbeginn, nicht vor dem Audit.
- Alle Nachweise entstehen automatisch in dem Job, der das Artefakt erzeugt.
- Die Aufbewahrungsfrist folgt der Pflicht, nicht der CI-Voreinstellung.
- Artefakte tragen Version, Prüfsumme und SBOM und sind dem Commit-Stand zugeordnet.
- Formate sind offen und selbsttragend, damit sie einen Werkzeugwechsel überleben.
- Manuelle Artefakte sind referenziert: Risikobewertung, Validierungsplan, Freigaben.
Fazit
Evidence by Design ist keine neue Methodik, sondern eine Verlagerung: Der Nachweis entsteht dort, wo die Arbeit ohnehin stattfindet. Der technische Aufwand ist gering – ein paar Artefaktpfade, eine ehrliche Aufbewahrungsfrist, ein Anforderungsbezug in Testberichten.
Der Ertrag zeigt sich zweimal: bei der Prüfung, weil die Fragen ohne Suchen beantwortbar sind. Und im Alltag, weil dieselben Artefakte bei jeder Fehleranalyse und jeder Änderungsbewertung gebraucht werden. Wie sich die zugehörige Kette technisch aufbaut, beschreibt der Deep Dive Traceability: Requirement bis Release.
Quellen & weiterführende Standards
-
EudraLex Volume 4 – EU-GMP-Leitfaden
Insbesondere Annex 11 „Computerised Systems“ und Annex 15 „Qualification and Validation“; Europäische Kommission. health.ec.europa.eu -
SLSA – Supply-chain Levels for Software Artifacts
Stufenmodell für die Integrität von Build- und Lieferketten. slsa.dev -
SPDX – Software Package Data Exchange
Offener Standard für Software-Stücklisten (SBOM). spdx.dev -
Conventional Commits
Konvention für maschinenlesbare Commit-Nachrichten. www.conventionalcommits.org
Dieser Artikel ordnet Begriffe und Zusammenhänge ein. Er ist keine regulatorische Bewertung und keine Rechtsberatung. Welche Anforderungen für Ihr System gelten und welche Nachweise erforderlich sind, entscheidet sich am Verwendungszweck, am anwendbaren Regelwerk und an Ihrem Qualitätsmanagementsystem.
Weiterlesen
Passende Vertiefungen.
Regulated Engineering
KI in regulierter Softwareentwicklung: Geschwindigkeit ohne Kontrollverlust
Requirements, Review, Traceability, Change Control und Release Evidence.
Regulated Engineering
Traceability in der Softwareentwicklung: Requirement bis Release
Kennungen, Verknüpfung über Commit, Test und Build, generierte Matrix.
Plattform
So bildet CodamAI diese Schritte technisch ab
MCP-Integration, explizite Backend-Modelle, Hub, OpenAPI und eigene CI/CD.
Passt CodamAI zu Ihrem Engineering Setup?
Der ehrlichste Weg dorthin ist ein technisches Gespräch: über Ihren Stack, Ihre Delivery und die Anforderungen, die Sie nachweisen müssen.