Core BDD concepts, philosophy, and the Three Amigos practice
View on GitHubTheBushidoCollective/han
jutsu-bdd
January 24, 2026
Select agents to install to:
npx add-skill https://github.com/TheBushidoCollective/han/blob/main/jutsu/jutsu-bdd/skills/bdd-principles/SKILL.md -a claude-code --skill bdd-principlesInstallation paths:
.claude/skills/bdd-principles/# BDD Principles Master the foundational principles and philosophy of Behavior-Driven Development. ## What is BDD? Behavior-Driven Development (BDD) is a collaborative software development approach that: - Bridges the gap between business and technical teams - Uses concrete examples to describe system behavior - Creates living documentation that serves as tests - Focuses on delivering business value - Promotes shared understanding through conversation ## Core Philosophy ### Discovery > Development > Delivery **Discovery**: Collaborate to understand requirements - Hold Three Amigos sessions - Explore with examples - Challenge assumptions - Build shared understanding **Development**: Implement guided by examples - Use examples as specifications - Automate examples as tests - Follow outside-in TDD **Delivery**: Validate against real behavior - Executable specifications provide confidence - Living documentation stays current - Regressions are caught early ## The Three Amigos A practice where three perspectives collaborate to explore and define features: ### 1. Business Perspective (Product Owner/BA) - What problem are we solving? - What value does it provide? - What are the business rules? ### 2. Development Perspective (Developer) - How might we build this? - What are the technical constraints? - What are the edge cases? ### 3. Testing Perspective (Tester/QA) - What could go wrong? - What are we missing? - How will we verify this works? ### Example Three Amigos Session **Feature**: Password Reset **Business**: "Users who forget their password need a way to reset it via email." **Developer**: "We'll need to generate secure tokens with expiration. How long should tokens be valid?" **Tester**: "What happens if they request multiple reset emails? Can old tokens still be used?" **Business**: "Tokens should be valid for 1 hour. Multiple requests should invalidate old tokens." **Developer**: "Should we rate-limit reset requests to prevent abuse?" *