How to Use This Checklist
Quality Assessment Flow
Use this visual assessment to evaluate your stakeholder engagement. Work through each checkpoint—if you encounter issues, follow the guidance to address them before moving to data synthesis.
graph TB
%% ========================================
%% START NODE
%% ========================================
START(["🔍 EVALUATE YOUR<br/><br/><strong>STAKEHOLDER</strong><br/><strong>ENGAGEMENT</strong>"])
%% ========================================
%% QUALITY INDICATORS SECTION
%% ========================================
subgraph QUALITY ["✅ QUALITY INDICATORS"]
direction TB
Q1["✅ CHECKPOINT 1<br/><br/><strong>Diversity of</strong><br/><strong>Perspectives</strong>"]
Q1_PASS["✓ PASS<br/><br/>Different roles<br/>Marginalized voices<br/>Skeptics included<br/>Multiple demographics"]
Q1_FAIL["❌ NEEDS WORK<br/><br/>Limited perspectives<br/>Echo chamber"]
Q1_FIX["🔧 FIX<br/><br/>Expand your<br/>stakeholder list"]
Q2["✅ CHECKPOINT 2<br/><br/><strong>Depth of</strong><br/><strong>Learning</strong>"]
Q2_PASS["✓ PASS<br/><br/>Assumptions challenged<br/>New discoveries<br/>History learned<br/>Understand what works"]
Q2_FAIL["❌ NEEDS WORK<br/><br/>No surprises<br/>Only confirmation"]
Q2_FIX["🔧 FIX<br/><br/>Ask deeper<br/>open questions"]
Q3["✅ CHECKPOINT 3<br/><br/><strong>Relationship</strong><br/><strong>Building</strong>"]
Q3_PASS["✓ PASS<br/><br/>Trust built<br/>Ongoing support<br/>Partners identified<br/>Appreciation expressed"]
Q3_FAIL["❌ NEEDS WORK<br/><br/>Transactional only<br/>No follow-up interest"]
Q3_FIX["🔧 FIX<br/><br/>Follow up and<br/>share credit"]
Q4["✅ CHECKPOINT 4<br/><br/><strong>Practical</strong><br/><strong>Insights</strong>"]
Q4_PASS["✓ PASS<br/><br/>Barriers understood<br/>Resources found<br/>Allies identified<br/>Success defined"]
Q4_FAIL["❌ NEEDS WORK<br/><br/>Surface-level data<br/>Missing barriers"]
Q4_FIX["🔧 FIX<br/><br/>Dig into<br/>implementation details"]
end
%% ========================================
%% RED FLAGS SECTION
%% ========================================
subgraph REDFLAGS ["🚩 RED FLAG CHECKS"]
direction TB
RF1{"🚩 Confirmation<br/>Bias?<br/><br/>Only hearing<br/>agreement?"}
RF1_NO["✓ CLEAR<br/><br/>Diverse perspectives<br/>heard"]
RF1_YES["⚠️ WARNING<br/><br/>Only validation<br/>Leading questions"]
RF1_FIX["🔧 FIX<br/><br/>Seek skeptics<br/>Ask open questions"]
RF2{"🚩 Superficial<br/>Engagement?<br/><br/>Rushed or<br/>guarded?"}
RF2_NO["✓ CLEAR<br/><br/>Deep authentic<br/>conversations"]
RF2_YES["⚠️ WARNING<br/><br/>Surface responses<br/>Disengagement"]
RF2_FIX["🔧 FIX<br/><br/>Slow down<br/>Build rapport first"]
RF3{"🚩 Power<br/>Dynamics?<br/><br/>Voices being<br/>silenced?"}
RF3_NO["✓ CLEAR<br/><br/>All voices<br/>heard equally"]
RF3_YES["⚠️ WARNING<br/><br/>Dominant voices<br/>People pleasing"]
RF3_FIX["🔧 FIX<br/><br/>One-on-one talks<br/>Use intermediaries"]
end
%% ========================================
%% END NODE
%% ========================================
READY(["🎉 READY FOR<br/><br/><strong>DATA SYNTHESIS</strong><br/><br/>Proceed to Lesson 1.3<br/>Affinity Diagrams"])
%% ========================================
%% FLOW CONNECTIONS
%% ========================================
START --> Q1
Q1 --> Q1_PASS
Q1 --> Q1_FAIL
Q1_PASS --> Q2
Q1_FAIL --> Q1_FIX
Q1_FIX -.-> Q1
Q2 --> Q2_PASS
Q2 --> Q2_FAIL
Q2_PASS --> Q3
Q2_FAIL --> Q2_FIX
Q2_FIX -.-> Q2
Q3 --> Q3_PASS
Q3 --> Q3_FAIL
Q3_PASS --> Q4
Q3_FAIL --> Q3_FIX
Q3_FIX -.-> Q3
Q4 --> Q4_PASS
Q4 --> Q4_FAIL
Q4_PASS --> RF1
Q4_FAIL --> Q4_FIX
Q4_FIX -.-> Q4
RF1 -->|No| RF1_NO
RF1 -->|Yes| RF1_YES
RF1_NO --> RF2
RF1_YES --> RF1_FIX
RF1_FIX -.-> RF1
RF2 -->|No| RF2_NO
RF2 -->|Yes| RF2_YES
RF2_NO --> RF3
RF2_YES --> RF2_FIX
RF2_FIX -.-> RF2
RF3 -->|No| RF3_NO
RF3 -->|Yes| RF3_YES
RF3_NO --> READY
RF3_YES --> RF3_FIX
RF3_FIX -.-> RF3
%% ========================================
%% FESTA DESIGN SYSTEM COLORS
%% ========================================
%% Start/End nodes
style START fill:#6B7280,stroke:#4B5563,stroke-width:3px,color:#fff
style READY fill:#007F4E,stroke:#00b369,stroke-width:4px,color:#fff
%% Quality section
style QUALITY fill:#D1FAE5,stroke:#10B981,stroke-width:2px,color:#2A2A2A
%% Checkpoint nodes
style Q1 fill:#D1FAE5,stroke:#10B981,stroke-width:2px,color:#2A2A2A
style Q2 fill:#D1FAE5,stroke:#10B981,stroke-width:2px,color:#2A2A2A
style Q3 fill:#D1FAE5,stroke:#10B981,stroke-width:2px,color:#2A2A2A
style Q4 fill:#D1FAE5,stroke:#10B981,stroke-width:2px,color:#2A2A2A
%% Pass nodes
style Q1_PASS fill:#BBF7D0,stroke:#72B043,stroke-width:2px,color:#2A2A2A
style Q2_PASS fill:#BBF7D0,stroke:#72B043,stroke-width:2px,color:#2A2A2A
style Q3_PASS fill:#BBF7D0,stroke:#72B043,stroke-width:2px,color:#2A2A2A
style Q4_PASS fill:#BBF7D0,stroke:#72B043,stroke-width:2px,color:#2A2A2A
%% Fail nodes
style Q1_FAIL fill:#FEE2E2,stroke:#EF4444,stroke-width:2px,color:#2A2A2A
style Q2_FAIL fill:#FEE2E2,stroke:#EF4444,stroke-width:2px,color:#2A2A2A
style Q3_FAIL fill:#FEE2E2,stroke:#EF4444,stroke-width:2px,color:#2A2A2A
style Q4_FAIL fill:#FEE2E2,stroke:#EF4444,stroke-width:2px,color:#2A2A2A
%% Fix nodes
style Q1_FIX fill:#FED7AA,stroke:#F97316,stroke-width:2px,color:#2A2A2A
style Q2_FIX fill:#FED7AA,stroke:#F97316,stroke-width:2px,color:#2A2A2A
style Q3_FIX fill:#FED7AA,stroke:#F97316,stroke-width:2px,color:#2A2A2A
style Q4_FIX fill:#FED7AA,stroke:#F97316,stroke-width:2px,color:#2A2A2A
%% Red flags section
style REDFLAGS fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px,color:#2A2A2A
%% Red flag decision nodes
style RF1 fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px,color:#2A2A2A
style RF2 fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px,color:#2A2A2A
style RF3 fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px,color:#2A2A2A
%% Red flag clear nodes
style RF1_NO fill:#BBF7D0,stroke:#72B043,stroke-width:2px,color:#2A2A2A
style RF2_NO fill:#BBF7D0,stroke:#72B043,stroke-width:2px,color:#2A2A2A
style RF3_NO fill:#BBF7D0,stroke:#72B043,stroke-width:2px,color:#2A2A2A
%% Red flag warning nodes
style RF1_YES fill:#FEE2E2,stroke:#EF4444,stroke-width:2px,color:#2A2A2A
style RF2_YES fill:#FEE2E2,stroke:#EF4444,stroke-width:2px,color:#2A2A2A
style RF3_YES fill:#FEE2E2,stroke:#EF4444,stroke-width:2px,color:#2A2A2A
%% Red flag fix nodes
style RF1_FIX fill:#FED7AA,stroke:#F97316,stroke-width:2px,color:#2A2A2A
style RF2_FIX fill:#FED7AA,stroke:#F97316,stroke-width:2px,color:#2A2A2A
style RF3_FIX fill:#FED7AA,stroke:#F97316,stroke-width:2px,color:#2A2A2A
How to Read This Assessment
💡 Advanced Tips
For Engaging Hard-to-Reach Stakeholders
- Work through trusted intermediaries who already have relationships
- Attend existing community events rather than creating new meetings
- Offer value in return - share information, connections, or resources they need
- Be flexible with timing and format to accommodate their schedules and preferences
For Managing Conflicting Input
- Document all perspectives without immediately trying to resolve contradictions
- Look for underlying interests behind different positions
- Consider that different stakeholders may be describing different aspects of a complex problem
- Plan additional conversations to explore contradictions more deeply
For Building Long-term Relationships
- Follow through on commitments made during initial conversations
- Share credit generously when presenting findings or developing proposals
- Create ongoing communication channels for stakeholders who want to stay involved
- Look for ways to support their priorities even if not directly related to your project
What's Next?
Once you've validated the quality of your stakeholder engagement, you're ready to see how this work informs the next step: synthesizing all your research data (Problem Tree + stakeholder insights) using Affinity Diagrams.
Ready to See Real Examples?
Explore complete stakeholder mapping examples from real projects to see how these principles apply in practice.