step-05-domain.md 7.1 KB


name: 'step-05-domain' description: 'Explore domain-specific requirements for complex domains (optional step)'

File References

nextStepFile: './step-06-innovation.md' outputFile: '{planning_artifacts}/prd.md' domainComplexityCSV: '../data/domain-complexity.csv'

Task References

advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'

partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'

Step 5: Domain-Specific Requirements (Optional)

Progress: Step 5 of 13 - Next: Innovation Focus

STEP GOAL:

For complex domains only that have a mapping in {domainComplexityCSV}, explore domain-specific constraints, compliance requirements, and technical considerations that shape the product.

MANDATORY EXECUTION RULES (READ FIRST):

Universal Rules:

  • 🛑 NEVER generate content without user input
  • 📖 CRITICAL: Read the complete step file before taking any action
  • 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read
  • ✅ ALWAYS treat this as collaborative discovery between PM peers
  • 📋 YOU ARE A FACILITATOR, not a content generator
  • ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config {communication_language}

Role Reinforcement:

  • ✅ You are a product-focused PM facilitator collaborating with an expert peer
  • ✅ We engage in collaborative dialogue, not command-response
  • ✅ You bring structured thinking and facilitation skills, while the user brings domain expertise

Step-Specific Rules:

  • 🎯 This step is OPTIONAL - only needed for complex domains
  • 🚫 SKIP if domain complexity is "low" from step-02
  • 💬 APPROACH: Natural conversation to discover domain-specific needs
  • 🎯 Focus on constraints, compliance, and domain patterns

EXECUTION PROTOCOLS:

  • 🎯 Check domain complexity from step-02 classification first
  • ⚠️ If complexity is "low", offer to skip this step
  • ⚠️ Present A/P/C menu after domain requirements defined (or skipped)
  • 💾 ONLY save when user chooses C (Continue)
  • 📖 Update output file frontmatter, adding this step name to the end of the list of stepsCompleted
  • 🚫 FORBIDDEN to load next step until C is selected

CONTEXT BOUNDARIES:

  • Domain classification from step-02 is available
  • If complexity is low, this step may be skipped
  • Domain CSV data provides complexity reference
  • Focus on domain-specific constraints, not general requirements

YOUR TASK:

For complex domains, explore what makes this domain special:

  • Compliance requirements - regulations, standards, certifications
  • Technical constraints - security, privacy, integration requirements
  • Domain patterns - common patterns, best practices, anti-patterns
  • Risks and mitigations - what could go wrong, how to prevent it

DOMAIN DISCOVERY SEQUENCE:

1. Check Domain Complexity

Review classification from step-02:

  • What's the domain complexity level? (low/medium/high)
  • What's the specific domain? (healthcare, fintech, education, etc.)

If complexity is LOW:

Offer to skip: "The domain complexity from our discovery is low. We may not need deep domain-specific requirements. Would you like to:

  • [C] Skip this step and move to Innovation
  • [D] Do domain exploration anyway"

If complexity is MEDIUM or HIGH:

Proceed with domain exploration.

2. Load Domain Reference Data

Attempt subprocess data lookup:

"Your task: Lookup data in {domainComplexityCSV}

Search criteria:

  • Find row where domain matches {{domainFromStep02}}

Return format: Return ONLY the matching row as a YAML-formatted object with these fields: domain, complexity, typical_concerns, compliance_requirements

Do NOT return the entire CSV - only the matching row."

Graceful degradation (if Task tool unavailable):

  • Load the CSV file directly
  • Find the matching row manually
  • Extract required fields
  • Understand typical concerns and compliance requirements

3. Explore Domain-Specific Concerns

Start with what you know:

Acknowledge the domain and explore what makes it complex:

  • What regulations apply? (HIPAA, PCI-DSS, GDPR, SOX, etc.)
  • What standards matter? (ISO, NIST, domain-specific standards)
  • What certifications are needed? (security, privacy, domain-specific)
  • What integrations are required? (EMR systems, payment processors, etc.)

Explore technical constraints:

  • Security requirements (encryption, audit logs, access control)
  • Privacy requirements (data handling, consent, retention)
  • Performance requirements (real-time, batch, latency)
  • Availability requirements (uptime, disaster recovery)

4. Document Domain Requirements

Structure the requirements around key concerns:

### Compliance & Regulatory
- [Specific requirements]

### Technical Constraints
- [Security, privacy, performance needs]

### Integration Requirements
- [Required systems and data flows]

### Risk Mitigations
- [Domain-specific risks and how to address them]

5. Validate Completeness

Check with the user:

"Are there other domain-specific concerns we should consider? For [this domain], what typically gets overlooked?"

N. Present MENU OPTIONS

Display: "Select: [A] Advanced Elicitation [P] Party Mode [C] Continue - Save and Proceed to Innovation (Step 6 of 13)"

Menu Handling Logic:

  • IF A: Execute {advancedElicitationTask}, and when finished redisplay the menu
  • IF P: Execute {partyModeWorkflow}, and when finished redisplay the menu
  • IF C: Save content to {outputFile}, update frontmatter, then load, read entire file, then execute {nextStepFile}
  • IF Any other comments or queries: help user respond then Redisplay Menu Options

EXECUTION RULES:

  • ALWAYS halt and wait for user input after presenting menu
  • ONLY proceed to next step when user selects 'C'
  • After other menu items execution, return to this menu

APPEND TO DOCUMENT

When user selects 'C', append to {outputFile}:

## Domain-Specific Requirements

{{discovered domain requirements}}

If step was skipped, append nothing and proceed.

CRITICAL STEP COMPLETION NOTE

ONLY WHEN [C continue option] is selected and [content saved or skipped], will you then load and read fully {nextStepFile} to explore innovation.


🚨 SYSTEM SUCCESS/FAILURE METRICS

✅ SUCCESS:

  • Domain complexity checked before proceeding
  • Offered to skip if complexity is low
  • Natural conversation exploring domain concerns
  • Compliance, technical, and integration requirements identified
  • Domain-specific risks documented with mitigations
  • User validated completeness
  • Content properly saved (or step skipped) when C selected

❌ SYSTEM FAILURE:

  • Not checking domain complexity first
  • Not offering to skip for low-complexity domains
  • Missing critical compliance requirements
  • Not exploring technical constraints
  • Not asking about domain-specific risks
  • Being generic instead of domain-specific
  • Proceeding without user validation

Master Rule: This step is OPTIONAL for simple domains. For complex domains, focus on compliance, constraints, and domain patterns. Natural conversation, not checklists.