Predictive Maintenance Use-case Evaluation Canvas
An interactive canvas to evaluate predictive maintenance opportunities. Guides teams through asset selection, failure-mode definition, data readiness, labeling approach, modeling and validation, operational integration, pilot success criteria, and a basic ROI estimate. Saves responses so pilots can be compared and tracked.
Use this guided canvas to decide whether a predictive maintenance pilot is feasible and valuable. Capture asset details, failure definitions, available signals, labeling strategy, modeling and validation approach, operational integration and human oversight, pilot success criteria, risks, and a simple ROI estimate. Save responses so teams can compare, prioritize, and iterate on pilots.
", "SubmitLabel": "Save Canvas", "SuccessMessage": "Canvas saved. You can return to update details or use this record to start a pilot.", "DataType": "predictive_maintenance_usecase", "SchemaVersion": "1.0", "Fields": [ { "Key": "asset_name", "FieldType": "text", "Label": "Target asset (name / ID)", "HelpText": "Identify the specific asset, equipment class, or system. Include location, model, and any identifiers.", "Required": true }, { "Key": "failure_mode", "FieldType": "textarea", "Label": "Failure mode to predict", "HelpText": "Describe what fails and how it manifests. Give short examples of past incidents and typical failure signatures.", "Required": true }, { "Key": "business_impact", "FieldType": "textarea", "Label": "Business impact metrics (downtime, cost, safety)", "HelpText": "Explain how this failure affects operations: average downtime per event, safety implications, repair cost, lost production, customer impact. Include numeric targets if known.", "Required": true }, { "Key": "available_sensors", "FieldType": "checkbox", "Label": "Available sensors / signals", "HelpText": "Select signals that are already collected or accessible from systems. Use 'Other' to describe additional sources.", "Options": [ { "Value": "vibration", "Label": "Vibration / accelerometer" }, { "Value": "temperature", "Label": "Temperature" }, { "Value": "pressure", "Label": "Pressure / flow" }, { "Value": "current", "Label": "Motor current / amps" }, { "Value": "voltage", "Label": "Voltage" }, { "Value": "oil", "Label": "Oil analysis / particle counts" }, { "Value": "runtime", "Label": "Runtime / cycles / usage" }, { "Value": "inspections", "Label": "Inspection records / manual logs" }, { "Value": "other", "Label": "Other (describe below)" } ], "Required": true }, { "Key": "other_signals", "FieldType": "textarea", "Label": "Other signals (if selected)", "HelpText": "List additional signals, external feeds, or notes about access, retention, sampling rate, and ownership." }, { "Key": "signal_quality", "FieldType": "radio", "Label": "Signal quality assessment", "HelpText": "Assess the historical data quality for the selected signals (coverage, gaps, sampling rate, labels).", "Options": [ { "Value": "high", "Label": "High — continuous, reliable, labeled" }, { "Value": "medium", "Label": "Medium — partial coverage, some gaps" }, { "Value": "low", "Label": "Low — sparse, noisy, manual" } ], "Required": true }, { "Key": "labeling_approach", "FieldType": "select", "Label": "Labeling approach and event definition", "HelpText": "How will you define training labels or events? Indicate how many labeled events you expect to have and the source of truth.", "Options": [ { "Value": "historical_failures", "Label": "Historical failure logs / timestamps" }, { "Value": "inspection_labels", "Label": "Inspection records / condition thresholds" }, { "Value": "synthetic_labels", "Label": "Derived from thresholds or simulation" }, { "Value": "anomaly_detection", "Label": "Unsupervised anomaly detection (limited labels)" }, { "Value": "other", "Label": "Other (describe)" } ], "Required": true }, { "Key": "estimated_events", "FieldType": "number", "Label": "Estimated labeled failure events available", "HelpText": "Approximate count of usable events for training/validation. Enter 0 if unknown or none." }, { "Key": "modeling_approach", "FieldType": "select", "Label": "Candidate modeling approach", "HelpText": "Consider explainability, data needs, lead time, and maintenance burden when choosing an approach.", "Options": [ { "Value": "rule_based", "Label": "Rule-based / threshold rules" }, { "Value": "supervised_ml", "Label": "Supervised ML (classification / regression)" }, { "Value": "anomaly_detection", "Label": "Anomaly detection / unsupervised" }, { "Value": "physics_based", "Label": "Physics-based / digital twin" }, { "Value": "hybrid", "Label": "Hybrid / ensemble approach" } ], "Required": true }, { "Key": "validation_plan", "FieldType": "textarea", "Label": "Validation plan and metrics", "HelpText": "Describe test/validation strategy (holdout periods, cross-validation), target metrics (precision, recall, lead time), acceptable false positive rate, and any field trials." }, { "Key": "operational_integration", "FieldType": "textarea", "Label": "Operational integration and human oversight", "HelpText": "Explain how alerts will be delivered, who takes action, how the prediction ties into work planning/scheduling, escalation, and model ownership. Include any required UI or notification channels." }, { "Key": "pilot_success_criteria", "FieldType": "textarea", "Label": "Pilot success criteria", "HelpText": "List objective acceptance criteria for the pilot (e.g., precision >= 0.6 at X-hour lead time, reduction in emergency repairs by Y%, tech time saved). Be specific and measurable." }, { "Key": "estimated_annual_downtime_hours", "FieldType": "number", "Label": "Estimated annual downtime avoided (hours)", "HelpText": "If the model works, how many hours per year do you expect to avoid? Use conservative estimates." }, { "Key": "cost_per_downtime_hour", "FieldType": "number", "Label": "Estimated cost per downtime hour (USD)", "HelpText": "Fully loaded cost per hour of downtime including lost production, labor, and penalties." }, { "Key": "estimated_annual_savings", "FieldType": "number", "Label": "Estimated annual savings (USD)", "HelpText": "Estimate downtime_hours * cost_per_hour. Enter your calculated estimate; the platform can later compute this automatically if connected to site data." }, { "Key": "implementation_effort", "FieldType": "select", "Label": "Estimated implementation effort", "HelpText": "High-level estimate of time and engineering needed for a pilot (data integration, sensors, labeling, model dev).", "Options": [ { "Value": "low", "Label": "Low — weeks; existing data" }, { "Value": "medium", "Label": "Medium — 1-3 months; some integration" }, { "Value": "high", "Label": "High — 3+ months; new sensors or engineering" } ], "Required": true }, { "Key": "feasibility_confidence", "FieldType": "scale", "Label": "Team feasibility confidence (1=Low, 5=High)", "HelpText": "How confident is the team that this use case is feasible and valuable?", "Required": true }, { "Key": "risk_mitigation", "FieldType": "textarea", "Label": "Key risks and mitigations", "HelpText": "List risks such as false positives, false negatives, data drift, overfitting, operational disruption, and proposed mitigations or guardrails." }, { "Key": "next_steps", "FieldType": "textarea", "Label": "Recommended next steps (who, what, when)", "HelpText": "Concrete next actions to launch a pilot: data extraction, labeling tasks, sensor upgrades, stakeholder sign-offs, pilot timeline, and owners." }, { "Key": "attachments", "FieldType": "text", "Label": "Useful links or attachments", "HelpText": "Paste URLs to asset masters, sensor specs, historical logs, diagrams, dashboards, or work orders." } ] }Discussion
Comments and conversation will live here.