com um clique
thinking-cynefin
// Classify problems by complexity domain (clear, complicated, complex, chaotic) and match approach to domain. Use for choosing methodologies, problem framing, and process design.
// Classify problems by complexity domain (clear, complicated, complex, chaotic) and match approach to domain. Use for choosing methodologies, problem framing, and process design.
Recognize Senge's Systems Archetypes to diagnose recurring organizational and technical problems, identify why fixes keep failing, and design interventions that address root structure.
Update beliefs systematically based on new evidence using probabilistic reasoning. Use when estimating probabilities, learning from data, or making decisions under uncertainty.
Apply Herbert Simon's Bounded Rationality and satisficing to make good-enough decisions under real-world constraints. Use for design decisions under time pressure, recognizing cognitive limits, and setting appropriate stopping criteria.
Know the boundaries of your expertise and operate within them. Use when evaluating opportunities, making decisions outside your domain, or assessing when to defer to experts.
Systematic checklist to identify and counteract cognitive biases in decision-making. Use before major decisions, when evaluating recommendations, or when stakes are high.
Apply Kahneman's Dual-Process Theory to recognize when to trust intuition vs engage deliberate analysis. Use for high-stakes decisions, error-prone contexts, or when balancing speed vs accuracy.
| name | thinking-cynefin |
| description | Classify problems by complexity domain (clear, complicated, complex, chaotic) and match approach to domain. Use for choosing methodologies, problem framing, and process design. |
The Cynefin framework, developed by Dave Snowden, classifies problems into domains based on the relationship between cause and effect. Different domains require fundamentally different approaches. Using the wrong approach for the domain leads to failure—agile doesn't fix truly complex problems, and detailed planning doesn't help in chaos.
Core Principle: The nature of the problem determines the nature of the solution. Match your approach to the domain.
Decision flow:
Facing a problem?
→ What's the relationship between cause and effect?
→ Obvious? → CLEAR DOMAIN
→ Requires analysis? → COMPLICATED DOMAIN
→ Only visible in retrospect? → COMPLEX DOMAIN
→ Cannot perceive? → CHAOTIC DOMAIN
Characteristics:
Approach: Sense → Categorize → Respond
Problem: Server disk is full
Sense: Alert shows disk at 100%
Categorize: Known issue with known fix
Respond: Clear old logs, add monitoring
Appropriate method:
- Standard operating procedures
- Checklists
- Best practices
- Automation
Failure mode: Complacency. Treating complex problems as clear leads to oversimplification.
Characteristics:
Approach: Sense → Analyze → Respond
Problem: Application performance degradation
Sense: Response times increased 3x
Analyze: Profile, trace, identify bottleneck (requires expertise)
Respond: Apply appropriate fix based on analysis
Appropriate method:
- Expert analysis
- Waterfall/planning
- Detailed specifications
- Engineering analysis
- Multiple valid solutions
Failure mode: Analysis paralysis. Over-analyzing when action is needed, or treating complicated problems as if they're clear.
Characteristics:
Approach: Probe → Sense → Respond
Problem: User engagement is declining
Probe: Run experiments, try interventions
Sense: See what patterns emerge
Respond: Amplify what works, dampen what doesn't
Appropriate method:
- Safe-to-fail experiments
- Agile/iterative
- Prototyping
- A/B testing
- Emergent strategy
Failure mode: Trying to analyze/plan your way through complexity. The system is too interconnected for analysis; you must probe and learn.
Characteristics:
Approach: Act → Sense → Respond
Problem: Production is down, cause unknown
Act: Take immediate action to stabilize (rollback, failover)
Sense: Once stable, assess what happened
Respond: Move to complex/complicated domain for investigation
Appropriate method:
- Command and control
- Decisive action
- Rapid response
- Crisis management
Failure mode: Trying to analyze during chaos. The priority is stability, not understanding.
Characteristics:
Approach: Break the problem into parts, classify each part
Problem: "We need to fix our development process"
Reality: Some parts are clear (coding standards)
Some parts are complicated (architecture decisions)
Some parts are complex (team dynamics)
Solution: Break apart, apply appropriate approach to each
## Domain Assessment: [Problem]
Can you see clear cause-effect?
- [ ] Yes, obvious to everyone → CLEAR
- [ ] Yes, but requires expertise → COMPLICATED
- [ ] No, only visible after the fact → COMPLEX
- [ ] No, completely turbulent → CHAOTIC
- [ ] Unsure, mixed signals → DISORDER
| Domain | Test | If yes, stay | If no, reconsider |
|---|---|---|---|
| Clear | Do best practices exist and work reliably? | Clear | Maybe Complicated |
| Complicated | Can experts predict outcomes? | Complicated | Maybe Complex |
| Complex | Can you run safe-to-fail experiments? | Complex | Maybe Chaotic |
| Chaotic | Is the situation too turbulent to experiment? | Chaotic | Maybe Complex |
## Approach Selection
Domain: [Assessment result]
Appropriate approach:
- Decision-making style: [Best practice / Expert analysis / Experimentation / Crisis response]
- Planning depth: [Detailed / Moderate / Minimal / None]
- Methodology: [Process / Analysis / Agile / Command]
- Success measure: [Efficiency / Quality / Learning / Stability]
Symptom: Extensive planning, but outcomes keep surprising
Example: Detailed user research, perfect spec, but users don't engage
Why it fails: You can't analyze your way to understanding emergent behavior
Fix: Probe with experiments, sense patterns, iterate
Symptom: "Just do it" approach to expert problems
Example: "Build it like they did at [Company]" without understanding why
Why it fails: Context matters; expertise reveals nuances
Fix: Engage experts, analyze the specific situation
Symptom: Running experiments during a crisis
Example: "Let's A/B test during the outage"
Why it fails: Chaos requires immediate stability, not learning
Fix: Act decisively first, learn later
Symptom: Over-engineering simple problems
Example: Designing an architecture for "Hello World"
Why it fails: Wasted effort, delayed delivery
Fix: Apply best practice, don't over-analyze
## Clear Domain Practices
- Standard operating procedures
- Checklists (like the surgical checklist)
- Automation and scripting
- Documentation
- Training and certification
- Process compliance
Example applications:
- Deployment procedures
- Coding standards
- Basic incident response
- Onboarding checklists
## Complicated Domain Practices
- Expert analysis and consultation
- Structured problem-solving
- Architecture reviews
- Root cause analysis
- Design specifications
- Scenario planning
Example applications:
- System architecture
- Performance optimization
- Security review
- Technology selection
## Complex Domain Practices
- Safe-to-fail experiments
- Iterative development
- Retrospectives
- Emergent design
- Short feedback loops
- Feature flags
Example applications:
- Product development
- Team process improvement
- User experience design
- Organizational change
## Chaotic Domain Practices
- Decisive leadership
- Clear command
- Rapid triage
- Communication of actions
- Post-incident review (later)
Example applications:
- Major outages
- Security incidents
- Crisis response
- Emergency triage
# Cynefin Analysis: [Problem/Situation]
## Problem Statement
[Describe the problem]
## Domain Assessment
### Cause-Effect Analysis
Relationship: [Clear / Requires expertise / Retrospective / Turbulent]
Evidence: [What makes you believe this]
### Domain Classification
Domain: [Clear / Complicated / Complex / Chaotic / Disorder]
### Confidence Check
Could this be a different domain? [Assessment]
## Approach
Based on [domain], the appropriate approach is:
| Aspect | Approach |
|--------|----------|
| Decision style | [Best practice / Analysis / Experimentation / Crisis response] |
| Planning | [Detailed / Moderate / Minimal / None] |
| Methodology | [Process / Waterfall / Agile / Command] |
| Success metric | [Efficiency / Quality / Learning / Stability] |
## Specific Actions
Given the domain, I will:
1. [Action]
2. [Action]
"Complex systems are not causal—they're dispositional. You can't predict what will happen; you can only influence what might happen."
"The only way to understand a complex system is to probe it and see how it responds."
Different problems require different thinking. The failure isn't in your methodology—it's in applying the wrong methodology to the wrong domain. Match the approach to the problem, not the other way around.