- Nx 22.7 monorepo (pnpm 11.1, TypeScript 5.9, Node 24) - apps/api: NestJS 11 (CJS conforme CODING-RULES.md PGD-DB-004) - apps/web: React 19 + Vite 8 (ESM) - libs/shared/api-interface: Zod contract base - Docker Compose dev: Postgres 18, Valkey 8, MinIO, Mailpit - WDS artifacts: - design-artifacts/A-Product-Brief/ (5 docs canônicos + 16 dialogs) - design-artifacts/B-Trigger-Map/ (hub + 4 personas + feature impact) - Stack canon: STACK.md v2.2 + CODING-RULES.md v2.0 + brand.md - AGENTS.md + README.md como entrada para devs/agentes Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
8.7 KiB
8.7 KiB
Delivery Templates
Templates for Design Deliveries and Test Scenarios in Phase 8 (Product Evolution).
Design Delivery Template (Small Scope)
File: deliveries/DD-XXX-description.yaml
delivery:
id: 'DD-XXX'
name: '[Short descriptive name]'
type: 'incremental_improvement' # vs "complete_flow" for new features
scope: 'update' # vs "new" for new features
version: 'v2.0'
previous_version: 'v1.0'
created_at: '2024-12-09T14:00:00Z'
designer: '[Your name]'
status: 'ready_for_handoff'
# What's the improvement?
improvement:
summary: |
[2-3 sentence summary of what's changing and why]
Example:
"Adding inline onboarding to Feature X to improve user understanding
and increase usage from 15% to 60%. Analytics show 40% drop-off due
to confusion. This update adds tooltips, step-by-step guidance, and
success celebration."
problem: |
[What problem does this solve?]
Example:
"Feature X has low engagement (15% usage) and high drop-off (40%).
User feedback indicates confusion about how to use it. 12 support
tickets mention 'I don't understand Feature X'."
solution: |
[What's the solution?]
Example:
"Add inline onboarding that appears on first use:
- Tooltip explaining Feature X purpose
- Step-by-step guide for first action
- Success celebration when completed
- Help button for future reference"
expected_impact: |
[What will improve?]
Example:
"- Feature X usage: 15% → 60%
- Drop-off: 40% → 10%
- Support tickets: -80%
- User satisfaction: +1.5 points"
# What's changing?
changes:
scope:
screens_affected:
- 'Feature X main screen'
- 'Feature X onboarding overlay'
features_affected:
- 'Feature X interaction flow'
components_new:
- id: 'cmp-tooltip-001'
name: 'Inline Tooltip'
file: 'D-Design-System/03-Atomic-Components/Tooltips/Tooltip-Inline.md'
components_modified:
- id: 'cmp-btn-001'
name: 'Primary Button'
changes: 'Added help icon variant'
file: 'D-Design-System/03-Atomic-Components/Buttons/Button-Primary.md'
components_unchanged:
- 'All other components remain as-is'
what_stays_same:
- 'Brand colors and typography'
- 'Core layout structure'
- 'Navigation pattern'
- 'Data model'
- 'Tech stack'
# Design artifacts
design_artifacts:
specifications:
- path: 'C-UX-Scenarios/XX-feature-x-update/Frontend/specifications.md'
description: 'Updated Feature X specifications'
- path: 'C-UX-Scenarios/XX-feature-x-update/change-scope.md'
description: "What's changing vs staying"
- path: 'C-UX-Scenarios/XX-feature-x-update/before-after.md'
description: 'Before/after comparison'
components:
- path: 'D-Design-System/03-Atomic-Components/Tooltips/Tooltip-Inline.md'
description: 'New inline tooltip component'
# Technical requirements
technical_requirements:
frontend:
- 'Implement inline tooltip component'
- 'Add first-use detection logic'
- 'Implement step-by-step guide'
- 'Add success celebration animation'
- 'Add help button with persistent access'
- 'Store dismissal state in user preferences'
backend:
- 'Add user preference field: feature_x_onboarding_completed'
- 'API endpoint to save dismissal state'
data:
- 'User preferences table: add feature_x_onboarding_completed (boolean)'
integrations:
- 'Analytics: Track onboarding completion'
- 'Analytics: Track help button usage'
# Acceptance criteria
acceptance_criteria:
- id: 'AC-001'
description: 'Inline tooltip appears on first use of Feature X'
verification: 'Open Feature X as new user, tooltip appears'
- id: 'AC-002'
description: 'Step guide walks user through first action'
verification: 'Follow guide, complete first action successfully'
- id: 'AC-003'
description: 'Success celebration appears on completion'
verification: 'Complete first action, celebration appears'
- id: 'AC-004'
description: "Onboarding doesn't appear on subsequent uses"
verification: 'Use Feature X again, no onboarding shown'
- id: 'AC-005'
description: 'Help button provides access to guide anytime'
verification: 'Click help button, guide appears'
- id: 'AC-006'
description: 'Dismissal state persists across sessions'
verification: 'Dismiss, logout, login, onboarding not shown'
# Testing guidance
testing_guidance:
test_scenario_file: 'test-scenarios/TS-XXX.yaml'
key_tests:
- 'First-time user experience (happy path)'
- 'Dismissal and persistence'
- 'Help button access'
- 'Edge case: Multiple devices'
- 'Edge case: Cleared cache'
success_criteria:
- 'All acceptance criteria pass'
- 'No regressions in existing functionality'
- 'Performance impact < 50ms'
- 'Accessibility: Screen reader compatible'
# Metrics and validation
metrics:
baseline:
- metric: 'Feature X usage rate'
current: '15%'
target: '60%'
- metric: 'Drop-off rate'
current: '40%'
target: '10%'
- metric: 'Support tickets (Feature X)'
current: '12/month'
target: '2/month'
- metric: 'User satisfaction'
current: '3.2/5'
target: '4.5/5'
measurement_period: '2 weeks after release'
success_threshold:
- 'Feature X usage > 50% (minimum)'
- 'Drop-off < 15% (minimum)'
- 'Support tickets < 5/month'
rollback_criteria:
- 'Feature X usage < 20% after 2 weeks'
- 'Drop-off > 35% after 2 weeks'
- 'Critical bugs reported'
# Effort estimate
effort:
design: '1 day'
frontend: '1 day'
backend: '0.5 days'
testing: '0.5 days'
total: '3 days'
complexity: 'Low'
# Timeline
timeline:
design_complete: '2024-12-09'
handoff_date: '2024-12-09'
development_start: '2024-12-10'
development_complete: '2024-12-12'
testing_complete: '2024-12-13'
release_date: '2024-12-13'
measurement_end: '2024-12-27'
# Handoff
handoff:
architect: '[BMad Architect name]'
developer: '[BMad Developer name]'
handoff_dialog_required: false # Small update, dialog optional
notes: |
Small, focused improvement. Specifications are clear.
Dialog available if questions arise.
# Related
related:
improvement_file: 'improvements/IMP-XXX-feature-x-onboarding.md'
analytics_report: 'analytics/feature-x-usage-2024-11.md'
user_feedback: 'feedback/feature-x-confusion-2024-11.md'
original_delivery: 'deliveries/DD-XXX-feature-x.yaml' # If applicable
Test Scenario Template (Incremental Improvement)
File: test-scenarios/TS-XXX-description.yaml
test_scenario:
id: 'TS-XXX'
name: '[Update Name] Validation'
type: 'incremental_improvement'
delivery_id: 'DD-XXX'
created_at: '2024-12-09T14:00:00Z'
# Focus on what changed
test_focus:
- 'New onboarding flow'
- 'Dismissal persistence'
- 'Help button access'
- 'No regressions'
# Happy path (new functionality)
happy_path:
- id: 'HP-001'
name: 'First-time user sees onboarding'
steps:
- action: 'Open Feature X as new user'
expected: 'Inline tooltip appears'
- action: "Read tooltip, tap 'Next'"
expected: 'Step guide appears'
- action: 'Follow guide, complete action'
expected: 'Success celebration appears'
- action: 'Dismiss celebration'
expected: 'Feature X is ready to use'
# Regression testing (existing functionality)
regression_tests:
- id: 'REG-001'
name: 'Existing Feature X functionality unchanged'
steps:
- action: 'Use Feature X core functionality'
expected: 'Works exactly as before'
# Edge cases
edge_cases:
- id: 'EC-001'
name: 'Dismissal persists across sessions'
steps:
- action: 'Dismiss onboarding'
- action: 'Logout and login'
- action: 'Open Feature X'
expected: 'Onboarding not shown'
# Accessibility
accessibility:
- id: 'A11Y-001'
name: 'Screen reader announces onboarding'
checks:
- 'Tooltip announced correctly'
- 'Guide steps announced'
- 'Help button labeled'
Validation Report Template
File: test-reports/TR-XXX-DD-XXX-validation.md
# Validation Report: DD-XXX [Name]
**Date:** 2024-12-13
**Tester:** [Your name]
**Build:** v2.1.0
**Type:** Design Delivery Validation (Incremental Improvement)
---
## Result
**Status:** [PASS | FAIL]
---
## New Functionality
### Test HP-001: [Name]
- Status: [PASS | FAIL]
- Notes: [Any observations]
[Repeat for each new functionality test]
---
## Regression Testing
### Test REG-001: [Name]
- Status: [PASS | FAIL]
- Notes: [Any observations]
[Repeat for each regression test]
---
## Issues Found
**Total:** [Number]
[If any issues, list them]
---
## Recommendation
[APPROVED | NOT APPROVED]
[Brief explanation]