name: parallel-feature-development
title: Parallel Feature Development Workflow
description: Structured workflow for developing multiple features in parallel using git worktrees with conflict detection
type: development
category: parallel-execution
estimated_time: varies by feature count

agents:
  - dev
  - architect
  - pm
  - qa

prerequisites:
  - Git repository initialized
  - Base branch stable
  - Feature list defined
  - Development environment ready

startup_sequence:
  - agent: architect
    task: analyze-parallel-feasibility
    message: "Analyzing features for parallel development potential"

planning_phase:
  - id: 1.1
    agent: pm
    task: feature-breakdown
    outputs:
      - Feature specifications
      - Priority ordering
      - Dependencies mapped
      - Success criteria
    decision_points:
      - id: D1
        name: Parallelization Strategy
        description: Choose how to parallelize work

  - id: 1.2
    agent: architect
    task: analyze-work-conflicts
    inputs:
      - Feature specifications
      - Codebase structure
    outputs:
      - Conflict analysis report
      - Wave assignments
      - Risk assessment
      - Mitigation strategies

  - id: 1.3
    agent: dev
    task: worktree-planning
    outputs:
      - Worktree naming scheme
      - Branch strategy
      - Merge sequence plan
      - Resource allocation

setup_phase:
  - id: 2.1
    agent: dev
    task: setup-worktrees
    inputs:
      - Wave assignments
      - Naming scheme
    outputs:
      - Worktrees created
      - Branches initialized
      - Development environments
      - Initial commits

  - id: 2.2
    agent: dev
    task: configure-coordination
    outputs:
      - Sync mechanisms
      - Communication channels
      - Progress tracking
      - Conflict detection

parallel_execution_phase:
  - id: 3.1
    agent: dev
    task: execute-wave-1
    parallel: true
    outputs:
      - Feature implementations
      - Unit tests
      - Documentation
      - Progress updates
    decision_points:
      - id: D2
        name: Wave Progression
        description: Decide when to start next wave

  - id: 3.2
    agent: dev
    task: monitor-progress
    continuous: true
    outputs:
      - Progress dashboard
      - Blocker identification
      - Resource utilization
      - Timeline tracking

  - id: 3.3
    agent: qa
    task: continuous-testing
    parallel: true
    outputs:
      - Test results per feature
      - Integration test status
      - Quality metrics
      - Bug reports

integration_phase:
  - id: 4.1
    agent: dev
    task: merge-coordination
    inputs:
      - Completed features
      - Test results
    outputs:
      - Merge sequence executed
      - Conflict resolutions
      - Integration validation
      - Combined codebase

  - id: 4.2
    agent: architect
    task: integration-review
    outputs:
      - Architecture validation
      - Performance analysis
      - Technical debt assessment
      - Optimization opportunities

  - id: 4.3
    agent: qa
    task: full-integration-testing
    outputs:
      - System test results
      - Regression report
      - Performance benchmarks
      - Release readiness

cleanup_phase:
  - id: 5.1
    agent: dev
    task: worktree-cleanup
    outputs:
      - Worktrees removed
      - Branches cleaned
      - Resources freed
      - Documentation updated

  - id: 5.2
    agent: pm
    task: retrospective
    outputs:
      - Efficiency analysis
      - Lessons learned
      - Process improvements
      - Success metrics

decision_points:
  - id: D1
    step: 1.1
    description: Choose parallelization approach
    options:
      - Conflict-aware waves (safe, sequential)
      - Aggressive parallel (fast, risky)
      - Hybrid approach (balanced)
      - Feature-flag isolated
    impacts:
      - Development speed
      - Integration complexity
      - Resource efficiency
      - Risk level

  - id: D2
    step: 3.1
    description: Wave progression timing
    options:
      - Wait for all features complete
      - Start when critical mass done
      - Rolling wave approach
      - Immediate progression
    impacts:
      - Integration timing
      - Resource utilization
      - Feedback cycles
      - Risk management

  - id: D3
    step: 4.1
    description: Merge strategy selection
    options:
      - Sequential safe merges
      - Parallel integration branches
      - Feature flag merges
      - Big bang integration
    impacts:
      - Integration risk
      - Testing complexity
      - Rollback capability
      - Time to production

parallel_patterns:
  wave_strategies:
    - Conflict-free parallel execution
    - Sequential conflict zones
    - Resource-based waves
    - Priority-based ordering
  
  coordination_methods:
    - Automated progress tracking
    - Daily sync meetings
    - Async status updates
    - Real-time dashboards

  conflict_prevention:
    - Code ownership mapping
    - Interface contracts
    - Feature isolation
    - Communication protocols

success_criteria:
  - All features delivered on time
  - No major integration issues
  - Parallel efficiency > 70%
  - Quality standards maintained
  - Team satisfaction high
  - Knowledge sharing effective

monitoring_metrics:
  - Features completed per wave
  - Integration success rate
  - Conflict frequency
  - Resource utilization
  - Cycle time reduction
  - Quality metrics

outputs:
  - Completed feature set
  - Integrated codebase
  - Test results and coverage
  - Performance analysis
  - Process documentation
  - Efficiency metrics
  - Lessons learned