10 KiB
| name | description | workflow_path | thisStepFile | nextStepFile | workflowFile | outputFile | domainComplexityCSV | advancedElicitationTask | partyModeWorkflow |
|---|---|---|---|---|---|---|---|---|---|
| step-05-domain | Explore domain-specific requirements for complex domains (optional step) | {project-root}/_bmad/bmm/workflows/2-plan-workflows/prd | {workflow_path}/steps/step-05-domain.md | {workflow_path}/steps/step-06-innovation.md | {workflow_path}/workflow.md | {planning_artifacts}/prd.md | {workflow_path}/domain-complexity.csv | {project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml | {project-root}/_bmad/core/workflows/party-mode/workflow.md |
Step 5: Domain-Specific Exploration
Progress: Step 5 of 11 - Next: Innovation Focus
MANDATORY EXECUTION RULES (READ FIRST):
-
🛑 NEVER generate content without user input
-
📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions
-
🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding
-
✅ ALWAYS treat this as collaborative discovery between PM peers
-
📋 YOU ARE A FACILITATOR, not a content generator
-
💬 FOCUS on domain-specific requirements and compliance needs
-
🎯 OPTIONAL STEP: Only proceed if complexity_level = "high" from step-02
-
✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config
{communication_language}
EXECUTION PROTOCOLS:
- 🎯 Show your analysis before taking any action
- ⚠️ Present A/P/C menu after generating domain content
- 💾 ONLY save when user chooses C (Continue)
- 📖 Update frontmatter
stepsCompleted: [1, 2, 3, 4, 5]before loading next step - 🚫 FORBIDDEN to load next step until C is selected
COLLABORATION MENUS (A/P/C):
This step will generate content and present choices:
- A (Advanced Elicitation): Use discovery protocols to develop deeper domain insights
- P (Party Mode): Bring domain expertise perspectives to explore requirements
- C (Continue): Save the content to the document and proceed to next step
PROTOCOL INTEGRATION:
- When 'A' selected: Execute {project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml
- When 'P' selected: Execute {project-root}/_bmad/core/workflows/party-mode/workflow.md
- PROTOCOLS always return to this step's A/P/C menu
- User accepts/rejects protocol changes before proceeding
CONTEXT BOUNDARIES:
- Current document and frontmatter from previous steps are available
- Domain complexity from step-02 should be "high" to justify this step
- Domain-specific CSV data will be loaded in this step
- Focus on compliance, regulations, and domain-specific constraints
OPTIONAL STEP CHECK:
Before proceeding with this step, verify:
- Is
complexity_levelfrom step-02 equal to "high" and/or does the domain have specific regulatory/compliance needs? - Would domain exploration significantly impact the product requirements?
If NO to these questions, skip this step and load {project-root}/_bmad/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md.
YOUR TASK:
Explore domain-specific requirements for complex domains that need specialized compliance, regulatory, or industry-specific considerations.
DOMAIN EXPLORATION SEQUENCE:
1. Load Domain Configuration Data
Load domain-specific configuration for complex domains:
- Load
{project-root}/_bmad/bmm/workflows/2-plan-workflows/prd/domain-complexity.csvcompletely - Find the row where
domainmatches the detected domain from step-02 - Extract these columns:
key_concerns(semicolon-separated list)required_knowledge(domain expertise needed)web_searches(suggested research queries)special_sections(domain-specific sections to document)
2. Present Domain Complexity Context
Start by explaining why this step is needed: "Since {{project_name}} is in the {domain} domain with high complexity, we need to explore domain-specific requirements.
Key Concerns for {domain}: [List the key_concerns from CSV]
This step will help us understand regulatory requirements, compliance needs, and industry-specific constraints that will shape our product."
3. Explore Domain-Specific Requirements
For each concern in key_concerns from the CSV:
Domain Concern Exploration:
- Ask the user about their approach to this concern
- Discuss implications for the product design and requirements
- Document specific requirements, constraints, and compliance needs
Example for Healthcare Domain: If key_concerns = "FDA approval;Clinical validation;HIPAA compliance;Patient safety;Medical device classification;Liability"
Ask about each:
- "Will this product require FDA approval? What classification?"
- "How will you validate clinical accuracy and safety?"
- "What HIPAA compliance measures are needed?"
- "What patient safety protocols must be in place?"
- "What liability considerations affect the design?"
4. Synthesize Domain Requirements
Based on the conversation, synthesize domain requirements that will shape everything:
Categories to Document:
- Regulatory requirements (from key_concerns)
- Compliance needs (from key_concerns)
- Industry standards (from required_knowledge)
- Safety/risk factors (from key_concerns)
- Required validations (from key_concerns)
- Special expertise needed (from required_knowledge)
Explain how these inform:
- What features are mandatory
- What NFRs are critical
- How to sequence development
- What validation is required
5. Generate Domain-Specific Content
Prepare the content to append to the document:
Content Structure:
When saving to document, append these Level 2 and Level 3 sections:
## Domain-Specific Requirements
### [Domain Name] Compliance & Regulatory Overview
[Domain context summary based on conversation]
### Key Domain Concerns
[Key concerns addressed based on conversation]
### Compliance Requirements
[Compliance requirements based on conversation]
### Industry Standards & Best Practices
[Industry standards based on conversation]
### Required Expertise & Validation
[Required knowledge and validation based on conversation]
### Implementation Considerations
[Implementation implications based on conversation]
6. Handle Special Sections
Parse special_sections list from the matched CSV row. For each section name, generate corresponding subsections:
Example mappings from CSV:
- "clinical_requirements" → Add clinical validation requirements
- "regulatory_pathway" → Document approval pathway timeline
- "safety_measures" → Specify safety protocols and monitoring
- "compliance_matrix" → Create compliance tracking matrix
7. Present Content and Menu
Show the generated domain content and present choices: "I've documented the {domain}-specific requirements that will shape {{project_name}}. These constraints are critical for success in this complex domain.
Here's what I'll add to the document:
[Show the complete markdown content from step 6]
What would you like to do? [A] Advanced Elicitation - Let's dive deeper into these domain requirements [P] Party Mode - Bring domain expertise perspectives to validate requirements [C] Continue - Save this and move to Innovation Focus (Step 6 of 11)"
8. Handle Menu Selection
If 'A' (Advanced Elicitation):
- Execute {project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml with the current domain content
- Process the enhanced domain insights that come back
- Ask user: "Accept these domain requirement improvements? (y/n)"
- If yes: Update content with improvements, then return to A/P/C menu
- If no: Keep original content, then return to A/P/C menu
If 'P' (Party Mode):
- Execute {project-root}/_bmad/core/workflows/party-mode/workflow.md with the current domain requirements
- Process the collaborative domain expertise and validation
- Ask user: "Accept these changes to domain requirements? (y/n)"
- If yes: Update content with improvements, then return to A/P/C menu
- If no: Keep original content, then return to A/P/C menu
If 'C' (Continue):
- Append the content to
{outputFile} - Update frontmatter: add this step name to the end of the steps completed array
- Load
{project-root}/_bmad/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md
APPEND TO DOCUMENT:
When user selects 'C', append the content directly to the document using the structure from step 6.
SUCCESS METRICS:
✅ Domain complexity properly validated as high before proceeding ✅ All key concerns from CSV explored with user input ✅ Compliance requirements clearly documented ✅ Domain expertise needs identified and documented ✅ Special sections generated per CSV configuration ✅ A/P/C menu presented and handled correctly ✅ Content properly appended to document when C selected
FAILURE MODES:
❌ Proceeding with domain exploration when complexity is not high ❌ Not loading or using CSV domain configuration properly ❌ Missing critical domain concerns from the key_concerns list ❌ Not connecting domain requirements to product implications ❌ Generating generic content without domain-specific details ❌ Not presenting A/P/C menu after content generation ❌ Appending content without user selecting 'C'
❌ CRITICAL: Reading only partial step file - leads to incomplete understanding and poor decisions ❌ CRITICAL: Proceeding with 'C' without fully reading and understanding the next step file ❌ CRITICAL: Making decisions without complete understanding of step requirements and protocols
SKIP CONDITIONS:
Skip this step and load {project-root}/_bmad/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md if:
complexity_levelfrom step-02 is not "high"- Domain has no specific regulatory/compliance requirements
- User confirms domain exploration is not needed
NEXT STEP:
After user selects 'C' and content is saved to document, load {project-root}/_bmad/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md.
Remember: Do NOT proceed to step-06 until user explicitly selects 'C' from the A/P/C menu and content is saved!