Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

test-design-architecture-template.md 9.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250
  1. ---
  2. workflowStatus: ''
  3. totalSteps: 5
  4. stepsCompleted: []
  5. lastStep: ''
  6. nextStep: ''
  7. lastSaved: ''
  8. workflowType: 'testarch-test-design'
  9. inputDocuments: []
  10. ---
  11. # Test Design for Architecture: {Feature Name}
  12. **Purpose:** Architectural concerns, testability gaps, and NFR requirements for review by Architecture/Dev teams. Serves as a contract between QA and Engineering on what must be addressed before test development begins.
  13. **Date:** {date}
  14. **Author:** {author}
  15. **Status:** Architecture Review Pending
  16. **Project:** {project_name}
  17. **PRD Reference:** {prd_link}
  18. **ADR Reference:** {adr_link}
  19. ---
  20. ## Executive Summary
  21. **Scope:** {Brief description of feature scope}
  22. **Business Context** (from PRD):
  23. - **Revenue/Impact:** {Business metrics if applicable}
  24. - **Problem:** {Problem being solved}
  25. - **GA Launch:** {Target date or timeline}
  26. **Architecture** (from ADR {adr_number}):
  27. - **Key Decision 1:** {e.g., OAuth 2.1 authentication}
  28. - **Key Decision 2:** {e.g., Centralized MCP Server pattern}
  29. - **Key Decision 3:** {e.g., Stack: TypeScript, SDK v1.x}
  30. **Expected Scale** (from ADR):
  31. - {RPS, volume, users, etc.}
  32. **Risk Summary:**
  33. - **Total risks**: {N}
  34. - **High-priority (≥6)**: {N} risks requiring immediate mitigation
  35. - **Test effort**: ~{N} tests (~{X} weeks for 1 QA, ~{Y} weeks for 2 QAs)
  36. ---
  37. ## Quick Guide
  38. ### 🚨 BLOCKERS - Team Must Decide (Can't Proceed Without)
  39. **Pre-Implementation Critical Path** - These MUST be completed before QA can write integration tests:
  40. 1. **{Blocker ID}: {Blocker Title}** - {What architecture must provide} (recommended owner: {Team/Role})
  41. 2. **{Blocker ID}: {Blocker Title}** - {What architecture must provide} (recommended owner: {Team/Role})
  42. 3. **{Blocker ID}: {Blocker Title}** - {What architecture must provide} (recommended owner: {Team/Role})
  43. **What we need from team:** Complete these {N} items pre-implementation or test development is blocked.
  44. ---
  45. ### ⚠️ HIGH PRIORITY - Team Should Validate (We Provide Recommendation, You Approve)
  46. 1. **{Risk ID}: {Title}** - {Recommendation + who should approve} (implementation phase)
  47. 2. **{Risk ID}: {Title}** - {Recommendation + who should approve} (implementation phase)
  48. 3. **{Risk ID}: {Title}** - {Recommendation + who should approve} (implementation phase)
  49. **What we need from team:** Review recommendations and approve (or suggest changes).
  50. ---
  51. ### 📋 INFO ONLY - Solutions Provided (Review, No Decisions Needed)
  52. 1. **Test strategy**: {Test level split} ({Rationale})
  53. 2. **Tooling**: {Test frameworks and utilities}
  54. 3. **Tiered CI/CD**: {Execution tiers with timing}
  55. 4. **Coverage**: ~{N} test scenarios prioritized P0-P3 with risk-based classification
  56. 5. **Quality gates**: {Pass criteria}
  57. **What we need from team:** Just review and acknowledge (we already have the solution).
  58. ---
  59. ## For Architects and Devs - Open Topics 👷
  60. ### Risk Assessment
  61. **Total risks identified**: {N} ({X} high-priority score ≥6, {Y} medium, {Z} low)
  62. #### High-Priority Risks (Score ≥6) - IMMEDIATE ATTENTION
  63. | Risk ID | Category | Description | Probability | Impact | Score | Mitigation | Owner | Timeline |
  64. | ---------- | --------- | ------------- | ----------- | ------ | ----------- | --------------------- | ------- | -------- |
  65. | **{R-ID}** | **{CAT}** | {Description} | {1-3} | {1-3} | **{Score}** | {Mitigation strategy} | {Owner} | {Date} |
  66. #### Medium-Priority Risks (Score 3-5)
  67. | Risk ID | Category | Description | Probability | Impact | Score | Mitigation | Owner |
  68. | ------- | -------- | ------------- | ----------- | ------ | ------- | ------------ | ------- |
  69. | {R-ID} | {CAT} | {Description} | {1-3} | {1-3} | {Score} | {Mitigation} | {Owner} |
  70. #### Low-Priority Risks (Score 1-2)
  71. | Risk ID | Category | Description | Probability | Impact | Score | Action |
  72. | ------- | -------- | ------------- | ----------- | ------ | ------- | ------- |
  73. | {R-ID} | {CAT} | {Description} | {1-3} | {1-3} | {Score} | Monitor |
  74. #### Risk Category Legend
  75. - **TECH**: Technical/Architecture (flaws, integration, scalability)
  76. - **SEC**: Security (access controls, auth, data exposure)
  77. - **PERF**: Performance (SLA violations, degradation, resource limits)
  78. - **DATA**: Data Integrity (loss, corruption, inconsistency)
  79. - **BUS**: Business Impact (UX harm, logic errors, revenue)
  80. - **OPS**: Operations (deployment, config, monitoring)
  81. ---
  82. ### NFR Testability Requirements
  83. **Purpose:** Capture what architecture must provide so NFR validation can be automated later. This is planning guidance, not final evidence assessment.
  84. | NFR Category | Threshold / Requirement | Current Design Support | Gap / Decision Needed | Planned Evidence |
  85. | --------------- | ------------------------------------------------- | --------------------------- | ------------------------------ | --------------------------------------- |
  86. | Security | {Auth/authz/data protection requirement} | {Supported/partial/unknown} | {Architecture gap or decision} | {Security tests, scan, audit log} |
  87. | Performance | {Latency/throughput/resource requirement} | {Supported/partial/unknown} | {Architecture gap or decision} | {k6/APM/load report} |
  88. | Reliability | {Availability/error-rate/recovery requirement} | {Supported/partial/unknown} | {Architecture gap or decision} | {Burn-in, monitoring, failover report} |
  89. | Maintainability | {Coverage/code quality/observability requirement} | {Supported/partial/unknown} | {Architecture gap or decision} | {Coverage, static analysis, docs audit} |
  90. **Unknown thresholds:** {List any missing NFR thresholds. Unknown thresholds should become risks or clarification items, not guessed values.}
  91. **Assessment boundary:** Final PASS/CONCERNS/FAIL status belongs in `nfr-assess` after implementation evidence exists.
  92. ---
  93. ### Testability Concerns and Architectural Gaps
  94. **🚨 ACTIONABLE CONCERNS - Architecture Team Must Address**
  95. {If system has critical testability concerns, list them here. If architecture supports testing well, state "No critical testability concerns identified" and skip to Testability Assessment Summary}
  96. #### 1. Blockers to Fast Feedback (WHAT WE NEED FROM ARCHITECTURE)
  97. | Concern | Impact | What Architecture Must Provide | Owner | Timeline |
  98. | ------------------ | ------------------- | -------------------------------------- | ------ | ----------- |
  99. | **{Concern name}** | {Impact on testing} | {Specific architectural change needed} | {Team} | {Milestone} |
  100. **Example:**
  101. - **No API for test data seeding** → Cannot parallelize tests → Provide POST /test/seed endpoint (Backend, pre-implementation)
  102. #### 2. Architectural Improvements Needed (WHAT SHOULD BE CHANGED)
  103. {List specific improvements that would make the system more testable}
  104. 1. **{Improvement name}**
  105. - **Current problem**: {What's wrong}
  106. - **Required change**: {What architecture must do}
  107. - **Impact if not fixed**: {Consequences}
  108. - **Owner**: {Team}
  109. - **Timeline**: {Milestone}
  110. ---
  111. ### Testability Assessment Summary
  112. **📊 CURRENT STATE - FYI**
  113. {Only include this section if there are passing items worth mentioning. Otherwise omit.}
  114. #### What Works Well
  115. - ✅ {Passing item 1} (e.g., "API-first design supports parallel test execution")
  116. - ✅ {Passing item 2} (e.g., "Feature flags enable test isolation")
  117. - ✅ {Passing item 3}
  118. #### Accepted Trade-offs (No Action Required)
  119. For {Feature} Phase 1, the following trade-offs are acceptable:
  120. - **{Trade-off 1}** - {Why acceptable for now}
  121. - **{Trade-off 2}** - {Why acceptable for now}
  122. {This is technical debt OR acceptable for Phase 1} that {should be revisited post-GA OR maintained as-is}
  123. ---
  124. ### Risk Mitigation Plans (High-Priority Risks ≥6)
  125. **Purpose**: Detailed mitigation strategies for all {N} high-priority risks (score ≥6). These risks MUST be addressed before {GA launch date or milestone}.
  126. #### {R-ID}: {Risk Description} (Score: {Score}) - {CRITICALITY LEVEL}
  127. **Mitigation Strategy:**
  128. 1. {Step 1}
  129. 2. {Step 2}
  130. 3. {Step 3}
  131. **Owner:** {Owner}
  132. **Timeline:** {Milestone or date}
  133. **Status:** Planned / In Progress / Complete
  134. **Verification:** {How to verify mitigation is effective}
  135. ---
  136. {Repeat for all high-priority risks}
  137. ---
  138. ### Assumptions and Dependencies
  139. #### Assumptions
  140. 1. {Assumption about architecture or requirements}
  141. 2. {Assumption about team or timeline}
  142. 3. {Assumption about scope or constraints}
  143. #### Dependencies
  144. 1. {Dependency} - Required by {date/milestone}
  145. 2. {Dependency} - Required by {date/milestone}
  146. #### Risks to Plan
  147. - **Risk**: {Risk to the test plan itself}
  148. - **Impact**: {How it affects testing}
  149. - **Contingency**: {Backup plan}
  150. ---
  151. **End of Architecture Document**
  152. **Next Steps for Architecture Team:**
  153. 1. Review Quick Guide (🚨/⚠️/📋) and prioritize blockers
  154. 2. Assign owners and timelines for high-priority risks (≥6)
  155. 3. Validate assumptions and dependencies
  156. 4. Provide feedback to QA on testability gaps
  157. **Next Steps for QA Team:**
  158. 1. Wait for pre-implementation blockers to be resolved
  159. 2. Refer to companion QA doc (test-design-qa.md) for test scenarios
  160. 3. Begin test infrastructure setup (factories, fixtures, environments)