
Quality Manager Qmr
- 119 installs
- 451 repo stars
- Updated July 21, 2026
- borghei/claude-skills
Lead quality management reviews, CAPA tracking, audit readiness, and documented evidence for regulated or enterprise software release gates.
About
Embodies a quality manager for QMR workflows in regulated or enterprise software: prepares review packets, traces requirements to tests, drives CAPA closure, enforces documentation standards, and advises on release gates so audits pass and defects are controlled.
- QMR meeting structure and minutes
- CAPA and defect traceability
- Risk-based test evidence mapping
- Audit trail and documentation standards
- Release gate criteria and sign-off
Quality Manager Qmr by the numbers
- 119 all-time installs (skills.sh)
- Ranked #423 of 1,352 Code Review & Quality skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/borghei/claude-skills --skill quality-manager-qmrAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 119 |
|---|---|
| repo stars | ★ 451 |
| Last updated | July 21, 2026 |
| Repository | borghei/claude-skills ↗ |
What it does
Lead quality management reviews, CAPA tracking, audit readiness, and documented evidence for regulated or enterprise software release gates.
Files
Senior Quality Manager Responsible Person (QMR)
Quality system accountability, management review leadership, and regulatory compliance oversight per ISO 13485 Clause 5.5.2 requirements.
---
QMR Responsibilities
ISO 13485 Clause 5.5.2 Requirements
| Responsibility | Scope | Evidence |
|---|---|---|
| QMS effectiveness | Monitor system performance and suitability | Management review records |
| Reporting to management | Communicate QMS performance to top management | Quality reports, dashboards |
| Quality awareness | Promote regulatory and quality requirements | Training records, communications |
| Liaison with external parties | Interface with regulators, Notified Bodies | Meeting records, correspondence |
QMR Accountability Matrix
| Domain | Accountable For | Reports To | Frequency |
|---|---|---|---|
| Quality Policy | Policy adequacy and communication | CEO/Board | Annual review |
| Quality Objectives | Objective achievement and relevance | Executive Team | Quarterly |
| QMS Performance | System effectiveness metrics | Management | Monthly |
| Regulatory Compliance | Compliance status across jurisdictions | CEO | Quarterly |
| Audit Program | Audit schedule completion, findings closure | Management | Per audit |
| CAPA Oversight | CAPA effectiveness and timeliness | Executive Team | Monthly |
Authority Boundaries
| Decision Type | QMR Authority | Escalation Required |
|---|---|---|
| Process changes within QMS | Approve with owner | Major process redesign |
| Document approval | Final QA approval | Policy-level changes |
| Nonconformity disposition | Accept/reject with MRB | Product release decisions |
| Supplier quality actions | Quality holds, audits | Supplier termination |
| Audit scheduling | Adjust internal audit schedule | External audit timing |
| Training requirements | Define quality training needs | Organization-wide training budget |
---
Management Review Workflow
The agent conducts management reviews per ISO 13485 Clause 5.6 requirements.
Workflow: Prepare and Execute Management Review
1. Schedule management review -- minimum annually per ISO 13485; quarterly or semi-annual cadence recommended for active QMS. 2. Notify required attendees minimum 2 weeks prior -- CEO/GM, department heads, RA Manager, Production Manager, Customer Quality lead. 3. Collect required inputs from process owners:
- Audit results (internal and external)
- Customer feedback (complaints, satisfaction, returns)
- Process performance and product conformity
- CAPA status and effectiveness
- Previous review action items
- Changes affecting QMS (regulatory, organizational)
- Recommendations for improvement
4. Compile input summary report with trend analysis covering the review period. 5. Prepare presentation materials with supporting data and visualizations. 6. Distribute agenda and input package 1 week prior to the meeting. 7. Conduct review meeting per agenda -- ensure all required inputs are discussed. 8. Validation checkpoint: All ISO 13485 Clause 5.6.2 inputs reviewed; decisions documented with owners and due dates; outputs satisfy Clause 5.6.3 requirements.
Example: Management Review Input Summary
MANAGEMENT REVIEW INPUT SUMMARY
Review Period: 2025-Q3 to 2025-Q4
Review Date: 2026-01-20
Prepared By: J. Mueller, QMR
1. AUDIT RESULTS
Internal audits completed: 4 of 4 planned
External audits completed: 1 (Notified Body surveillance)
Total findings: 0 major / 3 minor
Open findings: 1 (ISMS-2025-012, due 2026-02-15)
Trend: Minor findings decreased 40% YoY
2. CUSTOMER FEEDBACK
Complaints received: 12
Complaint rate: 0.08 per 1000 units (target: <0.1)
Customer satisfaction score: 4.2/5.0 (target: >4.0)
Returns: 3 units (0.02%)
Top issues: Labeling clarity (5), packaging damage (3)
3. CAPA STATUS
Open CAPAs: 6
Overdue: 0
Effectiveness rate: 91% (target: >85%)
Average age: 42 days
4. PREVIOUS ACTIONS
Total from last review: 8
Completed: 7 | In progress: 1 | Overdue: 0
RECOMMENDED OUTPUTS:
- Approve updated quality objectives for 2026
- Allocate 0.5 FTE for labeling improvement project
- Schedule supplier re-qualification for packaging vendorManagement Review Output Requirements
| Output | Documentation | Owner |
|---|---|---|
| QMS improvement decisions | Action items with due dates | Assigned per item |
| Resource needs | Resource plan updates | Department heads |
| Quality objectives changes | Updated objectives document | QMR |
| Process improvement needs | Improvement project charters | Process owners |
See: references/management-review-guide.md
---
Quality KPI Management Workflow
The agent establishes, monitors, and reports quality performance indicators.
Workflow: Establish Quality KPI Framework
1. Identify quality objectives requiring measurement -- align each KPI to a specific objective. 2. Select KPIs per objective using SMART criteria: Specific (clear calculation), Measurable (quantifiable), Actionable (team can influence), Relevant (aligned to objectives), Time-bound (defined frequency). 3. Define target values based on baseline data and industry benchmarks. 4. Assign data source and collection responsibility for each KPI. 5. Establish reporting frequency per KPI category (see table below). 6. Configure dashboard displays and trend analysis views. 7. Define escalation thresholds and alert triggers for each KPI. 8. Validation checkpoint: Each KPI has an assigned owner, measurable target, identified data source, and documented escalation criteria.
Core Quality KPIs
| Category | KPI | Target | Calculation |
|---|---|---|---|
| Process | First Pass Yield | >95% | (Units passed first time / Total units) x 100 |
| Process | Nonconformance Rate | <1% | (NC count / Total units) x 100 |
| CAPA | CAPA Closure Rate | >90% | (On-time closures / Due closures) x 100 |
| CAPA | CAPA Effectiveness | >85% | (Effective CAPAs / Verified CAPAs) x 100 |
| Audit | Finding Closure Rate | >90% | (On-time closures / Due closures) x 100 |
| Audit | Repeat Finding Rate | <10% | (Repeat findings / Total findings) x 100 |
| Customer | Complaint Rate | <0.1% | (Complaints / Units sold) x 100 |
| Customer | Satisfaction Score | >4.0/5.0 | Average of survey scores |
KPI Review Frequency
| KPI Type | Review Frequency | Trend Period | Audience |
|---|---|---|---|
| Safety/Compliance | Daily monitoring | Weekly | Operations |
| Production Quality | Weekly | Monthly | Department heads |
| Customer Quality | Monthly | Quarterly | Executive team |
| Strategic Quality | Quarterly | Annual | Board/C-suite |
Performance Response Matrix
| Performance Level | Status | Action Required |
|---|---|---|
| >110% of target | Exceeding | Consider raising target |
| 100-110% of target | Meeting | Maintain current approach |
| 90-100% of target | Approaching | Monitor closely |
| 80-90% of target | Below | Improvement plan required |
| <80% of target | Critical | Immediate intervention |
See: references/quality-kpi-framework.md
---
Quality Objectives Workflow
The agent establishes and maintains measurable quality objectives per ISO 13485 Clause 5.4.1.
Workflow: Annual Quality Objectives Setting
1. Review prior year objective achievement -- document status of each objective. 2. Analyze quality performance trends and gaps from KPI data. 3. Align with organizational strategic plan -- map objectives to business priorities. 4. Draft objectives with measurable targets using the structure below. 5. Validate resource availability for achievement of each objective. 6. Obtain executive approval. 7. Communicate objectives organization-wide with supporting rationale. 8. Validation checkpoint: Each objective is measurable, has an assigned owner, a defined target, and a timeline.
Example: Quality Objective
QUALITY OBJECTIVE 2026-01
Objective Statement: Reduce customer complaint rate by 25% from
2025 baseline (0.10 per 1000 units to 0.075 per 1000 units)
Aligned to Policy Element: "Commitment to continuous product improvement"
Target: <0.075 complaints per 1000 units sold
Baseline: 0.10 complaints per 1000 units (2025 actual)
Owner: Director of Quality
Due Date: 2026-12-31
Success Criteria:
- Complaint rate <0.075 per 1000 units for 3 consecutive months
- Top 3 complaint categories reduced by 30%
Measurement Method: Monthly complaint tracking via QMS database
Reporting Frequency: Monthly to QMR, Quarterly to Executive Team
Supporting Initiatives:
- Labeling improvement project (Q1-Q2)
- Packaging vendor re-qualification (Q1)
- Enhanced incoming inspection for top complaint categories (Q2)
Resource Requirements:
- 0.5 FTE quality engineer for labeling project
- $15K budget for packaging testingObjective Categories
| Category | Example Objectives | Typical Targets |
|---|---|---|
| Customer Quality | Reduce complaint rate | <0.1% of units sold |
| Process Quality | Improve first pass yield | >96% |
| Compliance | Maintain certification | Zero major NCs |
| Efficiency | Reduce quality costs | <4% of revenue |
| Culture | Increase training completion | >98% on-time |
---
Quality Culture Assessment Workflow
The agent assesses and improves organizational quality culture.
Workflow: Annual Quality Culture Assessment
1. Design or select quality culture survey instrument covering leadership, ownership, communication, improvement, training, and problem-solving dimensions. 2. Define survey population -- all employees or statistically valid sample. 3. Communicate survey purpose and confidentiality assurances. 4. Administer survey with a 2-week response window. 5. Analyze results by department, role, and tenure -- identify patterns. 6. Identify strengths and top improvement areas (focus on bottom 3 dimension scores). 7. Develop action plan for culture gaps with owners and timelines. 8. Validation checkpoint: Response rate >60%; action plan addresses bottom 3 scores; results reported to management review.
Quality Culture Dimensions
| Dimension | Indicators | Assessment Method |
|---|---|---|
| Leadership commitment | Management visible support for quality | Survey, observation |
| Quality ownership | Employees feel responsible for quality | Survey |
| Communication | Quality information flows effectively | Survey, audit |
| Continuous improvement | Suggestions submitted and implemented | Metrics |
| Training and competence | Employees feel adequately trained | Survey, records |
| Problem solving | Issues addressed at root cause | CAPA analysis |
Culture Improvement Actions
| Gap Identified | Potential Actions |
|---|---|
| Low leadership visibility | Quality gemba walks, all-hands quality updates |
| Inadequate training | Competency-based training program |
| Poor communication | Quality newsletters, department huddles |
| Low reporting | Anonymous reporting system, no-blame culture |
| Lack of recognition | Quality award program, team celebrations |
---
Regulatory Compliance Oversight
The agent monitors and maintains regulatory compliance across jurisdictions.
Multi-Jurisdictional Compliance Matrix
| Jurisdiction | Regulation | Requirement | Status Tracking |
|---|---|---|---|
| EU | MDR 2017/745 | CE marking, Notified Body | Technical file, annual review |
| USA | 21 CFR 820 | FDA registration, QSR compliance | Annual registration, inspections |
| International | ISO 13485 | QMS certification | Surveillance audits |
| Germany | MPG/MPDG | National implementation | Competent authority filings |
Workflow: Compliance Monitoring
1. Maintain regulatory requirement register covering all applicable jurisdictions. 2. Subscribe to regulatory update services for each market. 3. Assess impact of regulatory changes monthly. 4. Update affected processes within 90 days of each change's effective date. 5. Verify training completion for all personnel affected by regulatory changes. 6. Document compliance status in management review inputs. 7. Maintain inspection readiness using the checklist below. 8. Validation checkpoint: All applicable requirements mapped; no expired registrations; inspection readiness confirmed.
Inspection Readiness Checklist
| Area | Ready | Action Needed |
|---|---|---|
| Document control system current | [ ] | |
| Training records complete | [ ] | |
| CAPA system current, no overdue items | [ ] | |
| Complaint files complete | [ ] | |
| Equipment calibration current | [ ] | |
| Supplier qualification files complete | [ ] | |
| Management review records available | [ ] | |
| Internal audit program current | [ ] |
---
Decision Frameworks
Escalation Decision Tree
Issue Identified
|
v
Is it a regulatory violation?
|
Yes-+-No
| |
v v
Escalate to Is it a safety issue?
Executive |
immediately Yes-+-No
| |
v v
Escalate to Does it affect
Safety Team multiple departments?
|
Yes-+-No
| |
v v
Escalate to Handle at
Executive department levelQuality Investment Prioritization
| Criteria | Weight | Score Method |
|---|---|---|
| Regulatory requirement | 30% | Required=10, Recommended=5, Optional=2 |
| Customer impact | 25% | Direct=10, Indirect=5, None=0 |
| Cost savings potential | 20% | >$100K=10, $50-100K=7, <$50K=3 |
| Implementation complexity | 15% | Simple=10, Moderate=5, Complex=2 |
| Strategic alignment | 10% | Core=10, Supporting=5, Peripheral=2 |
---
Tools and References
Scripts
| Tool | Purpose | Usage |
|---|---|---|
| management_review_tracker.py | Track review inputs, actions, metrics | python management_review_tracker.py --help |
# Track input collection status from process owners
python scripts/management_review_tracker.py --status inputs --period Q4-2025
# Monitor action item completion and aging
python scripts/management_review_tracker.py --status actions --overdue
# Generate metrics summary for upcoming review
python scripts/management_review_tracker.py --summary --format markdownReferences
| Document | Content |
|---|---|
| management-review-guide.md | ISO 13485 Clause 5.6 requirements, input/output templates, action tracking |
| quality-kpi-framework.md | KPI categories, targets, calculations, dashboard templates |
---
Related Skills
| Skill | Integration Point |
|---|---|
| quality-manager-qms-iso13485 | QMS process management |
| capa-officer | CAPA system oversight |
| qms-audit-expert | Internal audit program |
| quality-documentation-manager | Document control oversight |
---
Troubleshooting
| Problem | Likely Cause | Resolution |
|---|---|---|
| Management review tracker shows "Not Collected" for all inputs | Input data JSON is empty or incorrectly structured | Verify the JSON file contains inputs with topic, responsible, status, and data_period fields. Use --summary to check the expected structure. |
| Action items all showing as "Overdue" | Due dates in the data file are in the past with no completion dates | Update completed actions with completion_date and change status to Complete or Verified. For genuinely overdue items, escalate per the performance response matrix. |
| Metrics summary produces zeros for all KPIs | Metrics section missing from review data JSON | Add a metrics object with fields for complaint_rate, capa_open, capa_effectiveness, first_pass_yield, customer_satisfaction, and training_compliance. |
| Quality culture survey response rate below 60% | Survey not communicated effectively or confidentiality concerns | Re-communicate the survey purpose with explicit confidentiality assurances. Extend the response window. Consider anonymous submission to increase participation. |
| Quality objectives not measurable | Objectives written as aspirational statements rather than SMART criteria | Rewrite each objective with a quantifiable target, baseline, owner, timeline, and measurement method per the SMART format documented in this skill. |
| KPI dashboard shows conflicting trends | Data collected from multiple sources with different time periods | Standardize data collection periods across all KPI sources. Ensure all metrics use the same calendar quarter or review period boundaries. |
| Inspection readiness checklist incomplete | Multiple departments not providing status updates | Assign a readiness coordinator per department. Conduct weekly readiness stand-ups in the 30 days before an expected inspection. |
---
Success Criteria
- Management reviews conducted at planned intervals (minimum annually, recommended quarterly) with all ISO 13485 Clause 5.6.2 required inputs collected and analyzed
- Every management review produces documented outputs per Clause 5.6.3: QMS improvement decisions, resource needs, and quality objective updates, each with assigned owners and due dates
- Quality KPI framework covers all required categories (process, CAPA, audit, customer) with measurable targets and documented escalation thresholds
- Action item completion rate from management reviews exceeds 90% by due date, with no overdue high-priority items
- Quality culture assessment conducted annually with response rate exceeding 60%, and action plans addressing the bottom 3 dimension scores
- Regulatory compliance monitoring covers all applicable jurisdictions with no expired registrations or certifications
- Cost of quality tracked and reported quarterly, demonstrating prevention investment reducing failure costs over time
---
Scope & Limitations
In Scope:
- Management review preparation, execution, and output tracking per ISO 13485 Clause 5.6
- Quality KPI framework design, target setting, and performance monitoring
- Quality objective setting and tracking per Clause 5.4.1
- Quality culture assessment and improvement planning
- Multi-jurisdictional regulatory compliance monitoring
- Inspection readiness assessment and checklist management
- QMR accountability and authority framework
Out of Scope:
- Detailed CAPA management (use capa-officer for root cause analysis, implementation, and effectiveness verification)
- Internal audit program execution (use qms-audit-expert for audit planning, conduct, and finding classification)
- Document control operations (use quality-documentation-manager for numbering, approval workflows, and Part 11 compliance)
- Product-level quality engineering (process validation, statistical process control, Six Sigma methodologies)
- HR performance management or compensation decisions linked to quality objectives
- Financial budgeting or resource allocation decisions (the skill recommends resource needs but does not manage budgets)
---
Integration Points
| Skill | Integration |
|---|---|
| quality-manager-qms-iso13485 | QMS process management provides the operational foundation that the QMR oversees; QMS metrics feed into management review |
| capa-officer | CAPA status and effectiveness rates are required management review inputs; QMR oversees CAPA program performance |
| qms-audit-expert | Audit results (internal and external) are required management review inputs; audit finding closure rate is a core QMR KPI |
| quality-documentation-manager | Document control metrics (cycle time, overdue reviews) feed into management review; QMR ensures document system adequacy |
| regulatory-affairs-head | Regulatory changes affecting the QMS are a required management review input; RA and QMR coordinate compliance status reporting |
| risk-management-specialist | Risk management file reviews and post-market risk data inform management review decisions on product safety |
---
Tool Reference
management_review_tracker.py
Tracks management review inputs, action items, and generates review metrics reports.
| Flag | Required | Description |
|---|---|---|
--data | Yes (or --interactive) | Path to review data JSON file containing inputs, action items, and metrics for the review period |
--interactive | No | Launch interactive mode for guided data entry |
--output | No | Output format: json for structured output, omit for human-readable text |
--status | No | Filter view: inputs (show input collection status), actions (show action item status) |
--overdue | No | Show only overdue action items (use with --status actions) |
--period | No | Review period identifier (e.g., Q4-2025) to filter data |
--summary | No | Generate a metrics summary report for the current review period |
--format | No | Output format for summary: markdown for formatted text, omit for plain text |
Management Review Guide
ISO 13485 Clause 5.6 management review requirements, inputs, outputs, and action tracking.
---
Table of Contents
- Review Requirements
- Required Inputs
- Review Agenda
- Required Outputs
- Action Tracking
- Documentation Templates
---
Review Requirements
ISO 13485:2016 Clause 5.6
| Requirement | Specification |
|---|---|
| Frequency | Planned intervals (typically quarterly or semi-annually) |
| Participants | Top management involvement required |
| Documentation | Records must be maintained |
| Inputs | All required inputs must be reviewed |
| Outputs | Decisions and actions documented |
Review Schedule
| Review Type | Frequency | Focus | Participants |
|---|---|---|---|
| Full Management Review | Semi-annual or Annual | Complete QMS performance | CEO, QMR, all department heads |
| Quarterly Quality Review | Quarterly | Key metrics and actions | QMR, Quality team, affected managers |
| Monthly Quality Update | Monthly | Operational metrics | QMR, Quality team leads |
Planning Checklist
- [ ] Review date scheduled and communicated
- [ ] Previous review actions status updated
- [ ] All input data collected and analyzed
- [ ] Presentation/report prepared
- [ ] Attendee availability confirmed
- [ ] Meeting room and resources arranged
- [ ] Agenda distributed 1 week in advance
---
Required Inputs
ISO 13485 Required Input Topics
| Input | Source | Data Period | Responsible |
|---|---|---|---|
| Audit results | Internal and external audits | Since last review | QA Manager |
| Customer feedback | Complaints, surveys, returns | Since last review | Customer Quality |
| Process performance | Process metrics, yields | Since last review | Process owners |
| Product conformity | Inspection data, NCRs | Since last review | QC Manager |
| CAPA status | Open/closed CAPAs | Current status | CAPA Officer |
| Previous review actions | Action item tracker | Since last review | QMR |
| Changes to QMS | Regulatory, standard changes | Since last review | RA Manager |
| Recommendations | Improvement opportunities | Ongoing collection | All managers |
Input Data Collection Template
MANAGEMENT REVIEW INPUT SUMMARY
Review Period: [Start Date] to [End Date]
Prepared By: [Name]
Date Prepared: [Date]
1. AUDIT RESULTS
Internal Audits Completed: [Number]
External Audits Completed: [Number]
Major Findings: [Number] | Minor Findings: [Number]
Open Audit Actions: [Number]
Summary: [Brief narrative]
2. CUSTOMER FEEDBACK
Total Complaints: [Number]
Complaint Rate: [X per 1000 units]
Customer Satisfaction Score: [Score]
Top Complaint Categories:
- [Category 1]: [Count]
- [Category 2]: [Count]
Trend: [Improving/Stable/Declining]
3. PROCESS PERFORMANCE
| Process | Target | Actual | Status |
|---------|--------|--------|--------|
| [Process 1] | [Target] | [Actual] | [Met/Not Met] |
4. PRODUCT CONFORMITY
First Pass Yield: [%]
Nonconformance Rate: [%]
Reject/Scrap Cost: [$]
Top NC Categories:
- [Category 1]: [Count]
5. CAPA STATUS
Open CAPAs: [Number]
Overdue CAPAs: [Number]
Effectiveness Rate: [%]
Average Closure Time: [Days]
6. PREVIOUS ACTIONS
Total Actions from Last Review: [Number]
Completed: [Number] | In Progress: [Number] | Overdue: [Number]
7. QMS CHANGES
Regulatory Changes: [List]
Standard Updates: [List]
Internal Changes: [List]
8. RECOMMENDATIONS
[List improvement opportunities collected]Data Analysis Guidelines
| Input | Analysis Required | Red Flags |
|---|---|---|
| Audit results | Trend by area, repeat findings | Major NC in same area twice |
| Complaints | Pareto analysis, rate trending | Increasing rate, safety issues |
| Process performance | Control charts, capability | Out of control, Cpk <1.33 |
| Product conformity | Defect Pareto, yield trending | Declining yield, new defect types |
| CAPA | Aging analysis, effectiveness | >10% overdue, <80% effective |
---
Review Agenda
Standard Agenda Template
MANAGEMENT REVIEW AGENDA
Date: [Date]
Time: [Start] - [End]
Location: [Room/Virtual Link]
Chair: [QMR Name]
1. OPENING (10 min)
- Call to order and attendance
- Approval of previous meeting minutes
- Review of previous action items
2. QMS PERFORMANCE (30 min)
- Audit results summary
- Process performance metrics
- Product conformity data
- Customer feedback analysis
3. COMPLIANCE STATUS (20 min)
- Regulatory compliance status
- Certification status
- Changes affecting QMS
4. CAPA AND IMPROVEMENT (20 min)
- CAPA status and trends
- Improvement initiatives status
- Recommendations for improvement
5. RESOURCE REVIEW (15 min)
- Resource adequacy assessment
- Training and competency status
- Infrastructure needs
6. STRATEGIC ITEMS (15 min)
- Quality objectives progress
- Quality policy adequacy
- Strategic quality initiatives
7. DECISIONS AND ACTIONS (15 min)
- Decisions required
- New action items
- Next review planning
8. CLOSING (5 min)
- Summary of decisions
- Action item review
- AdjournmentTime Allocation by Review Type
| Review Type | Duration | Focus Areas |
|---|---|---|
| Full Annual Review | 3-4 hours | All inputs, strategic planning |
| Semi-annual Review | 2-3 hours | All inputs, trend analysis |
| Quarterly Review | 1.5-2 hours | Key metrics, action tracking |
---
Required Outputs
ISO 13485 Required Output Topics
| Output | Description | Documentation |
|---|---|---|
| Improvement decisions | QMS and process improvements | Action items with owners |
| Resource decisions | Changes to resource allocation | Resource plan updates |
| Quality objectives | Changes to objectives or targets | Updated objectives document |
| QMS changes | Decisions on system modifications | Change requests initiated |
Output Documentation Template
MANAGEMENT REVIEW OUTPUTS
Review Date: [Date]
Review Type: [Annual/Semi-annual/Quarterly]
DECISIONS MADE:
1. QMS IMPROVEMENT DECISIONS
| Decision | Rationale | Owner | Due Date |
|----------|-----------|-------|----------|
| [Decision 1] | [Why] | [Who] | [When] |
2. RESOURCE DECISIONS
| Decision | Resources Required | Budget Impact | Owner |
|----------|-------------------|----------------|-------|
| [Decision 1] | [What needed] | [$] | [Who] |
3. QUALITY OBJECTIVES
| Objective | Current | Target | Change | Rationale |
|-----------|---------|--------|--------|-----------|
| [Objective 1] | [Current target] | [New target] | [+/-] | [Why] |
4. QMS CHANGES APPROVED
| Change | Scope | Implementation Date | Owner |
|--------|-------|---------------------|-------|
| [Change 1] | [Affected areas] | [Date] | [Who] |
CONCLUSIONS:
- Overall QMS effectiveness: [Effective/Needs Improvement]
- Quality policy adequacy: [Adequate/Needs Update]
- Quality objectives progress: [On Track/Behind/Ahead]
NEXT REVIEW:
Date: [Date]
Special Focus Areas: [Areas requiring attention]---
Action Tracking
Action Item Format
ACTION ITEM
ID: MR-[Year]-[Number]
Source: Management Review [Date]
Category: [ ] Improvement [ ] Resource [ ] Compliance [ ] Other
Description: [Specific action to be taken]
Owner: [Name, Title]
Due Date: [Date]
Priority: [ ] High [ ] Medium [ ] Low
Success Criteria: [How completion will be verified]
Resources Required: [People, budget, equipment]
Dependencies: [Other actions or conditions]
Status Updates:
| Date | Update | Updated By |
|------|--------|------------|
| [Date] | [Progress note] | [Name] |
Completion:
Completed Date: [Date]
Evidence: [Reference to evidence of completion]
Verified By: [Name, Date]Action Status Categories
| Status | Definition | Color Code |
|---|---|---|
| Not Started | Assigned but work not begun | Gray |
| In Progress | Work underway | Blue |
| On Hold | Blocked, awaiting dependency | Yellow |
| Overdue | Past due date, not complete | Red |
| Complete | Finished, pending verification | Green |
| Verified | Completion verified | Dark Green |
| Cancelled | No longer required | Strikethrough |
Action Tracking Dashboard
MANAGEMENT REVIEW ACTION TRACKER
Review: [Date]
Last Updated: [Date]
SUMMARY:
Total Actions: [Number]
| Status | Count | % |
|--------|-------|---|
| Complete/Verified | [N] | [%] |
| In Progress | [N] | [%] |
| Not Started | [N] | [%] |
| Overdue | [N] | [%] |
| On Hold | [N] | [%] |
OVERDUE ACTIONS (Requires Escalation):
| ID | Description | Owner | Due Date | Days Overdue |
|----|-------------|-------|----------|--------------|
| [ID] | [Brief] | [Name] | [Date] | [Days] |
UPCOMING DUE (Next 30 Days):
| ID | Description | Owner | Due Date |
|----|-------------|-------|----------|
| [ID] | [Brief] | [Name] | [Date] |---
Documentation Templates
Meeting Minutes Template
MANAGEMENT REVIEW MEETING MINUTES
Date: [Date]
Time: [Start] - [End]
Location: [Location]
Chair: [Name]
Recorder: [Name]
ATTENDEES:
| Name | Title | Present |
|------|-------|---------|
| [Name] | [Title] | ☑ Yes / ☐ No |
AGENDA ITEMS REVIEWED:
1. [Topic]
Discussion: [Summary of discussion]
Decision: [Decision made, if any]
Action: [Action assigned, if any]
2. [Topic]
...
DECISIONS SUMMARY:
1. [Decision 1]
2. [Decision 2]
ACTIONS ASSIGNED:
| ID | Action | Owner | Due Date |
|----|--------|-------|----------|
| MR-XX-01 | [Action] | [Name] | [Date] |
NEXT MEETING:
Date: [Date]
Preliminary Agenda Items: [Topics to cover]
APPROVAL:
Chair: _________________ Date: _______
QMR: _________________ Date: _______Review Effectiveness Metrics
| Metric | Target | Calculation |
|---|---|---|
| Action completion rate | >90% | Completed on time / Total actions |
| Review attendance | 100% required | Required attendees present / Required |
| Input completeness | 100% | Inputs provided / Required inputs |
| Decision documentation | 100% | Documented decisions / Decisions made |
| Time to complete review | Per schedule | Actual date - Planned date |
Quality KPI Framework
Quality performance indicators, targets, and monitoring guidelines for QMS effectiveness.
---
Table of Contents
- KPI Categories
- Core Quality KPIs
- Customer Quality KPIs
- Compliance KPIs
- Cost of Quality
- Dashboard Templates
---
KPI Categories
KPI Hierarchy
| Level | Audience | Update Frequency | Example |
|---|---|---|---|
| Strategic | Board, C-suite | Quarterly | Quality cost ratio |
| Tactical | Department heads | Monthly | CAPA closure rate |
| Operational | Team leads | Weekly/Daily | First pass yield |
KPI Selection Criteria
| Criterion | Requirement |
|---|---|
| Measurable | Quantifiable with available data |
| Actionable | Team can influence the metric |
| Relevant | Aligned to quality objectives |
| Timely | Can be measured at useful frequency |
| Owned | Clear accountability assigned |
---
Core Quality KPIs
Process Performance
| KPI | Definition | Target | Calculation |
|---|---|---|---|
| First Pass Yield | % units passing without rework | >95% | (Units passed first time / Total units) × 100 |
| Process Capability (Cpk) | Process performance vs. spec | >1.33 | min((USL-μ)/(3σ), (μ-LSL)/(3σ)) |
| Nonconformance Rate | NC events per production volume | <1% | (NC count / Total units) × 100 |
| Right First Time | % activities completed correctly first time | >98% | (Correct completions / Total attempts) × 100 |
CAPA Effectiveness
| KPI | Definition | Target | Calculation |
|---|---|---|---|
| CAPA Closure Rate | % CAPAs closed on time | >90% | (On-time closures / Due closures) × 100 |
| CAPA Effectiveness Rate | % CAPAs effective at verification | >85% | (Effective CAPAs / Verified CAPAs) × 100 |
| Average CAPA Age | Mean days from open to close | <60 days | Sum(Close date - Open date) / Count |
| Overdue CAPA Rate | % CAPAs past due date | <10% | (Overdue CAPAs / Open CAPAs) × 100 |
| Recurrence Rate | % issues recurring after CAPA | <5% | (Recurred issues / Closed CAPAs) × 100 |
Audit Performance
| KPI | Definition | Target | Calculation |
|---|---|---|---|
| Audit Schedule Compliance | % audits completed per schedule | >95% | (Audits completed / Audits scheduled) × 100 |
| Finding Closure Rate | % findings closed on time | >90% | (On-time closures / Due closures) × 100 |
| Repeat Finding Rate | % findings recurring from prior audits | <10% | (Repeat findings / Total findings) × 100 |
| Major NC Rate | Major NCs per audit | <1 | Total major NCs / Total audits |
Document Control
| KPI | Definition | Target | Calculation |
|---|---|---|---|
| Document Review Compliance | % documents reviewed on schedule | >95% | (On-time reviews / Due reviews) × 100 |
| Change Request Cycle Time | Days from request to implementation | <30 days | Average(Implementation - Request date) |
| Obsolete Document Incidents | Uses of obsolete documents | 0 | Count of incidents |
---
Customer Quality KPIs
Complaint Management
| KPI | Definition | Target | Calculation |
|---|---|---|---|
| Complaint Rate | Complaints per units sold | <0.1% | (Complaints / Units sold) × 100 |
| Complaint Response Time | Days to acknowledge complaint | <24 hours | Average(Response date - Receipt date) |
| Complaint Investigation Time | Days to complete investigation | <30 days | Average(Close date - Receipt date) |
| Complaint Closure Rate | % complaints closed on time | >90% | (On-time closures / Due closures) × 100 |
Customer Satisfaction
| KPI | Definition | Target | Calculation |
|---|---|---|---|
| Customer Satisfaction Score | Survey-based satisfaction rating | >4.0/5.0 | Average of survey scores |
| Net Promoter Score (NPS) | Customer loyalty indicator | >50 | % Promoters - % Detractors |
| Return Rate | % units returned by customers | <1% | (Units returned / Units sold) × 100 |
| Warranty Claim Rate | Warranty claims per units sold | <0.5% | (Claims / Units under warranty) × 100 |
Field Quality
| KPI | Definition | Target | Calculation |
|---|---|---|---|
| Field Failure Rate | Failures in customer use | <0.1% | (Field failures / Units in field) × 100 |
| Mean Time Between Failures | Average operating time before failure | Varies | Total operating hours / Number of failures |
| Service Call Rate | Service calls per installed base | <5%/year | (Service calls / Installed units) × 100 |
---
Compliance KPIs
Regulatory Compliance
| KPI | Definition | Target | Calculation |
|---|---|---|---|
| Regulatory Submission Success | % submissions accepted first time | >90% | (Accepted submissions / Total submissions) × 100 |
| Inspection Readiness Score | Self-assessment compliance score | >90% | (Compliant items / Total items) × 100 |
| Reportable Event Timeliness | % events reported within required time | 100% | (On-time reports / Required reports) × 100 |
| Registration Currency | % registrations current | 100% | (Current registrations / Required registrations) × 100 |
Certification Status
| KPI | Definition | Target | Calculation |
|---|---|---|---|
| Certification Maintenance | Active certifications vs. required | 100% | (Active certs / Required certs) × 100 |
| Surveillance Audit Outcomes | Pass rate on surveillance audits | 100% | (Passed audits / Conducted audits) × 100 |
| Certification NC Rate | NCs per certification audit | <3 minor, 0 major | Count per audit |
Training Compliance
| KPI | Definition | Target | Calculation |
|---|---|---|---|
| Training Completion Rate | % required training completed | >95% | (Completed / Required) × 100 |
| Training Currency | % employees with current training | >98% | (Current / Total requiring) × 100 |
| Training Effectiveness | % passing competency assessments | >90% | (Passed / Assessed) × 100 |
---
Cost of Quality
Cost Categories
| Category | Definition | Examples |
|---|---|---|
| Prevention | Costs to prevent defects | Training, quality planning, process validation |
| Appraisal | Costs to detect defects | Inspection, testing, audits, calibration |
| Internal Failure | Costs of defects found internally | Rework, scrap, re-inspection, downgrading |
| External Failure | Costs of defects found by customer | Returns, complaints, warranty, recalls |
Cost of Quality KPIs
| KPI | Definition | Target | Calculation |
|---|---|---|---|
| Total Cost of Quality | Sum of all quality costs | <5% of revenue | Prevention + Appraisal + Failure costs |
| Prevention/Appraisal Ratio | Prevention vs. detection investment | >1.0 | Prevention costs / Appraisal costs |
| Failure Cost Ratio | Failure costs as % of CoQ | <30% | (Internal + External failure) / Total CoQ |
| Quality Cost Trend | Change in CoQ over time | Decreasing | (Current CoQ - Prior CoQ) / Prior CoQ |
Cost Collection Categories
COST OF QUALITY WORKSHEET
Period: [Start] to [End]
PREVENTION COSTS:
| Category | Description | Amount |
|----------|-------------|--------|
| Quality planning | QMS development, quality planning | $ |
| Training | Quality training programs | $ |
| Process validation | Validation activities | $ |
| Supplier qualification | Supplier quality programs | $ |
| Preventive maintenance | Equipment maintenance | $ |
| SUBTOTAL PREVENTION | | $ |
APPRAISAL COSTS:
| Category | Description | Amount |
|----------|-------------|--------|
| Incoming inspection | Supplier material inspection | $ |
| In-process inspection | Production quality checks | $ |
| Final inspection | Finished goods testing | $ |
| Audit costs | Internal and external audits | $ |
| Calibration | Equipment calibration | $ |
| SUBTOTAL APPRAISAL | | $ |
INTERNAL FAILURE COSTS:
| Category | Description | Amount |
|----------|-------------|--------|
| Scrap | Scrapped materials and product | $ |
| Rework | Labor and materials to correct | $ |
| Re-inspection | Repeat inspection costs | $ |
| Downgrading | Revenue loss from downgrading | $ |
| Root cause analysis | Investigation costs | $ |
| SUBTOTAL INTERNAL FAILURE | | $ |
EXTERNAL FAILURE COSTS:
| Category | Description | Amount |
|----------|-------------|--------|
| Returns processing | Handling returned product | $ |
| Warranty costs | Warranty claims and repairs | $ |
| Complaint handling | Investigation and resolution | $ |
| Recalls | Recall execution costs | $ |
| Liability | Legal and settlement costs | $ |
| SUBTOTAL EXTERNAL FAILURE | | $ |
TOTAL COST OF QUALITY: $
AS % OF REVENUE: %---
Dashboard Templates
Executive Quality Dashboard
EXECUTIVE QUALITY DASHBOARD
Period: [Month/Quarter]
KEY METRICS AT A GLANCE:
┌─────────────────┬─────────┬─────────┬─────────┐
│ Metric │ Target │ Actual │ Trend │
├─────────────────┼─────────┼─────────┼─────────┤
│ Customer Sat │ >4.0 │ [X.X] │ [↑/↓/→] │
│ Complaint Rate │ <0.1% │ [X.XX%] │ [↑/↓/→] │
│ First Pass Yield│ >95% │ [XX%] │ [↑/↓/→] │
│ CAPA Closure │ >90% │ [XX%] │ [↑/↓/→] │
│ Audit Findings │ <3/audit│ [X.X] │ [↑/↓/→] │
│ Quality Cost │ <5% │ [X.X%] │ [↑/↓/→] │
└─────────────────┴─────────┴─────────┴─────────┘
ALERTS:
[ ] Critical: [Any critical issues requiring immediate attention]
[ ] Warning: [Issues approaching threshold]
[ ] Info: [Notable improvements or changes]
QUALITY OBJECTIVES PROGRESS:
| Objective | Target | YTD | Status |
|-----------|--------|-----|--------|
| [Obj 1] | [Target] | [Actual] | [On Track/Behind] |Operational Quality Dashboard
OPERATIONAL QUALITY DASHBOARD
Week/Month: [Period]
PRODUCTION QUALITY:
├── First Pass Yield: [XX%] (Target: 95%)
├── Rework Rate: [X.X%] (Target: <2%)
├── Scrap Rate: [X.X%] (Target: <1%)
└── NC Count: [XX] (Prior: [XX])
CAPA STATUS:
├── Open CAPAs: [XX]
│ ├── Critical: [X]
│ ├── Major: [XX]
│ └── Minor: [XX]
├── Overdue: [X] [!ALERT if >0]
├── Avg Age: [XX] days
└── Closed This Period: [XX]
AUDIT STATUS:
├── Audits Completed: [X] of [X] scheduled
├── Open Findings: [XX]
│ ├── Major: [X]
│ └── Minor: [XX]
└── Overdue Actions: [X]
COMPLAINTS:
├── Received: [XX]
├── Open: [XX]
├── Avg Response Time: [X.X] days
└── Top Category: [Category]KPI Target Setting Guidelines
| Performance Level | Action |
|---|---|
| >110% of target | Consider raising target |
| 100-110% of target | Maintain current target |
| 90-100% of target | Monitor closely |
| 80-90% of target | Improvement plan required |
| <80% of target | Immediate intervention |
Review Frequency by KPI Type
| KPI Type | Review Frequency | Trend Period |
|---|---|---|
| Safety/Compliance | Daily monitoring | Weekly |
| Production | Daily/Weekly | Monthly |
| Customer | Weekly/Monthly | Quarterly |
| Strategic | Monthly/Quarterly | Annual |
| Cost | Monthly | Quarterly |
#!/usr/bin/env python3
"""
Management Review Tracker - QMS Management Review Preparation and Tracking
Tracks management review inputs, action items, and generates review reports
for ISO 13485 compliance.
Usage:
python management_review_tracker.py --data review_data.json
python management_review_tracker.py --interactive
python management_review_tracker.py --data review_data.json --output json
"""
import argparse
import json
import sys
from dataclasses import dataclass, field, asdict
from datetime import datetime, timedelta
from typing import List, Dict, Optional
from enum import Enum
class ActionStatus(Enum):
NOT_STARTED = "Not Started"
IN_PROGRESS = "In Progress"
ON_HOLD = "On Hold"
OVERDUE = "Overdue"
COMPLETE = "Complete"
VERIFIED = "Verified"
class ActionPriority(Enum):
HIGH = "High"
MEDIUM = "Medium"
LOW = "Low"
class InputStatus(Enum):
NOT_COLLECTED = "Not Collected"
IN_PROGRESS = "In Progress"
COMPLETE = "Complete"
REVIEWED = "Reviewed"
@dataclass
class ReviewInput:
topic: str
responsible: str
status: InputStatus
data_period: str
summary: str = ""
concerns: List[str] = field(default_factory=list)
@dataclass
class ActionItem:
action_id: str
description: str
owner: str
due_date: str
priority: ActionPriority
status: ActionStatus
source_review: str
category: str = "Improvement"
completion_date: Optional[str] = None
notes: str = ""
@dataclass
class ReviewMetrics:
complaint_rate: float = 0.0
complaint_count: int = 0
capa_open: int = 0
capa_overdue: int = 0
capa_effectiveness: float = 0.0
audit_findings_open: int = 0
audit_findings_major: int = 0
first_pass_yield: float = 0.0
customer_satisfaction: float = 0.0
training_compliance: float = 0.0
@dataclass
class ManagementReview:
review_date: str
review_type: str
period_start: str
period_end: str
inputs: List[ReviewInput]
actions: List[ActionItem]
metrics: ReviewMetrics
decisions: List[str] = field(default_factory=list)
attendees: List[str] = field(default_factory=list)
class ManagementReviewTracker:
"""Tracks and reports management review status."""
# Required ISO 13485 inputs
REQUIRED_INPUTS = [
("Audit Results", "QA Manager"),
("Customer Feedback", "Customer Quality"),
("Process Performance", "Operations"),
("Product Conformity", "QC Manager"),
("CAPA Status", "CAPA Officer"),
("Previous Actions", "QMR"),
("QMS Changes", "RA Manager"),
("Recommendations", "All Managers"),
]
def __init__(self, review: ManagementReview):
self.review = review
self.today = datetime.now()
def check_input_readiness(self) -> Dict:
"""Check readiness of all required inputs."""
readiness = {
"total_required": len(self.REQUIRED_INPUTS),
"complete": 0,
"in_progress": 0,
"not_started": 0,
"missing_topics": [],
"readiness_score": 0.0
}
input_topics = {inp.topic: inp for inp in self.review.inputs}
for topic, responsible in self.REQUIRED_INPUTS:
if topic in input_topics:
inp = input_topics[topic]
if inp.status in [InputStatus.COMPLETE, InputStatus.REVIEWED]:
readiness["complete"] += 1
elif inp.status == InputStatus.IN_PROGRESS:
readiness["in_progress"] += 1
else:
readiness["not_started"] += 1
else:
readiness["missing_topics"].append(topic)
readiness["not_started"] += 1
readiness["readiness_score"] = round(
(readiness["complete"] / readiness["total_required"]) * 100, 1
)
return readiness
def analyze_actions(self) -> Dict:
"""Analyze action item status."""
analysis = {
"total": len(self.review.actions),
"by_status": {},
"by_priority": {},
"overdue": [],
"due_soon": [],
"completion_rate": 0.0
}
completed = 0
for action in self.review.actions:
# Count by status
status = action.status.value
analysis["by_status"][status] = analysis["by_status"].get(status, 0) + 1
# Count by priority
priority = action.priority.value
analysis["by_priority"][priority] = analysis["by_priority"].get(priority, 0) + 1
# Check completion
if action.status in [ActionStatus.COMPLETE, ActionStatus.VERIFIED]:
completed += 1
# Check overdue
if action.due_date:
due = datetime.strptime(action.due_date, "%Y-%m-%d")
if due < self.today and action.status not in [
ActionStatus.COMPLETE, ActionStatus.VERIFIED
]:
days_overdue = (self.today - due).days
analysis["overdue"].append({
"action_id": action.action_id,
"description": action.description[:50],
"owner": action.owner,
"days_overdue": days_overdue
})
elif due <= self.today + timedelta(days=14) and action.status not in [
ActionStatus.COMPLETE, ActionStatus.VERIFIED
]:
days_until = (due - self.today).days
analysis["due_soon"].append({
"action_id": action.action_id,
"description": action.description[:50],
"owner": action.owner,
"days_until_due": days_until
})
if analysis["total"] > 0:
analysis["completion_rate"] = round((completed / analysis["total"]) * 100, 1)
return analysis
def assess_metrics(self) -> Dict:
"""Assess quality metrics against targets."""
metrics = self.review.metrics
assessment = {
"metrics": [],
"alerts": [],
"overall_status": "On Track"
}
# Define targets and assess
checks = [
("Complaint Rate", metrics.complaint_rate, 0.1, "lower"),
("CAPA Overdue", metrics.capa_overdue, 0, "lower"),
("CAPA Effectiveness", metrics.capa_effectiveness, 85.0, "higher"),
("First Pass Yield", metrics.first_pass_yield, 95.0, "higher"),
("Customer Satisfaction", metrics.customer_satisfaction, 4.0, "higher"),
("Training Compliance", metrics.training_compliance, 95.0, "higher"),
]
warnings = 0
critical = 0
for name, value, target, direction in checks:
if direction == "lower":
status = "Pass" if value <= target else "Fail"
threshold = target * 1.2
warning = value > target and value <= threshold
else:
status = "Pass" if value >= target else "Fail"
threshold = target * 0.9
warning = value < target and value >= threshold
metric_result = {
"name": name,
"value": value,
"target": target,
"status": status
}
assessment["metrics"].append(metric_result)
if status == "Fail":
if warning:
warnings += 1
assessment["alerts"].append(f"WARNING: {name} at {value} (target: {target})")
else:
critical += 1
assessment["alerts"].append(f"CRITICAL: {name} at {value} (target: {target})")
if critical > 0:
assessment["overall_status"] = "Critical"
elif warnings > 0:
assessment["overall_status"] = "Needs Attention"
return assessment
def generate_recommendations(self) -> List[str]:
"""Generate recommendations based on analysis."""
recommendations = []
# Check input readiness
readiness = self.check_input_readiness()
if readiness["readiness_score"] < 100:
recommendations.append(
f"Complete remaining review inputs: {', '.join(readiness['missing_topics'])}"
)
# Check actions
action_analysis = self.analyze_actions()
if action_analysis["overdue"]:
recommendations.append(
f"Address {len(action_analysis['overdue'])} overdue action(s) immediately"
)
# Check metrics
metrics_assessment = self.assess_metrics()
if metrics_assessment["overall_status"] == "Critical":
recommendations.append(
"Escalate critical metric failures to senior management"
)
# CAPA specific
if self.review.metrics.capa_overdue > 0:
recommendations.append(
f"Expedite closure of {self.review.metrics.capa_overdue} overdue CAPA(s)"
)
if self.review.metrics.capa_effectiveness < 85:
recommendations.append(
"Review root cause analysis quality for ineffective CAPAs"
)
# Audit findings
if self.review.metrics.audit_findings_major > 0:
recommendations.append(
f"Prioritize resolution of {self.review.metrics.audit_findings_major} major audit finding(s)"
)
if not recommendations:
recommendations.append("Quality system performing within targets. Maintain monitoring.")
return recommendations
def generate_report(self) -> Dict:
"""Generate complete review status report."""
return {
"review_date": self.review.review_date,
"review_type": self.review.review_type,
"period": f"{self.review.period_start} to {self.review.period_end}",
"input_readiness": self.check_input_readiness(),
"action_analysis": self.analyze_actions(),
"metrics_assessment": self.assess_metrics(),
"recommendations": self.generate_recommendations()
}
def format_text_report(report: Dict) -> str:
"""Format report as text output."""
lines = [
"=" * 70,
"MANAGEMENT REVIEW STATUS REPORT",
"=" * 70,
f"Review Date: {report['review_date']}",
f"Review Type: {report['review_type']}",
f"Period: {report['period']}",
"",
"INPUT READINESS",
"-" * 40,
f"Readiness Score: {report['input_readiness']['readiness_score']}%",
f"Complete: {report['input_readiness']['complete']} / {report['input_readiness']['total_required']}",
]
if report['input_readiness']['missing_topics']:
lines.append(f"Missing: {', '.join(report['input_readiness']['missing_topics'])}")
lines.extend([
"",
"ACTION STATUS",
"-" * 40,
f"Total Actions: {report['action_analysis']['total']}",
f"Completion Rate: {report['action_analysis']['completion_rate']}%",
])
for status, count in report['action_analysis']['by_status'].items():
lines.append(f" {status}: {count}")
if report['action_analysis']['overdue']:
lines.extend([
"",
"OVERDUE ACTIONS:",
])
for item in report['action_analysis']['overdue']:
lines.append(f" [{item['action_id']}] {item['description']} - {item['days_overdue']} days overdue")
lines.extend([
"",
"METRICS ASSESSMENT",
"-" * 40,
f"Overall Status: {report['metrics_assessment']['overall_status']}",
"",
f"{'Metric':<25} {'Value':<10} {'Target':<10} {'Status':<10}",
"-" * 55,
])
for metric in report['metrics_assessment']['metrics']:
lines.append(
f"{metric['name']:<25} {metric['value']:<10} {metric['target']:<10} {metric['status']:<10}"
)
if report['metrics_assessment']['alerts']:
lines.extend([
"",
"ALERTS:",
])
for alert in report['metrics_assessment']['alerts']:
lines.append(f" ! {alert}")
lines.extend([
"",
"RECOMMENDATIONS",
"-" * 40,
])
for i, rec in enumerate(report['recommendations'], 1):
lines.append(f"{i}. {rec}")
lines.append("=" * 70)
return "\n".join(lines)
def interactive_mode():
"""Run interactive review data entry."""
print("=" * 60)
print("Management Review Tracker - Interactive Mode")
print("=" * 60)
review_date = input("\nReview Date (YYYY-MM-DD): ").strip()
review_type = input("Review Type (Annual/Semi-annual/Quarterly): ").strip()
period_start = input("Period Start (YYYY-MM-DD): ").strip()
period_end = input("Period End (YYYY-MM-DD): ").strip()
print("\nEnter Quality Metrics:")
metrics = ReviewMetrics(
complaint_rate=float(input("Complaint Rate (%): ") or 0),
complaint_count=int(input("Complaint Count: ") or 0),
capa_open=int(input("Open CAPAs: ") or 0),
capa_overdue=int(input("Overdue CAPAs: ") or 0),
capa_effectiveness=float(input("CAPA Effectiveness (%): ") or 0),
audit_findings_open=int(input("Open Audit Findings: ") or 0),
audit_findings_major=int(input("Major Audit Findings: ") or 0),
first_pass_yield=float(input("First Pass Yield (%): ") or 0),
customer_satisfaction=float(input("Customer Satisfaction (1-5): ") or 0),
training_compliance=float(input("Training Compliance (%): ") or 0)
)
# Create review with sample inputs
inputs = [
ReviewInput(topic=topic, responsible=resp, status=InputStatus.COMPLETE, data_period=f"{period_start} to {period_end}")
for topic, resp in ManagementReviewTracker.REQUIRED_INPUTS
]
review = ManagementReview(
review_date=review_date,
review_type=review_type,
period_start=period_start,
period_end=period_end,
inputs=inputs,
actions=[],
metrics=metrics
)
tracker = ManagementReviewTracker(review)
report = tracker.generate_report()
print("\n" + format_text_report(report))
def main():
parser = argparse.ArgumentParser(
description="Management Review Tracker"
)
parser.add_argument(
"--data",
type=str,
help="JSON file with review data"
)
parser.add_argument(
"--output",
choices=["text", "json"],
default="text",
help="Output format"
)
parser.add_argument(
"--interactive",
action="store_true",
help="Run in interactive mode"
)
parser.add_argument(
"--sample",
action="store_true",
help="Generate sample review data"
)
args = parser.parse_args()
if args.interactive:
interactive_mode()
return
if args.sample:
sample = {
"review_date": "2024-06-30",
"review_type": "Semi-annual",
"period_start": "2024-01-01",
"period_end": "2024-06-30",
"inputs": [
{"topic": "Audit Results", "responsible": "QA Manager", "status": "Complete", "data_period": "H1 2024"},
{"topic": "Customer Feedback", "responsible": "Customer Quality", "status": "Complete", "data_period": "H1 2024"},
{"topic": "Process Performance", "responsible": "Operations", "status": "In Progress", "data_period": "H1 2024"},
{"topic": "CAPA Status", "responsible": "CAPA Officer", "status": "Complete", "data_period": "Current"}
],
"actions": [
{
"action_id": "MR-2024-001",
"description": "Implement enhanced CAPA tracking system",
"owner": "QA Manager",
"due_date": "2024-09-30",
"priority": "High",
"status": "In Progress",
"source_review": "2024-Q1"
}
],
"metrics": {
"complaint_rate": 0.08,
"complaint_count": 12,
"capa_open": 8,
"capa_overdue": 2,
"capa_effectiveness": 88.0,
"audit_findings_open": 5,
"audit_findings_major": 1,
"first_pass_yield": 96.5,
"customer_satisfaction": 4.2,
"training_compliance": 97.0
}
}
print(json.dumps(sample, indent=2))
return
# Create sample review if no data provided
if args.data:
with open(args.data, "r") as f:
data = json.load(f)
inputs = [
ReviewInput(
topic=inp["topic"],
responsible=inp["responsible"],
status=InputStatus[inp["status"].upper().replace(" ", "_")],
data_period=inp.get("data_period", "")
)
for inp in data.get("inputs", [])
]
actions = [
ActionItem(
action_id=act["action_id"],
description=act["description"],
owner=act["owner"],
due_date=act["due_date"],
priority=ActionPriority[act["priority"].upper()],
status=ActionStatus[act["status"].upper().replace(" ", "_")],
source_review=act.get("source_review", "")
)
for act in data.get("actions", [])
]
metrics_data = data.get("metrics", {})
metrics = ReviewMetrics(**metrics_data)
review = ManagementReview(
review_date=data["review_date"],
review_type=data["review_type"],
period_start=data["period_start"],
period_end=data["period_end"],
inputs=inputs,
actions=actions,
metrics=metrics
)
else:
# Demo data
review = ManagementReview(
review_date="2024-06-30",
review_type="Semi-annual",
period_start="2024-01-01",
period_end="2024-06-30",
inputs=[
ReviewInput("Audit Results", "QA Manager", InputStatus.COMPLETE, "H1 2024"),
ReviewInput("Customer Feedback", "Customer Quality", InputStatus.COMPLETE, "H1 2024"),
ReviewInput("CAPA Status", "CAPA Officer", InputStatus.COMPLETE, "Current"),
],
actions=[
ActionItem("MR-2024-001", "Implement CAPA tracking", "QA Mgr", "2024-09-30",
ActionPriority.HIGH, ActionStatus.IN_PROGRESS, "2024-Q1"),
],
metrics=ReviewMetrics(
complaint_rate=0.08, capa_open=8, capa_overdue=2,
capa_effectiveness=88.0, first_pass_yield=96.5,
customer_satisfaction=4.2, training_compliance=97.0
)
)
tracker = ManagementReviewTracker(review)
report = tracker.generate_report()
if args.output == "json":
print(json.dumps(report, indent=2))
else:
print(format_text_report(report))
if __name__ == "__main__":
main()