Fishbone Diagram
by ddunnock
Create comprehensive Fishbone (Ishikawa/Cause-and-Effect) diagrams for structured root cause brainstorming. Guides teams through problem definition, category selection (6Ms, 8Ps, 4Ss, or custom), cause identification, sub-cause drilling, prioritization via multi-voting, and 5 Whys integration. Generates visual SVG diagrams and professional HTML reports. Use when brainstorming potential causes, conducting root cause analysis, facilitating quality improvement sessions, analyzing defects or failure
Skill Details
Repository Files
15 files in this skill directory
name: fishbone-diagram description: Create comprehensive Fishbone (Ishikawa/Cause-and-Effect) diagrams for structured root cause brainstorming. Guides teams through problem definition, category selection (6Ms, 8Ps, 4Ss, or custom), cause identification, sub-cause drilling, prioritization via multi-voting, and 5 Whys integration. Generates visual SVG diagrams and professional HTML reports. Use when brainstorming potential causes, conducting root cause analysis, facilitating quality improvement sessions, analyzing defects or failures, structuring team problem-solving, or when user mentions "fishbone", "Ishikawa", "cause and effect diagram", "6Ms", "cause analysis", or "brainstorming causes". tools: Read, Bash model: sonnet color: green field: quality expertise: intermediate
Fishbone Diagram (Ishikawa) Analysis
Create structured cause-and-effect diagrams to systematically identify potential root causes of problems. This skill guides collaborative brainstorming, ensures comprehensive category coverage, and produces visual outputs.
Integration with Other RCCA Tools
The Fishbone Diagram provides breadth (identifying all possible causes across categories), while 5 Whys provides depth (drilling into specific causes). Typical workflow:
- Use Fishbone to brainstorm and categorize all potential causes
- Prioritize top 2-3 causes via multi-voting
- Apply 5 Whys to each prioritized cause to find root causes
Also integrates with: Pareto Analysis (prioritize by frequency/impact), FMEA (risk assessment), 8D (Problem Definition phase).
Workflow Overview
6 Phases (Q&A-driven):
- Problem Definition → Clear, specific effect statement
- Category Selection → Choose framework (6Ms/8Ps/4Ss/custom)
- Cause Brainstorming → Identify causes under each category
- Sub-cause Drilling → Add 2-3 levels of detail
- Prioritization → Multi-voting to identify top causes
- Documentation → Generate diagram and report
Phase 1: Problem Definition
Goal: Establish a clear, specific, measurable problem statement.
Ask the user:
What specific problem or effect are you trying to analyze?
A good problem statement is:
- Specific: "Machine 4 overheated at 2 PM" not "Machine broke"
- Measurable: Include quantities, frequencies, or timeframes when possible
- Observable: Describes what happened, not why
- Non-blaming: Focus on the situation, not individuals
Quality Gate: Problem statement must:
- Describe observable effect (not assumed cause)
- Be specific enough to guide focused analysis
- Avoid embedding solutions or blame
If vague, ask: "Can you be more specific about [what/when/where/how much]?"
Phase 2: Category Selection
Goal: Select appropriate cause categories for the analysis context.
Present options:
Which category framework fits your analysis context?
6Ms (Manufacturing/Operations):
- Man (People), Machine, Method, Material, Measurement, Mother Nature (Environment)
8Ps (Service/Marketing):
- Product, Price, Place, Promotion, People, Process, Physical Evidence, Policies
4Ss (Service Operations):
- Surroundings, Suppliers, Systems, Skills
Custom: Define your own categories based on your specific domain
Or describe your context and I'll recommend an appropriate framework.
For detailed category definitions and prompting questions, see: references/category-frameworks.md
Phase 3: Cause Brainstorming
Goal: Generate comprehensive list of potential causes under each category.
For each category, ask:
Under [Category], what factors might contribute to "[Problem]"?
Think about:
- What could go wrong in this area?
- What variations or inconsistencies exist?
- What has changed recently?
Facilitation techniques (see references/facilitation-guide.md):
- Round-robin: Each participant contributes one cause, rotate until exhausted
- Brainwriting: Silent individual brainstorming on sticky notes before discussion
- Affinity grouping: Cluster related causes together
- "Why does this happen?": Probe each cause for deeper understanding
Quality indicators:
- Minimum 2-3 causes per category (empty categories may indicate blind spots)
- Mix of obvious and non-obvious causes
- Causes should be distinct (not restating the problem)
Phase 4: Sub-cause Drilling
Goal: Add depth to major causes with 2-3 levels of sub-causes.
For significant causes, ask:
For the cause "[Cause]", what specific factors contribute to it?
Ask "Why might this happen?" to uncover sub-causes.
Depth guidance:
- Level 1: Direct causes (e.g., "Equipment malfunction")
- Level 2: Contributing factors (e.g., "Lack of maintenance")
- Level 3: Root-level factors (e.g., "No maintenance schedule defined")
Typically 2-3 levels is sufficient. If more depth needed, transition to 5 Whys analysis.
Phase 5: Prioritization
Goal: Identify most likely/impactful causes for focused investigation.
Present prioritization options:
How would you like to prioritize the identified causes?
Multi-voting (Recommended): Each participant gets 3 votes to place on causes they believe are most significant
Impact-Effort Matrix: Rate each cause by impact (if addressed) and effort (to investigate/fix)
Data-driven: Use existing data to identify most frequent/costly causes (Pareto)
Consensus: Team discussion to agree on top 3-5 causes
After prioritization:
The top prioritized causes are:
- [Cause 1] - [votes/score]
- [Cause 2] - [votes/score]
- [Cause 3] - [votes/score]
Would you like to apply 5 Whys analysis to drill deeper into any of these?
Phase 6: Documentation
Goal: Generate visual diagram and comprehensive report.
Ask:
Ready to generate documentation. Options:
- SVG Diagram - Visual fishbone diagram
- HTML Report - Complete analysis with diagram, findings, and recommendations
- Both - Full documentation package
- JSON Export - Structured data for integration with other tools
Scripts:
scripts/generate_diagram.py- Creates SVG fishbone visualizationscripts/generate_report.py- Creates HTML report with embedded diagramscripts/export_data.py- Exports analysis data as JSON
Common Pitfalls
See references/common-pitfalls.md for detailed pitfall descriptions and redirection strategies.
Quick reference:
- Vague problem statement → Ask for specifics (what/when/where/how much)
- Stopping at symptoms → Probe with "Why might this happen?"
- Empty categories → Use category-specific prompting questions
- Person-blame → Redirect to "What process/system allowed this?"
- Groupthink → Use brainwriting before group discussion
- Confirmation bias → Challenge assumptions, seek contrary evidence
- Too shallow → Add sub-cause levels
- Too complex → Consider splitting into multiple diagrams
Quality Assessment
Rate the analysis on these dimensions (see references/quality-rubric.md):
| Dimension | Weight | Description |
|---|---|---|
| Problem Clarity | 15% | Specific, measurable, non-blaming |
| Category Coverage | 20% | All relevant categories explored |
| Cause Depth | 25% | 2-3 levels of sub-causes |
| Cause Quality | 20% | Distinct, actionable, evidence-based |
| Prioritization | 10% | Clear method, justified rankings |
| Documentation | 10% | Complete, visual, shareable |
Scoring: Use scripts/score_analysis.py to calculate quality score.
Examples
See references/examples.md for worked examples:
- Manufacturing defect analysis (6Ms)
- Customer service complaint (8Ps)
- Healthcare incident (4Ss)
- Software deployment failure (Custom)
Related Skills
Attack Tree Construction
Build comprehensive attack trees to visualize threat paths. Use when mapping attack scenarios, identifying defense gaps, or communicating security risks to stakeholders.
Grafana Dashboards
Create and manage production Grafana dashboards for real-time visualization of system and application metrics. Use when building monitoring dashboards, visualizing metrics, or creating operational observability interfaces.
Matplotlib
Foundational plotting library. Create line plots, scatter, bar, histograms, heatmaps, 3D, subplots, export PNG/PDF/SVG, for scientific visualization and publication figures.
Scientific Visualization
Create publication figures with matplotlib/seaborn/plotly. Multi-panel layouts, error bars, significance markers, colorblind-safe, export PDF/EPS/TIFF, for journal-ready scientific plots.
Seaborn
Statistical visualization. Scatter, box, violin, heatmaps, pair plots, regression, correlation matrices, KDE, faceted plots, for exploratory analysis and publication figures.
Shap
Model interpretability and explainability using SHAP (SHapley Additive exPlanations). Use this skill when explaining machine learning model predictions, computing feature importance, generating SHAP plots (waterfall, beeswarm, bar, scatter, force, heatmap), debugging models, analyzing model bias or fairness, comparing models, or implementing explainable AI. Works with tree-based models (XGBoost, LightGBM, Random Forest), deep learning (TensorFlow, PyTorch), linear models, and any black-box model
Pydeseq2
Differential gene expression analysis (Python DESeq2). Identify DE genes from bulk RNA-seq counts, Wald tests, FDR correction, volcano/MA plots, for RNA-seq analysis.
Query Writing
For writing and executing SQL queries - from simple single-table queries to complex multi-table JOINs and aggregations
Pydeseq2
Differential gene expression analysis (Python DESeq2). Identify DE genes from bulk RNA-seq counts, Wald tests, FDR correction, volcano/MA plots, for RNA-seq analysis.
Scientific Visualization
Meta-skill for publication-ready figures. Use when creating journal submission figures requiring multi-panel layouts, significance annotations, error bars, colorblind-safe palettes, and specific journal formatting (Nature, Science, Cell). Orchestrates matplotlib/seaborn/plotly with publication styles. For quick exploration use seaborn or plotly directly.
