Softwaredokumentation – Was gehört wirklich hinein?
Struktur, Inhalte und Prozesse für regulierte Software
Kontakt aufnehmenWarum ist Softwaredokumentation so wichtig?
Software ist heute ein zentraler Bestandteil vieler Medizinprodukte – als eingebettete Software, als eigenständige Anwendung oder als Software as a Medical Device (SaMD). Damit steigen die Anforderungen an eine strukturierte, nachvollziehbare Softwaredokumentation.
Eine gute Softwaredokumentation stellt sicher, dass:
- Entwicklung, Qualitätssicherung und Regulatory Affairs effizient zusammenarbeiten,
- Risiken aus Softwarefunktionen nachvollziehbar beherrscht werden,
- Normen wie IEC 62304, ISO 14971 und IEC 62366-1 erfüllt werden,
- Audits und Zulassungen (z. B. nach MDR) reibungslos verlaufen,
- Wartung, Updates und Fehlerbehebung langfristig beherrschbar bleiben.
In regulierten Umgebungen ist Softwaredokumentation kein „Nice-to-have“, sondern ein zentrales Konformitäts- und Sicherheitsinstrument.
Was gehört in eine vollständige Softwaredokumentation?
Der genaue Umfang richtet sich nach Produkt, Regulierung und Unternehmensprozess. In der Praxis haben sich jedoch bestimmte Bausteine etabliert, die in keiner professionellen Softwaredokumentation fehlen sollten.
1. Produkt- und Systembeschreibung
- Beschreibung des Softwareprodukts und seiner Hauptfunktionen
- Systemkontext (Hardware, Schnittstellen, Netzwerke, externe Systeme)
- Zielgruppen und Einsatzumgebungen
2. Anforderungen (Requirements)
- Benutzeranforderungen (User Requirements)
- Software- und Systemanforderungen
- nichtfunktionale Anforderungen (z. B. Performance, Sicherheit, Datenschutz)
- Rückverfolgbarkeit zu Risiken und Tests (Traceability)
3. Architektur- und Designbeschreibung
- Softwarearchitektur (Module, Komponenten, Layers)
- Datenmodelle und Schnittstellen
- Designentscheidungen, inkl. sicherheitsrelevanter Aspekte
4. Implementierungs- und Konfigurationsdokumente
- Beschreibung wichtiger Algorithmen und kritischer Funktionen
- Konfigurationsparameter und deren Wirkung
- Abhängigkeiten zu Libraries, Frameworks und Drittsoftware
5. Test- und Verifizierungsdokumentation
- Teststrategie und Testkonzept
- Unit-, Integrations-, System- und Akzeptanztests
- Testfälle, Protokolle und Abdeckungsgrade
- Nachweis der Erfüllung sicherheitsrelevanter Anforderungen
6. Risikomanagement für Software
- Risikobetrachtung nach ISO 14971 mit Fokus auf Softwarefunktionen
- Verknüpfung von Risiken mit Anforderungen, Design und Tests
- Dokumentation von Risikokontrollmaßnahmen in der Software
7. Usability- und Gebrauchstauglichkeitsnachweise
- kritische Benutzeraufgaben für Softwareoberflächen
- Usability-Tests gemäß IEC 62366-1
- Rückfluss relevanter Erkenntnisse in UI-Texte, Warnhinweise und Anleitungen
8. Release-, Änderungs- und Konfigurationsmanagement
- Release Notes und Änderungsdokumentation
- Konfigurations- und Versionsmanagement (z. B. Git-Strategie)
- Bewertung von Änderungen in Bezug auf Risiko und Zulassung
9. Anwenderdokumentation & Begleitunterlagen
- Benutzerhandbuch, Online-Hilfe, In-App-Hilfe
- IFU und Technische Dokumentation, falls die Software Teil eines Medizinprodukts ist
- Schulungsunterlagen, FAQ, Supportkonzepte
Viele dieser Bausteine sind in der IEC 62304 konkretisiert. Eine eigene Seite zur Softwaredokumentation nach IEC 62304 kann diese Aspekte noch detaillierter beleuchten.
Für wen dokumentieren wir eigentlich?
Ein häufiger Fehler in Projekten: Es wird nur aus Entwicklersicht dokumentiert. In der Praxis hat Softwaredokumentation mehrere Zielgruppen – mit unterschiedlichen Anforderungen:
1. Entwicklung & QA
- nachvollziehbare Architektur- und Designentscheidungen
- klare Anforderungen und Testfälle
- Dokumentation für Wartung und Weiterentwicklung
2. Regulatory Affairs & Qualitätsmanagement
- Nachweise für MDR-Konformität und Normerfüllung
- strukturierte Risiko- und Testdokumentation
- Prüfbarkeit in Audits und Inspektionen
3. Anwender & Support
- verständliche Benutzerführung und Anleitungen
- klare Fehlermeldungen und Problemlösungen
- schnelle Einarbeitung und Schulung
Eine professionelle Softwaredokumentation berücksichtigt alle drei Perspektiven – und sorgt damit für weniger Rückfragen, weniger Fehler und mehr Sicherheit.
Softwaredokumentation in regulierten Umgebungen (MDR & IEC 62304)
In der Medizintechnik genügt es nicht, „irgendeine“ Dokumentation zu führen. Die MDR und Normen wie IEC 62304 definieren klare Anforderungen an Lifecycle, Risikomanagement, Tests und Nachweise.
- Klassifizierung der Software nach sicherheitsrelevanten Klassen
- vollständige Traceability von Anforderungen über Design und Implementierung bis zu Tests
- Risikomanagement mit Fokus auf Softwarefehler und Fehlbedienungen
- Berücksichtigung von Usability (IEC 62366-1) und Kennzeichnung (z. B. ISO 15223-1)
- Einbindung der Softwaredokumentation in die Technische Dokumentation nach MDR
In einer eigenen Seite zur Softwaredokumentation nach IEC 62304 können diese Anforderungen Schritt für Schritt erläutert und mit konkreten Dokumentenbeispielen verbunden werden.
Typische Fehler in Softwaredokumentationen
Aus Projekterfahrung lassen sich bestimmte Muster erkennen, die immer wieder zu Problemen in Audits, bei Zulassungen oder im Betrieb führen:
- Dokumentation startet zu spät – erst kurz vor Audit oder Freigabe.
- keine durchgängige Traceability zwischen Anforderungen, Risiken und Tests.
- Inkonsistenz zwischen Code, Spezifikation und Benutzerdokumentation.
- fehlende oder unklare Verantwortlichkeiten für Dokumente.
- nicht versionierte Dokumente – Änderungen sind nicht nachvollziehbar.
- kein Abgleich mit IFU und Technischer Dokumentation bei Medizinprodukten.
Eine strukturierte Checkliste für Softwaredokumentation hilft, diese Fehler frühzeitig zu vermeiden.
Best Practices für effiziente Softwaredokumentation
- Dokumentation als fester Teil des Entwicklungsprozesses – nicht als „Anhängsel“ am Ende.
- klare Rollenverteilung zwischen Entwicklung, RA/QM und Technischer Redaktion.
- Standardstrukturen und Templates für Anforderungen, Design, Tests und Benutzerdokumentation.
- zentrales Dokumentenmanagement (DMS) mit Versionierung und Freigabeworkflows.
- Terminologie-Management (z. B. mit flashterm) für konsistente Begriffe in allen Dokumenten.
- frühe Einbindung von Usability- und Risikomanagement, insbesondere für UI-Texte und Warnhinweise.
In Kombination mit einer klaren Prozessbeschreibung und passenden Tools reduziert eine professionelle Softwaredokumentation Aufwand, Risiken und Rückfragen – intern wie extern.