# BMM Solutioning Workflows (Phase 3)
## Overview
Phase 3 (Solutioning) workflows translate **what** to build (from Planning) into **how** to build it (technical design). This phase is **required for Levels 3-4** and **optional for Level 2** projects.
**Key principle:** Prevent agent conflicts by making architectural decisions explicit and documented before implementation begins.
---
## Phase 3 Solutioning Flow
```mermaid
%%{init: {'theme':'base', 'themeVariables': { 'primaryColor':'#fff','primaryTextColor':'#000','primaryBorderColor':'#000','lineColor':'#000','fontSize':'16px','fontFamily':'arial'}}}%%
graph TB
FromPRD["FROM Phase 2
PRD/GDD/Narrative/UX complete"]
subgraph Solutioning["PHASE 3: SOLUTIONING"]
direction TB
Architecture["Architect: architecture
Technical design and decisions"]
GateCheck["Architect: solutioning-gate-check
Validation before implementation"]
end
subgraph Optional["OPTIONAL PATHS"]
direction LR
Level2Skip["Level 2:
Skip if straightforward"]
end
FromPRD --> Architecture
Architecture --> GateCheck
GateCheck -->|PASS| Phase4["Phase 4: Implementation"]
GateCheck -->|CONCERNS/FAIL| Architecture
FromPRD -.->|Level 2 only| Level2Skip
Level2Skip -.-> Phase4
style FromPRD fill:#e1bee7,stroke:#6a1b9a,stroke-width:2px,color:#000
style Solutioning fill:#90caf9,stroke:#0d47a1,stroke-width:3px,color:#000
style Optional fill:#fff9c4,stroke:#f57f17,stroke-width:3px,color:#000
style Phase4 fill:#ffcc80,stroke:#e65100,stroke-width:2px,color:#000
style Architecture fill:#64b5f6,stroke:#0d47a1,stroke-width:2px,color:#000
style GateCheck fill:#64b5f6,stroke:#0d47a1,stroke-width:2px,color:#000
style Level2Skip fill:#fff59d,stroke:#f57f17,stroke-width:2px,color:#000
```
---
## Quick Reference
| Workflow | Project Levels | Purpose |
| -------------------------- | -------------- | ------------------------------------------- |
| **architecture** | 2-4 | Technical architecture and design decisions |
| **solutioning-gate-check** | 3-4 | Validate planning/solutioning completeness |
**When to Skip Solutioning:**
- **Level 0-1**: Simple changes don't need architecture → Skip to Phase 4 (Implementation)
- **Level 2**: Optional - use if technically complex, skip if straightforward
**When Solutioning is Required:**
- **Level 3-4**: Multi-epic, multi-agent projects → Architecture prevents conflicts
---
## Understanding the Solutioning Phase
### Why Solutioning Matters
**Problem Without Solutioning:**
1. DEV agent implements Epic 1 using REST API
2. DEV agent implements Epic 2 using GraphQL
3. **Conflict**: Inconsistent API design, integration nightmare
**Solution With Solutioning:**
1. **architecture** workflow decides: "Use GraphQL for all APIs"
2. All DEV agents follow architecture decisions
3. **Result**: Consistent implementation, no conflicts
### Solutioning vs Planning
| Aspect | Planning (Phase 2) | Solutioning (Phase 3) |
| -------- | ------------------ | ------------------------ |
| Question | What and Why? | How? |
| Output | Requirements | Technical Design |
| Agent | PM | Architect |
| Audience | Stakeholders | Developers |
| Document | PRD/GDD | Architecture + Tech Spec |
| Level | Business logic | Implementation detail |
### Scale-Adaptive Solutioning
**Level 0-1 (Skip Solutioning):**
- Planning: Quick Spec (tech-spec workflow)
- Solutioning: **None**
- Implementation: dev-story directly
**Level 2 (Optional Solutioning):**
- Planning: Lightweight PRD
- Solutioning: **Optional** architecture
- Implementation: dev-story with or without architecture
**Level 3-4 (Required Solutioning):**
- Planning: Standard/Comprehensive PRD
- Solutioning: **Required** architecture + epic-tech-context
- Gate Check: **Required** solutioning-gate-check
- Implementation: dev-story guided by architecture
---
## architecture
### Purpose
Collaborative architectural decision facilitation that produces a decision-focused architecture document optimized for preventing agent conflicts. Replaces template-driven architecture with intelligent, adaptive conversation.
**Agent:** Architect
**Phase:** 3 (Solutioning)
**Project Levels:** 2-4
**Required:** Level 3-4, Optional Level 2
### When to Use
- Multi-epic projects (Level 3-4)
- Cross-cutting technical concerns
- Multiple agents will implement different parts
- Integration complexity exists
- Technology choices need alignment
**When to Skip:**
- Level 0-1 (simple changes)
- Level 2 with straightforward tech stack
- Single epic with clear technical approach
### Adaptive Conversation Approach
**This is NOT a template filler.** The architecture workflow:
1. **Discovers** your technical needs through conversation
2. **Proposes** architectural options with trade-offs
3. **Documents** decisions that prevent agent conflicts
4. **Focuses** on decision points, not exhaustive documentation
### Process Overview
**Phase 1: Context Discovery (Steps 1-3)**
- Load PRD/GDD for requirements
- Understand project level and complexity
- Identify technical constraints
- Determine existing architecture (if brownfield)
**Phase 2: Architecture Definition (Steps 4-10)**
- System architecture (monolith, microservices, etc.)
- Data architecture (database, state management)
- API design (REST, GraphQL, gRPC)
- Frontend architecture (if applicable)
- Integration patterns
- Security architecture
- Deployment architecture
**Phase 3: Decision Documentation (Steps 11-13)**
- Architecture Decision Records (ADRs)
- Trade-off analysis
- Technology selections with rationale
- Non-negotiable standards
**Phase 4: Implementation Guidance (Step 14)**
- Epic-specific technical notes
- Directory structure
- Coding standards
- Testing strategy
### Inputs
Required:
- **PRD.md** or **GDD.md** (from Phase 2)
- **epics.md** (epic breakdown)
Optional:
- Existing architecture documentation (brownfield)
- Technical constraints document
- Infrastructure requirements
- Security requirements
### Outputs
**Primary Output:** `architecture-{project-name}-{date}.md`
**Document Structure:**
**1. Architecture Overview**
- System context
- Key principles
- Architectural style
**2. System Architecture**
- High-level system diagram
- Component interactions
- Communication patterns
**3. Data Architecture**
- Database design approach
- State management
- Caching strategy
- Data flow
**4. API Architecture**
- API style (REST/GraphQL/gRPC)
- Authentication/authorization
- Versioning strategy
- Error handling patterns
**5. Frontend Architecture** (if applicable)
- Framework selection
- State management
- Component architecture
- Routing approach
**6. Integration Architecture**
- Third-party integrations
- Message queuing
- Event-driven patterns
- API gateways
**7. Security Architecture**
- Authentication/authorization
- Data protection
- Security boundaries
- Compliance requirements
**8. Deployment Architecture**
- Deployment model
- CI/CD pipeline
- Environment strategy
- Monitoring and observability
**9. Architecture Decision Records (ADRs)**
- Key decisions with context
- Options considered
- Trade-off analysis
- Rationale for choices
**10. Epic-Specific Guidance**
- Technical notes per epic
- Implementation priorities
- Dependency sequencing
**11. Standards and Conventions**
- Directory structure
- Naming conventions
- Code organization
- Testing requirements
### Architecture Decision Records (ADRs)
**Purpose:** Document **why** decisions were made, not just what was decided.
**ADR Template:**
```markdown
## ADR-001: Use GraphQL for All APIs
**Status:** Accepted
**Date:** 2025-11-02
**Context:** PRD requires flexible querying across multiple epics
**Decision:** Use GraphQL for all client-server communication
**Options Considered:**
1. REST API - Familiar, well-understood, but requires multiple endpoints
2. GraphQL - Flexible querying, single endpoint, learning curve
3. gRPC - High performance, but poor browser support
**Rationale:**
- PRD requires flexible data fetching (Epic 1, Epic 3)
- Mobile app needs bandwidth optimization (Epic 2)
- Team has GraphQL experience from previous project
- Allows frontend flexibility without backend changes
**Consequences:**
- Positive: Flexible querying, reduced API versioning
- Negative: Caching complexity, N+1 query risk
- Mitigation: Use DataLoader for batching
**Implications for Epics:**
- Epic 1: User Management → GraphQL mutations
- Epic 2: Mobile App → Optimized queries
- Epic 3: Admin Dashboard → Complex nested queries
```
### Example: Level 3 Architecture for E-Commerce Platform
**System Architecture:**
- Monolith (early stage, < 50K users)
- PostgreSQL database
- Redis for caching and sessions
- Next.js for frontend
- Deployed on Vercel + Railway
**Key ADRs:**
1. **ADR-001**: Use Next.js (vs React + Express)
- Rationale: SEO critical, SSR needed, unified codebase
2. **ADR-002**: Use GraphQL (vs REST)
- Rationale: Flexible querying for dashboard, mobile optimization
3. **ADR-003**: Use Stripe (vs PayPal + Stripe)
- Rationale: Simpler integration, lower fees, better UX
**Epic Guidance:**
- **Epic 1 (Auth)**: NextAuth.js with PostgreSQL adapter
- **Epic 2 (Products)**: GraphQL with DataLoader for categories
- **Epic 3 (Cart)**: Redis for session-based cart (no DB writes)
- **Epic 4 (Checkout)**: Stripe webhooks for payment confirmation
**Standards:**
```
Directory Structure:
/pages - Next.js routes
/components - Reusable UI components
/lib - Business logic
/graphql - GraphQL schema and resolvers
/db - Prisma models and migrations
/services - Third-party integrations
/tests - Test files mirror /lib
```
### Related Workflows
- **prd/gdd** (Phase 2) - Requirements input
- **solutioning-gate-check** (Phase 3) - Validate completeness
- **tech-spec** (Phase 3) - Epic-level specifications (optional)
- **sprint-planning** (Phase 4) - Implementation tracking
---
## solutioning-gate-check
### Purpose
Systematically validate that all planning and solutioning phases are complete and properly aligned before transitioning to Phase 4 implementation. Ensures PRD, architecture, and stories are cohesive with no gaps or contradictions.
**Agent:** SM (Scrum Master)
**Phase:** 3 (Solutioning)
**Project Levels:** 3-4
**Required:** Level 3-4 only
### When to Use
**Always run before starting Phase 4** for Level 3-4 projects.
**Trigger Points:**
- After architecture workflow completes
- Before sprint-planning workflow
- When stakeholders request readiness check
- Before kicking off implementation
**Skip if:**
- Level 0-2 (no solutioning phase)
- Exploratory prototype (no formal planning)
### Purpose of Gate Check
**Prevents Common Issues:**
- ❌ Architecture doesn't address all epics
- ❌ Stories conflict with architecture decisions
- ❌ Requirements ambiguous or contradictory
- ❌ Missing critical dependencies
- ❌ Unclear success criteria
**Ensures:**
- ✅ PRD → Architecture → Stories alignment
- ✅ All epics have clear technical approach
- ✅ No contradictions or gaps
- ✅ Team ready to implement
- ✅ Stakeholders aligned
### Process Overview
**Phase 1: Document Loading (Step 1)**
- Load PRD/GDD
- Load architecture document
- Load epic files
- Load story files (if created)
**Phase 2: Completeness Check (Steps 2-4)**
- **PRD Completeness**: All required sections present
- **Architecture Completeness**: All technical areas addressed
- **Epic Completeness**: All epics from PRD have stories
**Phase 3: Alignment Check (Steps 5-7)**
- **PRD ↔ Architecture**: Architecture addresses all requirements
- **Architecture ↔ Epics**: Epics align with architecture decisions
- **Cross-Epic**: No contradictions between epics
**Phase 4: Quality Check (Steps 8-10)**
- **Acceptance Criteria**: All stories have clear AC
- **Dependencies**: Dependencies identified and sequenced
- **Risks**: High-risk items have mitigation plans
**Phase 5: Reporting (Step 11)**
- Generate gate check report
- List gaps and blockers
- Provide recommendations
- Issue PASS/CONCERNS/FAIL decision
### Gate Check Criteria
**PRD/GDD Completeness:**
- [ ] Problem statement clear and evidence-based
- [ ] Success metrics defined
- [ ] User personas identified
- [ ] Feature requirements complete
- [ ] All epics defined with objectives
- [ ] Non-functional requirements (NFRs) specified
- [ ] Risks and assumptions documented
**Architecture Completeness:**
- [ ] System architecture defined
- [ ] Data architecture specified
- [ ] API architecture decided
- [ ] Key ADRs documented
- [ ] Security architecture addressed
- [ ] Epic-specific guidance provided
- [ ] Standards and conventions defined
**Epic/Story Completeness:**
- [ ] All PRD features mapped to stories
- [ ] Stories have acceptance criteria
- [ ] Stories prioritized (P0/P1/P2/P3)
- [ ] Dependencies identified
- [ ] Story sequencing logical
**Alignment Checks:**
- [ ] Architecture addresses all PRD requirements
- [ ] Stories align with architecture decisions
- [ ] No contradictions between epics
- [ ] NFRs have technical approach
- [ ] Integration points clear
**Quality Checks:**
- [ ] Acceptance criteria testable
- [ ] Stories appropriately sized (<5 days)
- [ ] High-risk items have mitigation
- [ ] Success metrics measurable
### Gate Decision Logic
**PASS** ✅
- All critical criteria met (PRD, Architecture, Epic completeness)
- Minor gaps acceptable with documented plan
- **Action**: Proceed to Phase 4 (Implementation)
**CONCERNS** ⚠️
- Some criteria not met but not blockers
- Gaps identified with clear resolution path
- Risks documented with mitigation
- **Action**: Proceed with caution, address gaps in parallel
**FAIL** ❌
- Critical gaps or contradictions
- Architecture missing key decisions
- Stories conflict with PRD/architecture
- **Action**: BLOCK Phase 4, resolve issues first
### Inputs
Required:
- PRD.md or GDD.md
- architecture.md
- epics.md
- Epic files (epic-1-_.md, epic-2-_.md, etc.)
Optional:
- Story files (if already created)
- Tech spec documents
### Outputs
**Primary Output:** `solutioning-gate-check-{date}.md`
**Document Structure:**
1. Executive Summary (PASS/CONCERNS/FAIL)
2. Completeness Assessment
- PRD/GDD Score
- Architecture Score
- Epic/Story Score
3. Alignment Assessment
- PRD ↔ Architecture alignment
- Architecture ↔ Epic alignment
- Cross-epic consistency
4. Quality Assessment
- Story quality
- Dependency clarity
- Risk mitigation
5. Gaps and Recommendations
- Critical gaps (blockers)
- Minor gaps (address in parallel)
- Recommendations for remediation
6. Gate Decision (PASS/CONCERNS/FAIL)
7. Next Steps
### Example: Gate Check for E-Commerce Platform
**Result:** CONCERNS ⚠️
**Completeness:**
- ✅ PRD complete (18/18 criteria)
- ⚠️ Architecture missing security section (15/18 criteria)
- ✅ Epics complete (24/24 criteria)
**Alignment:**
- ✅ PRD ↔ Architecture aligned
- ⚠️ Epic 4 (Checkout) has payment gateway undefined in architecture
- ✅ No cross-epic contradictions
**Quality:**
- ✅ Stories have acceptance criteria
- ⚠️ Epic 2, Story 3 is too large (10 day estimate)
- ✅ Dependencies identified
**Gaps Identified:**
1. **Critical**: Architecture missing security architecture section
- **Impact**: Epic 1 (Auth) and Epic 4 (Checkout) lack security guidance
- **Recommendation**: Complete security architecture
2. **High**: Payment gateway not selected
- **Impact**: Epic 4 (Checkout) cannot proceed
- **Recommendation**: Add ADR for payment gateway selection
3. **Medium**: Epic 2, Story 3 too large
- **Impact**: Risk of story scope creep
- **Recommendation**: Split into 2 stories
**Gate Decision:** CONCERNS ⚠️
- **Rationale**: Critical and high gaps block Epic 1 and Epic 4
- **Action**: Resolve gaps #1 and #2 before starting implementation
**Next Steps:**
1. Complete security architecture section
2. Document payment gateway ADR
3. Split Epic 2, Story 3
4. Re-run solutioning-gate-check
5. If PASS → Proceed to sprint-planning
### Related Workflows
- **architecture** (Phase 3) - Must complete before gate check
- **prd/gdd** (Phase 2) - Input to gate check
- **sprint-planning** (Phase 4) - Runs after PASS decision
---
## Integration with Phase 2 (Planning) and Phase 4 (Implementation)
### Planning → Solutioning Flow
**Level 0-1:**
```
Planning (tech-spec Quick Spec)
→ Skip Solutioning
→ Implementation (dev-story)
```
**Level 2:**
```
Planning (prd Lightweight)
→ Optional: architecture (if complex)
→ Implementation (sprint-planning → dev-story)
```
**Level 3-4:**
```
Planning (prd Standard/Comprehensive)
→ architecture (Required)
→ solutioning-gate-check (Required)
→ Implementation (sprint-planning → dev-story)
```
### Solutioning → Implementation Handoff
**Documents Produced:**
1. `architecture.md` → Guides all dev-story workflows
2. `ADRs` (in architecture) → Referenced by agents during implementation
3. `solutioning-gate-check.md` → Confirms readiness
**How Implementation Uses Solutioning:**
- **sprint-planning**: Loads architecture for epic sequencing
- **dev-story**: References architecture decisions and ADRs
- **code-review**: Validates code follows architectural standards
---
## Best Practices for Phase 3
### 1. Make Decisions Explicit
Don't leave technology choices implicit. Document decisions with rationale so future agents understand context.
### 2. Focus on Agent Conflicts
Architecture's primary job is preventing conflicting implementations by different agents. Focus on cross-cutting concerns.
### 3. Use ADRs for Key Decisions
Every significant technology choice should have an ADR explaining the "why", not just the "what".
### 4. Keep It Practical
Don't over-architect Level 2 projects. Simple projects need simple architecture.
### 5. Run Gate Check Before Implementation
Catching alignment issues in solutioning is 10× faster than discovering them mid-implementation.
### 6. Iterate Architecture
Architecture documents are living. Update them as you learn during implementation.
---
## Common Anti-Patterns
### ❌ Skipping Architecture for Level 3-4
"Architecture slows us down, let's just start coding."
→ **Result**: Agent conflicts, inconsistent design, rework
### ❌ Over-Architecting Level 2
"Let me design this simple feature like a distributed system."
→ **Result**: Wasted time, over-engineering
### ❌ Template-Driven Architecture
"Fill out every section of this architecture template."
→ **Result**: Documentation theater, no real decisions made
### ❌ Skipping Gate Check
"PRD and architecture look good enough, let's start."
→ **Result**: Gaps discovered mid-sprint, wasted implementation time
### ✅ Correct Approach
- Use architecture for Level 3-4 (required)
- Keep Level 2 architecture simple (if used)
- Focus on decisions, not documentation volume
- Always run gate check before implementation
---
## Decision Guide: When to Use Solutioning Workflows
### Level 0-1 Projects
- **Planning**: tech-spec (Quick Spec)
- **Solutioning**: **Skip entirely**
- **Implementation**: dev-story directly
### Level 2 Projects (Simple)
- **Planning**: prd (Lightweight)
- **Solutioning**: **Skip** if straightforward tech
- **Implementation**: sprint-planning → dev-story
### Level 2 Projects (Technically Complex)
- **Planning**: prd (Lightweight)
- **Solutioning**: architecture (simplified)
- **Gate Check**: Optional
- **Implementation**: sprint-planning → dev-story
### Level 3-4 Projects
- **Planning**: prd/gdd (Standard/Comprehensive)
- **Solutioning**: architecture (comprehensive) → **Required**
- **Gate Check**: solutioning-gate-check → **Required**
- **Implementation**: sprint-planning → epic-tech-context → dev-story
---
## Summary
Phase 3 Solutioning workflows bridge planning and implementation:
| Workflow | Purpose | When Required |
| -------------------------- | ------------------------------------- | ---------------------------------------- |
| **architecture** | Make technical decisions explicit | Level 3-4 (required), Level 2 (optional) |
| **solutioning-gate-check** | Validate readiness for implementation | Level 3-4 only |
**Key Takeaway:** Solutioning prevents agent conflicts in multi-epic projects by documenting architectural decisions before implementation begins.
**Next Phase:** Implementation (Phase 4) - Sprint-based story development
See: [workflows-implementation.md](./workflows-implementation.md)