Files
BMAD-METHOD/agent-team-workflows/backend-service.yml
2025-06-08 17:34:38 -05:00

229 lines
7.3 KiB
YAML

workflow:
id: backend-service
name: Backend Service Development
description: >-
Workflow for building microservices, backend APIs, or data processing services
with focus on scalability, reliability, and maintainability.
type: greenfield
project_types:
- microservice
- data-pipeline
- background-worker
- event-processor
stages:
- id: service-discovery
name: Service Requirements
description: Define service boundaries and responsibilities
steps:
- agent: analyst
action: Service Analysis
description: >-
Analyze service requirements, boundaries, and integrations
outputs:
- service-brief
- integration-requirements
- data-flow-analysis
prompts:
- "What is this service's primary responsibility?"
- "What other services will it interact with?"
- "What are the data input/output requirements?"
- id: service-design
name: Service Design
description: Design service architecture and contracts
steps:
- agent: architect
action: Service Architecture
description: >-
Design service internals, API contracts, and data models
inputs:
- service-brief
- integration-requirements
outputs:
- service-architecture
- api-contracts
- event-schemas
- data-models
prompts:
- "Design the service architecture pattern"
- "Define API contracts and event schemas"
- "Choose appropriate data storage solutions"
- agent: architect
action: Integration Design
description: >-
Design service mesh, messaging, and integration patterns
inputs:
- service-architecture
- integration-requirements
outputs:
- integration-architecture
- messaging-patterns
- service-mesh-config
prompts:
- "Design inter-service communication"
- "Choose messaging patterns (sync/async)"
- "Define service discovery approach"
- id: reliability-design
name: Reliability & Performance
description: Design for production reliability
steps:
- agent: devops
action: Production Architecture
description: >-
Design deployment, scaling, and reliability features
inputs:
- service-architecture
outputs:
- deployment-architecture
- scaling-strategy
- reliability-patterns
- observability-design
prompts:
- "Design auto-scaling and load balancing"
- "Plan fault tolerance and circuit breakers"
- "Design comprehensive observability"
- agent: architect
action: Performance Design
description: >-
Design caching, optimization, and performance strategies
inputs:
- service-architecture
- data-flow-analysis
outputs:
- performance-architecture
- caching-strategy
- query-optimization
prompts:
- "Identify performance bottlenecks"
- "Design caching layers"
- "Optimize data access patterns"
- id: security-design
name: Security Architecture
description: Design security controls and compliance
steps:
- agent: architect
action: Security Design
description: >-
Design authentication, authorization, and data security
inputs:
- service-architecture
- api-contracts
outputs:
- security-architecture
- auth-design
- encryption-strategy
- compliance-controls
prompts:
- "Design authentication and authorization"
- "Plan data encryption at rest and in transit"
- "Address compliance requirements"
- id: validation
name: Architecture Validation
description: Validate complete service design
steps:
- agent: po
action: Service Design Review
description: >-
Review service design for completeness and alignment
inputs:
- service-architecture
- integration-architecture
- security-architecture
outputs:
- design-approval
- risk-assessment
prompts:
- "Review service boundaries and responsibilities"
- "Validate non-functional requirements"
- id: implementation-planning
name: Implementation Planning
description: Plan service implementation
steps:
- agent: sm
action: Service Implementation Stories
description: >-
Create implementation stories with clear boundaries
inputs:
- service-architecture
- api-contracts
outputs:
- implementation-stories
- api-development-plan
- integration-test-plan
prompts:
- "Break down into implementation stories"
- "Define story dependencies"
- "Plan incremental delivery"
- agent: qa
action: Service Testing Strategy
description: >-
Design testing strategy for distributed systems
inputs:
- service-architecture
- integration-architecture
outputs:
- test-strategy
- contract-testing-plan
- chaos-testing-plan
- performance-test-plan
prompts:
- "Design contract testing approach"
- "Plan chaos engineering tests"
- "Define performance benchmarks"
- id: operational-readiness
name: Operational Readiness
description: Prepare for production deployment
steps:
- agent: devops
action: Production Readiness
description: >-
Create runbooks, monitoring, and deployment procedures
inputs:
- deployment-architecture
- observability-design
outputs:
- runbooks
- monitoring-dashboards
- alert-rules
- deployment-procedures
prompts:
- "Create operational runbooks"
- "Design monitoring dashboards"
- "Define SLIs and SLOs"
transitions:
- from: service-discovery
to: service-design
condition: requirements defined
- from: service-design
to: reliability-design
condition: architecture completed
- from: reliability-design
to: security-design
condition: reliability planned
- from: security-design
to: validation
condition: security designed
- from: validation
to: implementation-planning
condition: design approved
- from: implementation-planning
to: operational-readiness
condition: stories created
key_artifacts:
- Service architecture document
- API contracts and schemas
- Integration architecture
- Security controls
- Operational runbooks
- Test strategies