Stage 4 — Design Documents
Agents: bmad-agent-architect, bmad-create-architecture · Approvers: L1 Architect ·
L2 Tech Lead
Three independent design documents with embedded PlantUML diagrams — dual approval required.
warning
Stages 4 & 5 require L1 + L2 dual approval. The next stage is locked until both approve. The same person cannot provide both signatures.
- Invoke Architect Agent: System calls
Skill: bmad-agent-architect→Skill: bmad-create-architecture - Generate HLD — High-Level Design document
- Generate LLD — Low-Level Design document
- Generate Arch — Enterprise Architecture document
- PlantUML Diagrams rendered —
java -jar tools\plantuml.jar -tpng— embedded in each .docx viaadd_picture() - Design Enforcer Audit:
agent-s4-design-enforcerreviews all three docs for completeness - Architect L1 Approval — name + timestamp saved
- Tech Lead L2 Approval — name + timestamp saved; Stage 5 unlocks
Document contents
| Document | Sections | Diagrams (PlantUML) |
|---|---|---|
| HLD | §1 Overview, §2 Flow (Fig 1), §3 Components (Fig 2), §4 Tech Stack, §5 Security, §6 Scalability | Fig 1: Overall Flow (sequence) · Fig 2: Component Architecture (component) |
| LLD | §1 DB Schema, §2 API Contracts, §3 Feature Sequences (one per PRD feature), §4 Error Handling | ERD (class w/ <<entity>>) · One sequence diagram per feature (Figs 3–9) |
| Arch | §1 Enterprise Context, §2 Deployment Zones (Fig 10), §3 Integration Points, §4 Governance | Fig 10: Enterprise Architecture (deployment or component with zones) |
PlantUML pipeline rules
.pumlsources saved underdocs/sdlc/diagrams/— text-diffable in git- Rendered to PNG via
java -jar plantuml.jar -tpng {file}.puml - PNG embedded in the correct section of each .docx via
add_picture() - SMETANA layout engine used (no Graphviz dependency needed)
warning
Close Word files before generating — python-docx will fail if the file is open.
danger
Never use matplotlib, draw.io, or Mermaid — only PlantUML.
Artifacts (6 files): {ProjectName}_HLD.md · .docx, {ProjectName}_LLD.md · .docx,
{ProjectName}_Arch.md · .docx, docs/sdlc/diagrams/*.puml + *.png