name: “mdr-745-specialist”
description: EU MDR 2017/745 compliance specialist for medical device classification, technical documentation, clinical evidence, and post-market surveillance. Covers Annex VIII classification rules, Annex II/III technical files, Annex XIV clinical evaluation, and EUDAMED integration.
triggers:
- MDR compliance
- EU MDR
- medical device classification
- Annex VIII
- technical documentation
- clinical evaluation
- PMCF
- EUDAMED
- UDI
- notified body
MDR 2017/745 Specialist
EU MDR compliance patterns for medical device classification, technical documentation, and clinical evidence.
Table of Contents
Device Classification Workflow
Classify device under MDR Annex VIII:
- Identify device duration (transient, short-term, long-term)
- Determine invasiveness level (non-invasive, body orifice, surgical)
- Assess body system contact (CNS, cardiac, other)
- Check if active device (energy dependent)
- Apply classification rules 1-22
- For software, apply MDCG 2019-11 algorithm
- Document classification rationale
- Validation: Classification confirmed with Notified Body
Classification Matrix
| Factor | Class I | Class IIa | Class IIb | Class III |
|---|
| Duration | Any | Short-term | Long-term | Long-term |
| Invasiveness | Non-invasive | Body orifice | Surgical | Implantable |
| System | Any | Non-critical | Critical organs | CNS/cardiac |
| Risk | Lowest | Low-medium | Medium-high | Highest |
Software Classification (MDCG 2019-11)
| Information Use | Condition Severity | Class |
|---|
| Informs decision | Non-serious | IIa |
| Informs decision | Serious | IIb |
| Drives/treats | Critical | III |
Classification Examples
Example 1: Absorbable Surgical Suture
- Rule 8 (implantable, long-term)
- Duration: > 30 days (absorbed)
- Contact: General tissue
- Classification: Class IIb
Example 2: AI Diagnostic Software
- Rule 11 + MDCG 2019-11
- Function: Diagnoses serious condition
- Classification: Class IIb
Example 3: Cardiac Pacemaker
- Rule 8 (implantable)
- Contact: Central circulatory system
- Classification: Class III
Technical Documentation
Prepare technical file per Annex II and III:
- Create device description (variants, accessories, intended purpose)
- Develop labeling (Article 13 requirements, IFU)
- Document design and manufacturing process
- Complete GSPR compliance matrix
- Prepare benefit-risk analysis
- Compile verification and validation evidence
- Integrate risk management file (ISO 14971)
- Validation: Technical file reviewed for completeness
Technical File Structure
ANNEX II TECHNICAL DOCUMENTATION
├── Device description and UDI-DI
├── Label and instructions for use
├── Design and manufacturing info
├── GSPR compliance matrix
├── Benefit-risk analysis
├── Verification and validation
└── Clinical evaluation report
GSPR Compliance Checklist
| Requirement | Evidence | Status |
|---|
| Safe design (GSPR 1-3) | Risk management file | ☐ |
| Chemical properties (GSPR 10.1) | Biocompatibility report | ☐ |
| Infection risk (GSPR 10.2) | Sterilization validation | ☐ |
| Software requirements (GSPR 17) | IEC 62304 documentation | ☐ |
| Labeling (GSPR 23) | Label artwork, IFU | ☐ |
| Class | Route | NB Involvement |
|---|
| I | Annex II self-declaration | None |
| Is/Im | Annex II + IX/XI | Sterile/measuring aspects |
| IIa | Annex II + IX or XI | Product or QMS |
| IIb | Annex IX + X or X + XI | Type exam + production |
| III | Annex IX + X | Full QMS + type exam |
Clinical Evidence
Develop clinical evidence strategy per Annex XIV:
- Define clinical claims and endpoints
- Conduct systematic literature search
- Appraise clinical data quality
- Assess equivalence (technical, biological, clinical)
- Identify evidence gaps
- Determine if clinical investigation required
- Prepare Clinical Evaluation Report (CER)
- Validation: CER reviewed by qualified evaluator
Evidence Requirements by Class
| Class | Minimum Evidence | Investigation |
|---|
| I | Risk-benefit analysis | Not typically required |
| IIa | Literature + post-market | May be required |
| IIb | Systematic literature review | Often required |
| III | Comprehensive clinical data | Required (Article 61) |
Clinical Evaluation Report Structure
CER CONTENTS
├── Executive summary
├── Device scope and intended purpose
├── Clinical background (state of the art)
├── Literature search methodology
├── Data appraisal and analysis
├── Safety and performance conclusions
├── Benefit-risk determination
└── PMCF plan summary
Qualified Evaluator Requirements
- Medical degree or equivalent healthcare qualification
- 4+ years clinical experience in relevant field
- Training in clinical evaluation methodology
- Understanding of MDR requirements
Post-Market Surveillance
Establish PMS system per Chapter VII:
- Develop PMS plan (Article 84)
- Define data collection methods
- Establish complaint handling procedures
- Create vigilance reporting process
- Plan Periodic Safety Update Reports (PSUR)
- Integrate with PMCF activities
- Define trend analysis and signal detection
- Validation: PMS system audited annually
PMS System Components
| Component | Requirement | Frequency |
|---|
| PMS Plan | Article 84 | Maintain current |
| PSUR | Class IIa and higher | Per class schedule |
| PMCF Plan | Annex XIV Part B | Update with CER |
| PMCF Report | Annex XIV Part B | Annual (Class III) |
| Vigilance | Articles 87-92 | As events occur |
PSUR Schedule
| Class | Frequency |
|---|
| Class III | Annual |
| Class IIb implantable | Annual |
| Class IIb | Every 2 years |
| Class IIa | When necessary |
Serious Incident Reporting
| Timeline | Requirement |
|---|
| 2 days | Serious public health threat |
| 10 days | Death or serious deterioration |
| 15 days | Other serious incidents |
EUDAMED and UDI
Implement UDI system per Article 27:
- Obtain issuing entity code (GS1, HIBCC, ICCBBA)
- Assign UDI-DI to each device variant
- Assign UDI-PI (production identifier)
- Apply UDI carrier to labels (AIDC + HRI)
- Register actor in EUDAMED
- Register devices in EUDAMED
- Upload certificates when available
- Validation: UDI verified on sample labels
EUDAMED Modules
| Module | Content | Actor |
|---|
| Actor | Company registration | Manufacturer, AR |
| UDI/Device | Device and variant data | Manufacturer |
| Certificates | NB certificates | Notified Body |
| Clinical Investigation | Study registration | Sponsor |
| Vigilance | Incident reports | Manufacturer |
| Market Surveillance | Authority actions | Competent Authority |
UDI Label Requirements
Required elements per Article 13:
Reference Documentation
MDR Classification Guide
references/mdr-classification-guide.md contains:
- Complete Annex VIII classification rules (Rules 1-22)
- Software classification per MDCG 2019-11
- Worked classification examples
- Conformity assessment route selection
Clinical Evidence Requirements
references/clinical-evidence-requirements.md contains:
- Clinical evidence framework and hierarchy
- Literature search methodology
- Clinical Evaluation Report structure
- PMCF plan and evaluation report guidance
Technical Documentation Templates
references/technical-documentation-templates.md contains:
- Annex II and III content requirements
- Design History File structure
- GSPR compliance matrix template
- Declaration of Conformity template
- Notified Body submission checklist
MDR Gap Analyzer
# Quick gap analysis
python scripts/mdr_gap_analyzer.py --device "Device Name" --class IIa
# JSON output for integration
python scripts/mdr_gap_analyzer.py --device "Device Name" --class III --output json
# Interactive assessment
python scripts/mdr_gap_analyzer.py --interactive
Analyzes device against MDR requirements, identifies compliance gaps, generates prioritized recommendations.
Output includes:
- Requirements checklist by category
- Gap identification with priorities
- Critical gap highlighting
- Compliance roadmap recommendations
Notified Body Interface
Selection Criteria
| Factor | Considerations |
|---|
| Designation scope | Covers your device type |
| Capacity | Timeline for initial audit |
| Geographic reach | Markets you need to access |
| Technical expertise | Experience with your technology |
| Fee structure | Transparency, predictability |
Pre-Submission Checklist
Clinical Evidence Requirements
MDR Annex XIV clinical evaluation and post-market clinical follow-up guidance.
Table of Contents
Clinical Evidence Framework
Evidence Hierarchy
| Evidence Type |
Strength |
When to Use |
| Randomized Controlled Trial |
Highest |
Novel Class III, high-risk claims |
| Prospective cohort study |
High |
New technology, performance claims |
| Retrospective analysis |
Medium |
Established technology, equivalence |
| Literature review |
Medium |
Well-characterized, equivalent devices |
| Expert opinion |
Low |
Supportive only, not primary |
Evidence Requirements by Class
| Class |
Minimum Evidence |
Clinical Investigation |
| I |
Risk-benefit analysis |
Not typically required |
| IIa |
Literature + post-market data |
May be required for novel tech |
| IIb |
Systematic literature review |
Often required for claims |
| III |
Comprehensive clinical data |
Required unless equivalent |
Clinical Evidence Pathway
Determine evidence strategy:
- Assess device classification and risk level
- Evaluate claim significance (diagnostic, therapeutic)
- Determine if equivalence can be demonstrated
- Identify available literature and clinical data
- Assess gaps requiring additional investigation
- Develop PMCF plan for ongoing evidence
- Validation: Evidence strategy approved by Notified Body
Clinical Evaluation Process
Clinical Evaluation Workflow
Execute clinical evaluation per Annex XIV Part A:
- Identify relevant safety and performance data
- Define scope and search strategy
- Conduct systematic literature search
- Appraise and analyze clinical data
- Assess benefit-risk profile
- Document conclusions in Clinical Evaluation Report (CER)
- Plan post-market clinical follow-up
- Validation: CER reviewed by qualified clinical evaluator
Clinical Evaluation Report Structure
CLINICAL EVALUATION REPORT (CER)
├── 1. Executive Summary
│ ├── Device description and intended purpose
│ ├── Conclusions on safety and performance
│ └── Benefit-risk conclusion
├── 2. Scope of Clinical Evaluation
│ ├── Device identification
│ ├── Clinical claims to be evaluated
│ └── Equivalence assessment (if applicable)
├── 3. Clinical Background
│ ├── Disease/condition overview
│ ├── Current treatment options
│ └── State of the art
├── 4. Clinical Data Sources
│ ├── Pre-clinical data (bench, animal)
│ ├── Clinical investigation data
│ ├── Literature search methodology
│ └── Post-market surveillance data
├── 5. Data Appraisal
│ ├── Study quality assessment
│ ├── Relevance to subject device
│ └── Data contribution to evaluation
├── 6. Data Analysis
│ ├── Safety analysis
│ ├── Performance analysis
│ └── Benefit-risk determination
├── 7. Conclusions
│ ├── Clinical evidence summary
│ ├── Residual risks
│ └── PMCF requirements
└── 8. PMCF Plan Summary
├── Data gaps identified
├── PMCF activities planned
└── Update schedule
Qualified Clinical Evaluator
Requirements per Annex XIV:
- Medical degree or equivalent healthcare qualification
- 4+ years clinical experience in relevant field OR
- Research background in relevant domain
- Training in clinical evaluation methodology
- Understanding of MDR requirements
Literature-Based Evidence
Literature Search Strategy
Execute systematic literature review:
- Define PICO question (Population, Intervention, Comparison, Outcome)
- Develop search string with Boolean operators
- Select databases (PubMed, Embase, Cochrane, etc.)
- Set date range and language filters
- Execute search and document results
- Screen abstracts and full texts
- Validation: Reproducible search, documented exclusion criteria
Database Selection
| Database |
Coverage |
Best For |
| PubMed/MEDLINE |
Biomedical literature |
Primary clinical data |
| Embase |
Drugs, devices, biomedical |
European studies |
| Cochrane Library |
Systematic reviews |
Meta-analyses |
| CINAHL |
Nursing, allied health |
User studies |
| IEEE Xplore |
Engineering |
Technical performance |
| Manufacturer data |
Proprietary |
Direct device data |
Data Appraisal Criteria
Evaluate each source:
| Criterion |
Assessment |
Score |
| Study design |
RCT > cohort > case series |
1-5 |
| Sample size |
Statistical power adequate |
1-5 |
| Follow-up duration |
Sufficient for outcomes |
1-5 |
| Population relevance |
Matches IFU population |
1-5 |
| Device equivalence |
Technical, biological, clinical |
1-5 |
| Bias risk |
Low/medium/high |
1-5 |
Equivalence Assessment
Demonstrate equivalence per MDCG 2020-5:
Technical equivalence:
- Similar design
- Same materials
- Same specifications
- Same manufacturing process
Biological equivalence:
- Same tissue contact
- Same biocompatibility
- Same sterilization method
Clinical equivalence:
- Same intended purpose
- Same clinical condition
- Same patient population
- Same user (professional/lay)
Clinical Investigation Requirements
When Investigation is Required
Clinical investigation mandatory:
Clinical Investigation Workflow
Conduct clinical investigation:
- Develop Clinical Investigation Plan (CIP)
- Submit to Ethics Committee for approval
- Notify Competent Authority (via EUDAMED)
- Conduct investigation per GCP principles
- Collect and analyze clinical data
- Prepare Clinical Investigation Report
- Submit serious adverse event reports (within 7-15 days)
- Validation: All subjects completed, data lock achieved
Clinical Investigation Plan Elements
| Section |
Content |
| Objectives |
Primary and secondary endpoints |
| Design |
Randomized, controlled, blinded |
| Population |
Inclusion/exclusion criteria |
| Sample size |
Statistical justification |
| Procedures |
Visit schedule, assessments |
| Endpoints |
Safety and performance measures |
| Analysis |
Statistical methods |
| Safety |
Adverse event definitions, reporting |
Ethics Committee Submission
Required documentation:
- Clinical Investigation Plan
- Investigator's Brochure
- Informed consent documents
- Case Report Forms
- Investigator CVs
- Insurance certificate
- Device documentation
Post-Market Clinical Follow-up
PMCF Plan Requirements
Develop PMCF Plan per Annex XIV Part B:
- Identify residual risks from clinical evaluation
- Define clinical questions to address
- Select PMCF methods (survey, registry, study)
- Specify endpoints and success criteria
- Define timeline and milestones
- Plan data collection and analysis
- Schedule PMCF Evaluation Report updates
- Validation: PMCF Plan approved by Notified Body
PMCF Methods
| Method |
Description |
Best For |
| Literature review |
Ongoing systematic search |
Mature devices |
| Survey |
User/patient questionnaire |
Real-world experience |
| Registry |
Multi-site data collection |
Long-term outcomes |
| PMCF study |
Prospective clinical study |
Specific questions |
| Complaint analysis |
Structured complaint review |
Safety signals |
| Vigilance data |
MAUDE, EUDAMED analysis |
Comparative safety |
PMCF Evaluation Report
Update frequency:
| Device Class |
Update Frequency |
| Class III |
Annual |
| Class IIb implantable |
Annual |
| Class IIb |
Every 2 years |
| Class IIa |
Every 2-5 years |
| Class I |
When clinically relevant |
PMCF Report Structure
PMCF EVALUATION REPORT
├── 1. Executive Summary
│ └── Key findings and conclusions
├── 2. Scope
│ ├── Device covered
│ └── Reporting period
├── 3. PMCF Activities
│ ├── Methods employed
│ └── Data sources
├── 4. Results
│ ├── Safety data
│ ├── Performance data
│ └── Clinical questions addressed
├── 5. Conclusions
│ ├── Benefit-risk confirmation
│ ├── Residual risks updated
│ └── Need for corrective action
└── 6. Next Steps
├── CER update requirements
└── PMCF Plan modifications
Integration with CER
PMCF data feeds clinical evaluation:
- PMCF data collected per plan
- Data analyzed in PMCF Evaluation Report
- CER updated with PMCF conclusions
- Risk management file updated
- IFU updated if needed
- Validation: CER update cycle completed
MDR Device Classification Guide
EU MDR 2017/745 Annex VIII classification rules and decision framework.
Table of Contents
Classification Overview
Risk Class Hierarchy
| Class |
Risk Level |
Examples |
NB Required |
| I |
Lowest |
Bandages, wheelchairs, stethoscopes |
No (self-certification) |
| IIa |
Low-Medium |
Hearing aids, dental filling materials |
Yes |
| IIb |
Medium-High |
Ventilators, blood bags, implantable sutures |
Yes |
| III |
Highest |
Pacemakers, heart valves, hip implants |
Yes |
Classification Factors
Determine class based on:
Duration of contact:
- Transient: < 60 minutes
- Short-term: 60 min to 30 days
- Long-term: > 30 days
Degree of invasiveness:
- Non-invasive
- Invasive via body orifice
- Surgically invasive
- Implantable
Body system interaction:
- Central circulatory system
- Central nervous system
- Other organ systems
Active vs. passive:
- Active devices (energy dependent)
- Passive devices
Classification Rules
Non-Invasive Devices (Rules 1-4)
Rule 1 - General non-invasive:
- Class I (unless covered by other rules)
- Example: Wheelchairs, hospital beds, collection devices
Rule 2 - Channeling or storing:
- Class IIa: Blood bags, transfusion sets (>60 min contact)
- Class IIb: Blood storage, organ storage
- Class I: Simple channeling (gravity, IV bag without additives)
Rule 3 - Modifying biological composition:
- Class IIa: Filters, gas separators, dialysis filters
- Class IIb: Blood filtration, exchange transfusion
Rule 4 - Contact with injured skin:
- Class I: Wound dressings for superficial wounds
- Class IIa: Wounds in dermis requiring secondary intent healing
- Class IIb: Severe wounds, chronic wounds, burns
Invasive Devices (Rules 5-8)
Rule 5 - Body orifice invasive (transient):
- Class I: Transient use, non-surgically invasive
- Class IIa: Short-term use
- Class IIb: Long-term use in oral cavity
Rule 6 - Surgically invasive (transient):
- Class IIa: Transient use
- Exception Class I: Reusable surgical instruments
Rule 7 - Surgically invasive (short-term):
- Class IIa: Short-term (< 30 days)
- Class IIb: Central circulatory or CNS contact
- Class III: Chemical change or drug delivery
Rule 8 - Implantable and long-term surgically invasive:
- Class IIb: General implants
- Class III: Heart, CNS, spine contact; drug delivery; biological origin
Active Devices (Rules 9-13)
Rule 9 - Active therapeutic devices:
- Class IIa: Exchange or admin of energy (non-hazardous)
- Class IIb: Potentially hazardous energy levels
Rule 10 - Active diagnostic devices:
- Class IIa: Supply energy for imaging, monitoring
- Class IIb: Monitor vital physiological parameters
Rule 11 - Software:
- Class IIa: Information for diagnostic/therapeutic decisions (non-serious)
- Class IIb: Decisions that could cause death/irreversible deterioration
- Class III: Decisions with immediate risk to life
- See MDCG 2019-11 for detailed algorithm
Rule 12 - Active devices administering substances:
- Class IIa: Non-hazardous manner
- Class IIb: Potentially hazardous manner
Rule 13 - Other active devices:
- Class I: All other active devices
Special Rules (Rules 14-22)
Rule 14 - Contraception/STI prevention:
- Class IIb: Contraceptive devices
- Class III: Implantable contraceptives
Rule 15 - Disinfection/sterilization:
- Class IIa: Disinfection of devices
- Class IIb: Disinfection of invasive devices
Rule 16 - X-ray diagnostic recording:
- Class IIa: Recording media for x-ray
Rule 17 - Devices with nanomaterials:
- Class III: High internal exposure potential
- Class IIb: Medium exposure
- Class IIa: Low exposure
Rule 18 - Blood/plasma derivatives:
- Class III: Utilizing blood derivatives
Rule 19 - Drug delivery systems:
- Class III: Integral drug administration
Rule 20 - Breath analyzers for anesthesia:
- Class IIb: Breath analyzers
Rule 21 - Medicinal substance devices:
- Class III: Incorporating medicinal substances
Rule 22 - Closed-loop therapeutic systems:
- Class III: Closed-loop systems
Software Classification
MDCG 2019-11 Decision Algorithm
Execute software classification:
- Determine if software qualifies as medical device
- Identify significance of information to healthcare decision
- Assess healthcare situation or patient condition
- Apply rule 11 based on severity
- Validation: Classification rationale documented with MDCG reference
Software Classification Matrix
| Information Significance |
Situation/Condition |
Class |
| Informs clinical management |
Non-serious |
IIa |
| Informs clinical management |
Serious |
IIb |
| Informs clinical management |
Critical |
III |
| Drives clinical management |
Non-serious |
IIa |
| Drives clinical management |
Serious |
IIb |
| Drives clinical management |
Critical |
III |
| Treats or diagnoses |
Non-serious |
IIa |
| Treats or diagnoses |
Serious |
IIb |
| Treats or diagnoses |
Critical |
III |
Software Examples
| Software Type |
Class |
Rationale |
| Patient record viewing |
Not MD |
Administrative, not clinical |
| Medication reminder app |
Class I |
General wellness |
| Blood glucose monitor app |
Class IIa |
Informs non-serious decisions |
| Sepsis detection algorithm |
Class IIb |
Informs serious condition |
| AI tumor detection |
Class III |
Diagnoses critical condition |
| Closed-loop insulin delivery |
Class III |
Treats critical condition |
Classification Examples
Example 1: Surgical Suture (Absorbable)
Device: Absorbable suture for internal wound closure
Analysis:
- Invasiveness: Surgically invasive
- Duration: Long-term (absorbed over > 30 days)
- System: General tissue (not CNS, not cardiac)
- Rule Applied: Rule 8 (implantable, long-term)
Classification: Class IIb
Rationale: Implantable device > 30 days, general tissue
Conformity Route: Annex IX (Type examination) + Annex XI
Example 2: Blood Pressure Monitor
Device: Home blood pressure monitoring device
Analysis:
- Active: Yes (electronic measurement)
- Function: Monitoring vital physiological parameter
- Risk: Non-immediate (home use, not ICU)
- Rule Applied: Rule 10 (active diagnostic)
Classification: Class IIa
Rationale: Monitors vital parameter, non-critical setting
Conformity Route: Annex IX or XI (QMS + product verification)
Example 3: Hip Implant
Device: Total hip replacement prosthesis
Analysis:
- Invasiveness: Surgically invasive, implantable
- Duration: Long-term (permanent)
- System: Musculoskeletal
- Rule Applied: Rule 8 (implantable, long-term)
Classification: Class III
Rationale: Implantable > 30 days in direct contact with bone
Conformity Route: Annex IX + Annex X (full QMS + type examination)
Example 4: Diagnostic Software (AI)
Device: AI-based chest X-ray analysis for pneumonia detection
Analysis:
- Software: Qualifies as medical device (clinical decision)
- Information: Diagnoses condition
- Condition: Serious (pneumonia can be life-threatening)
- Rule Applied: Rule 11 + MDCG 2019-11
Classification: Class IIb
Rationale: Software diagnosing serious condition
Conformity Route: Annex IX or Annex XI
Conformity Assessment Routes
By Device Class
| Class |
Conformity Route |
NB Involvement |
| I |
Annex II (self-declaration) |
None |
| I (sterile/measuring) |
Annex II + IX/XI |
Sterile/measuring aspects |
| IIa |
Annex II + IX or XI |
Product verification or QMS |
| IIb |
Annex IX + X or Annex X + XI |
Type exam + QMS or production |
| III |
Annex IX + X |
Full QMS + type examination |
Annex Reference
| Annex |
Content |
Purpose |
| II |
Technical documentation |
Required for all classes |
| III |
Technical documentation (additions) |
Class III additions |
| IX |
Conformity assessment (QMS) |
Quality management route |
| X |
Type examination |
Product design examination |
| XI |
Product verification |
Production quality checks |
Decision Workflow
Select conformity route:
- Determine device classification (Rules 1-22)
- Identify applicable annexes for class
- Evaluate QMS maturity (Annex IX capability)
- Consider production volume (batch vs. mass)
- Assess Notified Body capacity and timeline
- Select optimal conformity assessment route
- Validation: Route confirmed with Notified Body consultation
Technical Documentation Templates
MDR Annex II and III technical file structure and content requirements.
Table of Contents
Technical Documentation Overview
Documentation Hierarchy
TECHNICAL DOCUMENTATION
├── Device Description and Specification
├── Information Supplied by Manufacturer
├── Design and Manufacturing Information
├── General Safety and Performance Requirements
├── Benefit-Risk Analysis
├── Product Verification and Validation
├── Clinical Evaluation Report
└── Post-Market Surveillance Documentation
Documentation by Phase
| Phase |
Required Documents |
| Design Input |
User needs, design requirements, regulatory requirements |
| Design Development |
Design specifications, drawings, BOM, software docs |
| Verification |
Test protocols, test reports, design review records |
| Validation |
Clinical data, usability data, biocompatibility |
| Transfer |
Manufacturing specs, process validations |
| Post-Market |
PMS plan, PMCF plan, vigilance procedures |
Annex II Requirements
Section 1: Device Description and Specification
1.1 Device Identification
DEVICE IDENTIFICATION
├── Trade name(s)
├── General description of the device
├── Basic UDI-DI
├── Device identifier codes (internal + regulatory)
├── Intended purpose statement
├── Indications for use
├── Contraindications
├── Target population (patient, user)
├── Medical conditions intended to diagnose/treat
└── Principles of operation
1.2 Device Variants and Accessories
| Element |
Description |
| Variant listing |
All variants with identifiers |
| Configuration differences |
Technical differences by variant |
| Accessories |
Separate devices used together |
| Spare parts |
Replaceable components |
1.3 Reference to Previous Generations
- Previous generation device identification
- Key modifications summary
- Clinical experience from prior device
- Justification for changes
Section 2: Information Supplied by Manufacturer
2.1 Label Requirements
Mandatory label elements per Article 13:
2.2 Instructions for Use
IFU structure:
INSTRUCTIONS FOR USE
├── 1. Device Description
│ ├── Intended purpose
│ ├── Indications and contraindications
│ └── Principle of operation
├── 2. Warnings and Precautions
│ ├── Contraindicated uses
│ ├── Potential complications
│ └── Drug/device interactions
├── 3. User Instructions
│ ├── Unpacking and inspection
│ ├── Setup/installation
│ ├── Operating procedures
│ └── Cleaning/maintenance
├── 4. Technical Specifications
│ ├── Physical characteristics
│ ├── Performance characteristics
│ └── Environmental limits
├── 5. Troubleshooting
│ ├── Error codes/messages
│ └── Corrective actions
└── 6. Symbols Glossary
Section 3: Design and Manufacturing Information
3.1 Design Process Documentation
| Document |
Purpose |
| Design input |
User needs, regulatory requirements |
| Design output |
Specifications, drawings, software |
| Design review |
Review records at key milestones |
| Design verification |
Test protocols and results |
| Design validation |
Clinical/usability evidence |
| Design transfer |
Manufacturing readiness |
| Design changes |
Change control records |
3.2 Manufacturing Process Description
MANUFACTURING DOCUMENTATION
├── Process flow diagram
├── Manufacturing specifications
├── Facility and equipment qualification
├── Process validation protocols/reports
├── Environmental monitoring
├── Personnel training records
├── In-process controls
├── Final inspection/testing
├── Sterilization validation (if applicable)
└── Packaging validation
3.3 Supplier and Subcontractor Information
- Approved supplier list
- Supplier qualification records
- Critical component specifications
- Incoming inspection procedures
- Supplier audit records
Section 4: General Safety and Performance Requirements
GSPR Compliance Checklist
| GSPR |
Requirement |
Evidence |
| 1 |
Safe design for intended use |
Risk management file |
| 2 |
Risk acceptable when weighed against benefits |
Benefit-risk analysis |
| 3 |
State of the art design |
Literature review, standards |
| 4 |
No compromise of clinical condition |
Clinical evaluation |
| 5 |
Transport and storage conditions |
Shelf life testing |
| 6 |
Acceptable undesirable effects |
Risk-benefit analysis |
| 7 |
CE marking conformity |
Declaration of conformity |
| ... |
Continue for all applicable GSPRs |
|
GSPR Matrix Template
| GSPR # |
Requirement Summary |
Applicable? |
Evidence Document |
Status |
| 10.1 |
Chemical properties |
Yes/No/NA |
Biocompatibility report |
Complete |
| 10.2 |
Infection risk |
Yes/No/NA |
Sterilization validation |
Complete |
| 10.3 |
Substances with carcinogenic risk |
Yes/No/NA |
Material specification |
Complete |
Section 5: Benefit-Risk Analysis
Benefit-Risk Documentation
BENEFIT-RISK ANALYSIS
├── 1. Intended Benefits
│ ├── Direct therapeutic benefits
│ ├── Diagnostic accuracy improvements
│ └── Patient outcome benefits
├── 2. Known Risks
│ ├── Identified hazards (from risk analysis)
│ ├── Risk control measures implemented
│ └── Residual risks
├── 3. Benefit-Risk Determination
│ ├── Qualitative analysis
│ ├── Quantitative analysis (if available)
│ └── Comparison to alternatives
└── 4. Conclusion
├── Acceptability statement
└── Justification for residual risks
Section 6: Product Verification and Validation
6.1 Verification Testing
| Test Category |
Standards |
Documentation |
| Electrical safety |
IEC 60601-1 |
Test protocol + report |
| EMC |
IEC 60601-1-2 |
EMC test report |
| Biocompatibility |
ISO 10993 series |
Biocompatibility evaluation |
| Software |
IEC 62304 |
Software verification report |
| Sterilization |
ISO 11135/11137 |
Sterility assurance |
| Packaging |
ISO 11607 |
Packaging validation |
| Shelf life |
Accelerated aging |
Stability study report |
| Usability |
IEC 62366-1 |
Usability engineering file |
6.2 Validation Evidence
- Clinical investigation data
- Literature-based clinical evidence
- Simulated use testing
- User feedback/complaint analysis
- Post-market surveillance data
Annex III Additions
Class III Specific Requirements
Additional documentation for Class III devices:
Implant-Specific Requirements
- Implant card information
- Patient information leaflet
- Device tracking procedures
- Explant analysis capability
Drug-Device Combination
- Drug substance specification
- Drug compatibility testing
- Combined product assessment
- Pharmacovigilance interface
Document Templates
Design History File Index
DESIGN HISTORY FILE (DHF)
Document ID: DHF-[Product]-[Rev]
1. DESIGN INPUT
1.1 User Requirements Specification (URS)
1.2 Regulatory Requirements Matrix
1.3 Design Input Review Record
2. DESIGN OUTPUT
2.1 Product Specification
2.2 Engineering Drawings
2.3 Bill of Materials
2.4 Software Documentation
3. DESIGN VERIFICATION
3.1 Verification Test Plan
3.2 Verification Test Reports
3.3 Traceability Matrix
4. DESIGN VALIDATION
4.1 Clinical Evaluation Report
4.2 Usability Engineering File
4.3 Biocompatibility Evaluation
5. DESIGN TRANSFER
5.1 Manufacturing Procedures
5.2 Process Validation Reports
5.3 Supplier Qualification
6. DESIGN REVIEWS
6.1 Design Review Records
6.2 Risk Management Review
6.3 Final Design Release
Declaration of Conformity Template
EU DECLARATION OF CONFORMITY
We, [Manufacturer Name]
Address: [Full address]
declare under our sole responsibility that the device:
Device name: [Trade name]
Device description: [Description]
Basic UDI-DI: [UDI-DI]
Classification: [Class I/IIa/IIb/III]
is in conformity with the provisions of:
- Regulation (EU) 2017/745
Applicable standards:
- [List harmonized standards]
Notified Body: [NB name and number] (if applicable)
Certificate number: [Certificate number]
Place and date: [Location, Date]
Signature: [Authorized signatory]
Name and function: [Name, Title]
Notified Body Expectations
Common NB Findings
| Finding Area |
Common Issue |
Prevention |
| GSPR matrix |
Incomplete, no evidence links |
Complete matrix with references |
| Risk management |
Not integrated with design |
Update throughout development |
| Clinical evaluation |
Insufficient literature search |
Systematic search with PICO |
| IFU |
Missing warnings |
Risk-based IFU content |
| Traceability |
Design to requirements gaps |
Maintain traceability matrix |
Pre-Submission Checklist
Before Notified Body submission:
#!/usr/bin/env python3
"""
MDR Gap Analyzer - EU MDR 2017/745 Compliance Gap Assessment Tool
Analyzes device classification, identifies documentation gaps, and generates
compliance roadmap for EU MDR transition.
Usage:
python mdr_gap_analyzer.py --device "Device Name" --class IIa
python mdr_gap_analyzer.py --device "Device Name" --class III --output json
python mdr_gap_analyzer.py --interactive
"""
import argparse
import json
import sys
from dataclasses import dataclass, field, asdict
from datetime import datetime
from typing import List, Dict, Optional
from enum import Enum
class DeviceClass(Enum):
I = "I"
I_STERILE = "Is"
I_MEASURING = "Im"
IIA = "IIa"
IIB = "IIb"
III = "III"
class GapStatus(Enum):
NOT_STARTED = "Not Started"
IN_PROGRESS = "In Progress"
COMPLETE = "Complete"
NOT_APPLICABLE = "N/A"
@dataclass
class GapItem:
requirement: str
category: str
description: str
status: GapStatus = GapStatus.NOT_STARTED
priority: str = "Medium"
evidence_needed: List[str] = field(default_factory=list)
notes: str = ""
@dataclass
class GapAnalysisResult:
device_name: str
device_class: str
analysis_date: str
total_requirements: int
gaps_identified: int
completion_percentage: float
gaps: List[Dict]
recommendations: List[str]
critical_gaps: List[str]
class MDRGapAnalyzer:
"""Analyzer for EU MDR 2017/745 compliance gaps."""
# MDR Requirements by category
REQUIREMENTS = {
"technical_documentation": [
GapItem(
requirement="Annex II - Device Description",
category="Technical Documentation",
description="Complete device description including variants, accessories, intended purpose",
priority="High",
evidence_needed=["Device specification", "Intended purpose statement", "Variant listing"]
),
GapItem(
requirement="Annex II - Information Supplied",
category="Technical Documentation",
description="Label and IFU meeting Article 13 requirements",
priority="High",
evidence_needed=["Label artwork", "Instructions for use", "Symbol glossary"]
),
GapItem(
requirement="Annex II - Design and Manufacturing",
category="Technical Documentation",
description="Design history file and manufacturing documentation",
priority="High",
evidence_needed=["Design history file", "Process flow diagram", "Validation reports"]
),
GapItem(
requirement="Annex II - GSPR Compliance",
category="Technical Documentation",
description="General Safety and Performance Requirements checklist",
priority="Critical",
evidence_needed=["GSPR matrix", "Standard compliance evidence", "Risk management file"]
),
],
"clinical_evaluation": [
GapItem(
requirement="Annex XIV Part A - Clinical Evaluation",
category="Clinical Evaluation",
description="Clinical evaluation report with systematic literature review",
priority="Critical",
evidence_needed=["Clinical evaluation report", "Literature search protocol", "Data appraisal"]
),
GapItem(
requirement="Annex XIV Part B - PMCF",
category="Clinical Evaluation",
description="Post-market clinical follow-up plan and evaluation report",
priority="High",
evidence_needed=["PMCF plan", "PMCF evaluation report", "Residual risk assessment"]
),
GapItem(
requirement="Qualified Person for CER",
category="Clinical Evaluation",
description="Clinical evaluation by qualified evaluator per Annex XIV",
priority="High",
evidence_needed=["Evaluator CV", "Qualification evidence", "Signed CER"]
),
],
"risk_management": [
GapItem(
requirement="ISO 14971 Risk Management",
category="Risk Management",
description="Complete risk management file per ISO 14971:2019",
priority="Critical",
evidence_needed=["Risk management plan", "Risk analysis", "Risk evaluation", "Risk control"]
),
GapItem(
requirement="Benefit-Risk Analysis",
category="Risk Management",
description="Documented benefit-risk determination",
priority="High",
evidence_needed=["Benefit-risk analysis document", "Residual risk acceptability"]
),
],
"quality_management": [
GapItem(
requirement="ISO 13485 QMS",
category="Quality Management",
description="Quality management system conforming to ISO 13485:2016",
priority="Critical",
evidence_needed=["QMS manual", "Process documentation", "Internal audit records"]
),
GapItem(
requirement="Post-Market Surveillance",
category="Quality Management",
description="PMS system per Article 83-86",
priority="High",
evidence_needed=["PMS plan", "PSUR (if required)", "Vigilance procedures"]
),
],
"udi_eudamed": [
GapItem(
requirement="UDI System",
category="UDI/EUDAMED",
description="Unique Device Identification per Article 27",
priority="High",
evidence_needed=["UDI-DI assignment", "Label with UDI carrier", "GUDID/EUDAMED registration"]
),
GapItem(
requirement="EUDAMED Registration",
category="UDI/EUDAMED",
description="Actor, device, and certificate registration in EUDAMED",
priority="Medium",
evidence_needed=["Actor registration", "Device registration", "Certificate upload"]
),
],
"notified_body": [
GapItem(
requirement="Notified Body Selection",
category="Notified Body",
description="Selection and engagement of MDR-designated Notified Body",
priority="Critical",
evidence_needed=["NB selection criteria", "NB engagement letter", "Audit schedule"]
),
GapItem(
requirement="Conformity Assessment",
category="Notified Body",
description="Completion of appropriate conformity assessment procedure",
priority="Critical",
evidence_needed=["Application dossier", "Technical documentation submission", "Certificate"]
),
],
}
# Class-specific requirements
CLASS_REQUIREMENTS = {
DeviceClass.III: [
GapItem(
requirement="Annex III - Class III Additions",
category="Technical Documentation",
description="Additional documentation for Class III devices",
priority="Critical",
evidence_needed=["Implant card", "Patient information", "Device tracking"]
),
GapItem(
requirement="Clinical Investigation",
category="Clinical Evaluation",
description="Clinical investigation per Article 61 (unless equivalent device)",
priority="Critical",
evidence_needed=["Clinical investigation plan", "Ethics approval", "Clinical study report"]
),
],
DeviceClass.IIB: [
GapItem(
requirement="Implantable Device Documentation",
category="Technical Documentation",
description="Additional requirements for implantable Class IIb devices",
priority="High",
evidence_needed=["Implant card (if implantable)", "Long-term safety data"]
),
],
}
def __init__(self, device_name: str, device_class: DeviceClass):
self.device_name = device_name
self.device_class = device_class
self.gaps: List[GapItem] = []
self._build_requirements_list()
def _build_requirements_list(self):
"""Build complete requirements list based on device class."""
# Add all base requirements
for category_gaps in self.REQUIREMENTS.values():
for gap in category_gaps:
self.gaps.append(GapItem(
requirement=gap.requirement,
category=gap.category,
description=gap.description,
priority=gap.priority,
evidence_needed=gap.evidence_needed.copy()
))
# Add class-specific requirements
if self.device_class in self.CLASS_REQUIREMENTS:
for gap in self.CLASS_REQUIREMENTS[self.device_class]:
self.gaps.append(GapItem(
requirement=gap.requirement,
category=gap.category,
description=gap.description,
priority=gap.priority,
evidence_needed=gap.evidence_needed.copy()
))
# Class I self-certification: NB not required
if self.device_class == DeviceClass.I:
for gap in self.gaps:
if gap.category == "Notified Body":
gap.status = GapStatus.NOT_APPLICABLE
def update_gap_status(self, requirement: str, status: GapStatus, notes: str = ""):
"""Update status of a specific gap."""
for gap in self.gaps:
if gap.requirement == requirement:
gap.status = status
gap.notes = notes
break
def analyze(self) -> GapAnalysisResult:
"""Perform gap analysis and generate results."""
applicable_gaps = [g for g in self.gaps if g.status != GapStatus.NOT_APPLICABLE]
complete_gaps = [g for g in applicable_gaps if g.status == GapStatus.COMPLETE]
completion = (len(complete_gaps) / len(applicable_gaps) * 100) if applicable_gaps else 0
# Identify critical gaps
critical_gaps = [
g.requirement for g in applicable_gaps
if g.priority == "Critical" and g.status != GapStatus.COMPLETE
]
# Generate recommendations
recommendations = self._generate_recommendations()
return GapAnalysisResult(
device_name=self.device_name,
device_class=self.device_class.value,
analysis_date=datetime.now().isoformat(),
total_requirements=len(applicable_gaps),
gaps_identified=len(applicable_gaps) - len(complete_gaps),
completion_percentage=round(completion, 1),
gaps=[{
"requirement": g.requirement,
"category": g.category,
"status": g.status.value,
"priority": g.priority,
"evidence_needed": g.evidence_needed
} for g in applicable_gaps],
recommendations=recommendations,
critical_gaps=critical_gaps
)
def _generate_recommendations(self) -> List[str]:
"""Generate prioritized recommendations."""
recommendations = []
# Check for critical gaps
critical_incomplete = [
g for g in self.gaps
if g.priority == "Critical" and g.status not in [GapStatus.COMPLETE, GapStatus.NOT_APPLICABLE]
]
if critical_incomplete:
recommendations.append(
f"CRITICAL: {len(critical_incomplete)} critical requirements not complete. "
"Address immediately to proceed with conformity assessment."
)
# Check clinical evaluation
cer_gap = next((g for g in self.gaps if "Clinical Evaluation" in g.requirement), None)
if cer_gap and cer_gap.status != GapStatus.COMPLETE:
recommendations.append(
"Clinical Evaluation Report (CER) is incomplete. "
"This is required before Notified Body submission."
)
# Check for Class III specific
if self.device_class == DeviceClass.III:
ci_gap = next((g for g in self.gaps if "Clinical Investigation" in g.requirement), None)
if ci_gap and ci_gap.status != GapStatus.COMPLETE:
recommendations.append(
"Class III device requires clinical investigation per Article 61 "
"unless equivalence can be demonstrated."
)
# Check EUDAMED
udi_gap = next((g for g in self.gaps if "UDI System" in g.requirement), None)
if udi_gap and udi_gap.status != GapStatus.COMPLETE:
recommendations.append(
"Implement UDI system and plan for EUDAMED registration. "
"Required for placing device on EU market."
)
return recommendations
def format_text_output(result: GapAnalysisResult) -> str:
"""Format analysis result as text."""
lines = [
"=" * 60,
"MDR 2017/745 GAP ANALYSIS REPORT",
"=" * 60,
f"Device: {result.device_name}",
f"Class: {result.device_class}",
f"Date: {result.analysis_date[:10]}",
"",
"-" * 60,
"SUMMARY",
"-" * 60,
f"Total Requirements: {result.total_requirements}",
f"Gaps Identified: {result.gaps_identified}",
f"Completion: {result.completion_percentage}%",
"",
]
if result.critical_gaps:
lines.extend([
"-" * 60,
"CRITICAL GAPS (Address Immediately)",
"-" * 60,
])
for gap in result.critical_gaps:
lines.append(f" * {gap}")
lines.append("")
lines.extend([
"-" * 60,
"GAP DETAILS BY CATEGORY",
"-" * 60,
])
# Group by category
categories = {}
for gap in result.gaps:
cat = gap["category"]
if cat not in categories:
categories[cat] = []
categories[cat].append(gap)
for category, gaps in categories.items():
lines.append(f"\n{category}:")
for gap in gaps:
status_mark = "✓" if gap["status"] == "Complete" else "○"
lines.append(f" [{status_mark}] {gap['requirement']} ({gap['priority']})")
lines.extend([
"",
"-" * 60,
"RECOMMENDATIONS",
"-" * 60,
])
for i, rec in enumerate(result.recommendations, 1):
lines.append(f"{i}. {rec}")
lines.append("=" * 60)
return "\n".join(lines)
def interactive_mode():
"""Run interactive gap analysis session."""
print("=" * 60)
print("MDR 2017/745 Gap Analysis - Interactive Mode")
print("=" * 60)
device_name = input("\nDevice name: ").strip()
if not device_name:
device_name = "Unnamed Device"
print("\nDevice classes:")
print(" 1. Class I")
print(" 2. Class I (sterile)")
print(" 3. Class I (measuring)")
print(" 4. Class IIa")
print(" 5. Class IIb")
print(" 6. Class III")
class_map = {
"1": DeviceClass.I,
"2": DeviceClass.I_STERILE,
"3": DeviceClass.I_MEASURING,
"4": DeviceClass.IIA,
"5": DeviceClass.IIB,
"6": DeviceClass.III,
}
class_choice = input("\nSelect class (1-6): ").strip()
device_class = class_map.get(class_choice, DeviceClass.IIA)
analyzer = MDRGapAnalyzer(device_name, device_class)
print("\nFor each requirement, enter status:")
print(" c = Complete")
print(" i = In Progress")
print(" n = Not Started (default)")
print(" x = Not Applicable")
print(" Enter = Skip (Not Started)")
print("")
status_map = {
"c": GapStatus.COMPLETE,
"i": GapStatus.IN_PROGRESS,
"n": GapStatus.NOT_STARTED,
"x": GapStatus.NOT_APPLICABLE,
}
for gap in analyzer.gaps:
if gap.status == GapStatus.NOT_APPLICABLE:
continue
status_input = input(f"{gap.requirement} [c/i/n/x]: ").strip().lower()
if status_input in status_map:
gap.status = status_map[status_input]
result = analyzer.analyze()
print("\n" + format_text_output(result))
def main():
parser = argparse.ArgumentParser(
description="EU MDR 2017/745 Gap Analysis Tool"
)
parser.add_argument("--device", type=str, help="Device name")
parser.add_argument(
"--class",
dest="device_class",
choices=["I", "Is", "Im", "IIa", "IIb", "III"],
help="Device classification"
)
parser.add_argument(
"--output",
choices=["text", "json"],
default="text",
help="Output format"
)
parser.add_argument(
"--interactive",
action="store_true",
help="Run in interactive mode"
)
args = parser.parse_args()
if args.interactive:
interactive_mode()
return
if not args.device or not args.device_class:
parser.print_help()
print("\nError: --device and --class required (or use --interactive)")
sys.exit(1)
class_map = {
"I": DeviceClass.I,
"Is": DeviceClass.I_STERILE,
"Im": DeviceClass.I_MEASURING,
"IIa": DeviceClass.IIA,
"IIb": DeviceClass.IIB,
"III": DeviceClass.III,
}
analyzer = MDRGapAnalyzer(args.device, class_map[args.device_class])
result = analyzer.analyze()
if args.output == "json":
print(json.dumps(asdict(result), indent=2))
else:
print(format_text_output(result))
if __name__ == "__main__":
main()