Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

nfr-report-template.md 14KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470
  1. ---
  2. stepsCompleted: []
  3. lastStep: ''
  4. lastSaved: ''
  5. workflowType: 'testarch-nfr-assess'
  6. inputDocuments: []
  7. ---
  8. # NFR Evidence Audit - {FEATURE_NAME}
  9. **Date:** {DATE}
  10. **Story:** {STORY_ID} (if applicable)
  11. **Overall Status:** {OVERALL_STATUS} {STATUS_ICON}
  12. ---
  13. Note: This audit summarizes existing implementation evidence; it does not run tests or CI workflows. NFR thresholds and planned evidence should come from PRD, architecture, and `test-design` outputs where available.
  14. ## Executive Summary
  15. **Assessment:** {PASS_COUNT} PASS, {CONCERNS_COUNT} CONCERNS, {FAIL_COUNT} FAIL
  16. **Blockers:** {BLOCKER_COUNT} {BLOCKER_DESCRIPTION}
  17. **High Priority Issues:** {HIGH_PRIORITY_COUNT} {HIGH_PRIORITY_DESCRIPTION}
  18. **Recommendation:** {OVERALL_RECOMMENDATION}
  19. ---
  20. ## Performance Assessment
  21. ### Response Time (p95)
  22. - **Status:** {STATUS} {STATUS_ICON}
  23. - **Threshold:** {THRESHOLD_VALUE}
  24. - **Actual:** {ACTUAL_VALUE}
  25. - **Evidence:** {EVIDENCE_SOURCE}
  26. - **Findings:** {FINDINGS_DESCRIPTION}
  27. ### Throughput
  28. - **Status:** {STATUS} {STATUS_ICON}
  29. - **Threshold:** {THRESHOLD_VALUE}
  30. - **Actual:** {ACTUAL_VALUE}
  31. - **Evidence:** {EVIDENCE_SOURCE}
  32. - **Findings:** {FINDINGS_DESCRIPTION}
  33. ### Resource Usage
  34. - **CPU Usage**
  35. - **Status:** {STATUS} {STATUS_ICON}
  36. - **Threshold:** {THRESHOLD_VALUE}
  37. - **Actual:** {ACTUAL_VALUE}
  38. - **Evidence:** {EVIDENCE_SOURCE}
  39. - **Memory Usage**
  40. - **Status:** {STATUS} {STATUS_ICON}
  41. - **Threshold:** {THRESHOLD_VALUE}
  42. - **Actual:** {ACTUAL_VALUE}
  43. - **Evidence:** {EVIDENCE_SOURCE}
  44. ### Scalability
  45. - **Status:** {STATUS} {STATUS_ICON}
  46. - **Threshold:** {THRESHOLD_DESCRIPTION}
  47. - **Actual:** {ACTUAL_DESCRIPTION}
  48. - **Evidence:** {EVIDENCE_SOURCE}
  49. - **Findings:** {FINDINGS_DESCRIPTION}
  50. ---
  51. ## Security Assessment
  52. ### Authentication Strength
  53. - **Status:** {STATUS} {STATUS_ICON}
  54. - **Threshold:** {THRESHOLD_DESCRIPTION}
  55. - **Actual:** {ACTUAL_DESCRIPTION}
  56. - **Evidence:** {EVIDENCE_SOURCE}
  57. - **Findings:** {FINDINGS_DESCRIPTION}
  58. - **Recommendation:** {RECOMMENDATION} (if CONCERNS or FAIL)
  59. ### Authorization Controls
  60. - **Status:** {STATUS} {STATUS_ICON}
  61. - **Threshold:** {THRESHOLD_DESCRIPTION}
  62. - **Actual:** {ACTUAL_DESCRIPTION}
  63. - **Evidence:** {EVIDENCE_SOURCE}
  64. - **Findings:** {FINDINGS_DESCRIPTION}
  65. ### Data Protection
  66. - **Status:** {STATUS} {STATUS_ICON}
  67. - **Threshold:** {THRESHOLD_DESCRIPTION}
  68. - **Actual:** {ACTUAL_DESCRIPTION}
  69. - **Evidence:** {EVIDENCE_SOURCE}
  70. - **Findings:** {FINDINGS_DESCRIPTION}
  71. ### Vulnerability Management
  72. - **Status:** {STATUS} {STATUS_ICON}
  73. - **Threshold:** {THRESHOLD_DESCRIPTION} (e.g., "0 critical, <3 high vulnerabilities")
  74. - **Actual:** {ACTUAL_DESCRIPTION} (e.g., "0 critical, 1 high, 5 medium vulnerabilities")
  75. - **Evidence:** {EVIDENCE_SOURCE} (e.g., "Snyk scan results - scan-2025-10-14.json")
  76. - **Findings:** {FINDINGS_DESCRIPTION}
  77. ### Compliance (if applicable)
  78. - **Status:** {STATUS} {STATUS_ICON}
  79. - **Standards:** {COMPLIANCE_STANDARDS} (e.g., "GDPR, HIPAA, PCI-DSS")
  80. - **Actual:** {ACTUAL_COMPLIANCE_STATUS}
  81. - **Evidence:** {EVIDENCE_SOURCE}
  82. - **Findings:** {FINDINGS_DESCRIPTION}
  83. ---
  84. ## Reliability Assessment
  85. ### Availability (Uptime)
  86. - **Status:** {STATUS} {STATUS_ICON}
  87. - **Threshold:** {THRESHOLD_VALUE} (e.g., "99.9%")
  88. - **Actual:** {ACTUAL_VALUE} (e.g., "99.95%")
  89. - **Evidence:** {EVIDENCE_SOURCE} (e.g., "Uptime monitoring - uptime-report-2025-10-14.csv")
  90. - **Findings:** {FINDINGS_DESCRIPTION}
  91. ### Error Rate
  92. - **Status:** {STATUS} {STATUS_ICON}
  93. - **Threshold:** {THRESHOLD_VALUE} (e.g., "<0.1%")
  94. - **Actual:** {ACTUAL_VALUE} (e.g., "0.05%")
  95. - **Evidence:** {EVIDENCE_SOURCE} (e.g., "Error logs - logs/errors-2025-10.log")
  96. - **Findings:** {FINDINGS_DESCRIPTION}
  97. ### MTTR (Mean Time To Recovery)
  98. - **Status:** {STATUS} {STATUS_ICON}
  99. - **Threshold:** {THRESHOLD_VALUE} (e.g., "<15 minutes")
  100. - **Actual:** {ACTUAL_VALUE} (e.g., "12 minutes")
  101. - **Evidence:** {EVIDENCE_SOURCE} (e.g., "Incident reports - incidents/")
  102. - **Findings:** {FINDINGS_DESCRIPTION}
  103. ### Fault Tolerance
  104. - **Status:** {STATUS} {STATUS_ICON}
  105. - **Threshold:** {THRESHOLD_DESCRIPTION}
  106. - **Actual:** {ACTUAL_DESCRIPTION}
  107. - **Evidence:** {EVIDENCE_SOURCE}
  108. - **Findings:** {FINDINGS_DESCRIPTION}
  109. ### CI Burn-In (Stability)
  110. - **Status:** {STATUS} {STATUS_ICON}
  111. - **Threshold:** {THRESHOLD_VALUE} (e.g., "100 consecutive successful runs")
  112. - **Actual:** {ACTUAL_VALUE} (e.g., "150 consecutive successful runs")
  113. - **Evidence:** {EVIDENCE_SOURCE} (e.g., "CI burn-in results - ci-burn-in-2025-10-14.log")
  114. - **Findings:** {FINDINGS_DESCRIPTION}
  115. ### Disaster Recovery (if applicable)
  116. - **RTO (Recovery Time Objective)**
  117. - **Status:** {STATUS} {STATUS_ICON}
  118. - **Threshold:** {THRESHOLD_VALUE}
  119. - **Actual:** {ACTUAL_VALUE}
  120. - **Evidence:** {EVIDENCE_SOURCE}
  121. - **RPO (Recovery Point Objective)**
  122. - **Status:** {STATUS} {STATUS_ICON}
  123. - **Threshold:** {THRESHOLD_VALUE}
  124. - **Actual:** {ACTUAL_VALUE}
  125. - **Evidence:** {EVIDENCE_SOURCE}
  126. ---
  127. ## Maintainability Assessment
  128. ### Test Coverage
  129. - **Status:** {STATUS} {STATUS_ICON}
  130. - **Threshold:** {THRESHOLD_VALUE} (e.g., ">=80%")
  131. - **Actual:** {ACTUAL_VALUE} (e.g., "87%")
  132. - **Evidence:** {EVIDENCE_SOURCE} (e.g., "Coverage report - coverage/lcov-report/index.html")
  133. - **Findings:** {FINDINGS_DESCRIPTION}
  134. ### Code Quality
  135. - **Status:** {STATUS} {STATUS_ICON}
  136. - **Threshold:** {THRESHOLD_VALUE} (e.g., ">=85/100")
  137. - **Actual:** {ACTUAL_VALUE} (e.g., "92/100")
  138. - **Evidence:** {EVIDENCE_SOURCE} (e.g., "SonarQube analysis - sonarqube-report-2025-10-14.pdf")
  139. - **Findings:** {FINDINGS_DESCRIPTION}
  140. ### Technical Debt
  141. - **Status:** {STATUS} {STATUS_ICON}
  142. - **Threshold:** {THRESHOLD_VALUE} (e.g., "<5% debt ratio")
  143. - **Actual:** {ACTUAL_VALUE} (e.g., "3.2% debt ratio")
  144. - **Evidence:** {EVIDENCE_SOURCE} (e.g., "CodeClimate analysis - codeclimate-2025-10-14.json")
  145. - **Findings:** {FINDINGS_DESCRIPTION}
  146. ### Documentation Completeness
  147. - **Status:** {STATUS} {STATUS_ICON}
  148. - **Threshold:** {THRESHOLD_VALUE} (e.g., ">=90%")
  149. - **Actual:** {ACTUAL_VALUE} (e.g., "95%")
  150. - **Evidence:** {EVIDENCE_SOURCE} (e.g., "Documentation audit - docs-audit-2025-10-14.md")
  151. - **Findings:** {FINDINGS_DESCRIPTION}
  152. ### Test Quality (from test-review, if available)
  153. - **Status:** {STATUS} {STATUS_ICON}
  154. - **Threshold:** {THRESHOLD_DESCRIPTION}
  155. - **Actual:** {ACTUAL_DESCRIPTION}
  156. - **Evidence:** {EVIDENCE_SOURCE} (e.g., "Test review report - test-review-2025-10-14.md")
  157. - **Findings:** {FINDINGS_DESCRIPTION}
  158. ---
  159. ## Custom NFR Evidence Audits (if applicable)
  160. ### {CUSTOM_NFR_NAME_1}
  161. - **Status:** {STATUS} {STATUS_ICON}
  162. - **Threshold:** {THRESHOLD_DESCRIPTION}
  163. - **Actual:** {ACTUAL_DESCRIPTION}
  164. - **Evidence:** {EVIDENCE_SOURCE}
  165. - **Findings:** {FINDINGS_DESCRIPTION}
  166. ### {CUSTOM_NFR_NAME_2}
  167. - **Status:** {STATUS} {STATUS_ICON}
  168. - **Threshold:** {THRESHOLD_DESCRIPTION}
  169. - **Actual:** {ACTUAL_DESCRIPTION}
  170. - **Evidence:** {EVIDENCE_SOURCE}
  171. - **Findings:** {FINDINGS_DESCRIPTION}
  172. ---
  173. ## Quick Wins
  174. {QUICK_WIN_COUNT} quick wins identified for immediate implementation:
  175. 1. **{QUICK_WIN_TITLE_1}** ({NFR_CATEGORY}) - {PRIORITY} - {ESTIMATED_EFFORT}
  176. - {QUICK_WIN_DESCRIPTION}
  177. - No code changes needed / Minimal code changes
  178. 2. **{QUICK_WIN_TITLE_2}** ({NFR_CATEGORY}) - {PRIORITY} - {ESTIMATED_EFFORT}
  179. - {QUICK_WIN_DESCRIPTION}
  180. ---
  181. ## Recommended Actions
  182. ### Immediate (Before Release) - CRITICAL/HIGH Priority
  183. 1. **{ACTION_TITLE_1}** - {PRIORITY} - {ESTIMATED_EFFORT} - {OWNER}
  184. - {ACTION_DESCRIPTION}
  185. - {SPECIFIC_STEPS}
  186. - {VALIDATION_CRITERIA}
  187. 2. **{ACTION_TITLE_2}** - {PRIORITY} - {ESTIMATED_EFFORT} - {OWNER}
  188. - {ACTION_DESCRIPTION}
  189. - {SPECIFIC_STEPS}
  190. - {VALIDATION_CRITERIA}
  191. ### Short-term (Next Milestone) - MEDIUM Priority
  192. 1. **{ACTION_TITLE_3}** - {PRIORITY} - {ESTIMATED_EFFORT} - {OWNER}
  193. - {ACTION_DESCRIPTION}
  194. 2. **{ACTION_TITLE_4}** - {PRIORITY} - {ESTIMATED_EFFORT} - {OWNER}
  195. - {ACTION_DESCRIPTION}
  196. ### Long-term (Backlog) - LOW Priority
  197. 1. **{ACTION_TITLE_5}** - {PRIORITY} - {ESTIMATED_EFFORT} - {OWNER}
  198. - {ACTION_DESCRIPTION}
  199. ---
  200. ## Monitoring Hooks
  201. {MONITORING_HOOK_COUNT} monitoring hooks recommended to detect issues before failures:
  202. ### Performance Monitoring
  203. - [ ] {MONITORING_TOOL_1} - {MONITORING_DESCRIPTION}
  204. - **Owner:** {OWNER}
  205. - **Deadline:** {DEADLINE}
  206. - [ ] {MONITORING_TOOL_2} - {MONITORING_DESCRIPTION}
  207. - **Owner:** {OWNER}
  208. - **Deadline:** {DEADLINE}
  209. ### Security Monitoring
  210. - [ ] {MONITORING_TOOL_3} - {MONITORING_DESCRIPTION}
  211. - **Owner:** {OWNER}
  212. - **Deadline:** {DEADLINE}
  213. ### Reliability Monitoring
  214. - [ ] {MONITORING_TOOL_4} - {MONITORING_DESCRIPTION}
  215. - **Owner:** {OWNER}
  216. - **Deadline:** {DEADLINE}
  217. ### Alerting Thresholds
  218. - [ ] {ALERT_DESCRIPTION} - Notify when {THRESHOLD_CONDITION}
  219. - **Owner:** {OWNER}
  220. - **Deadline:** {DEADLINE}
  221. ---
  222. ## Fail-Fast Mechanisms
  223. {FAIL_FAST_COUNT} fail-fast mechanisms recommended to prevent failures:
  224. ### Circuit Breakers (Reliability)
  225. - [ ] {CIRCUIT_BREAKER_DESCRIPTION}
  226. - **Owner:** {OWNER}
  227. - **Estimated Effort:** {EFFORT}
  228. ### Rate Limiting (Performance)
  229. - [ ] {RATE_LIMITING_DESCRIPTION}
  230. - **Owner:** {OWNER}
  231. - **Estimated Effort:** {EFFORT}
  232. ### Validation Gates (Security)
  233. - [ ] {VALIDATION_GATE_DESCRIPTION}
  234. - **Owner:** {OWNER}
  235. - **Estimated Effort:** {EFFORT}
  236. ### Smoke Tests (Maintainability)
  237. - [ ] {SMOKE_TEST_DESCRIPTION}
  238. - **Owner:** {OWNER}
  239. - **Estimated Effort:** {EFFORT}
  240. ---
  241. ## Evidence Gaps
  242. {EVIDENCE_GAP_COUNT} evidence gaps identified - action required:
  243. - [ ] **{NFR_NAME_1}** ({NFR_CATEGORY})
  244. - **Owner:** {OWNER}
  245. - **Deadline:** {DEADLINE}
  246. - **Suggested Evidence:** {SUGGESTED_EVIDENCE_SOURCE}
  247. - **Impact:** {IMPACT_DESCRIPTION}
  248. - [ ] **{NFR_NAME_2}** ({NFR_CATEGORY})
  249. - **Owner:** {OWNER}
  250. - **Deadline:** {DEADLINE}
  251. - **Suggested Evidence:** {SUGGESTED_EVIDENCE_SOURCE}
  252. - **Impact:** {IMPACT_DESCRIPTION}
  253. ---
  254. ## Findings Summary
  255. **Based on ADR Quality Readiness Checklist (8 categories, 29 criteria)**
  256. | Category | Criteria Met | PASS | CONCERNS | FAIL | Overall Status |
  257. | ------------------------------------------------ | ------------------ | ---------------- | -------------------- | ---------------- | ----------------------------------- |
  258. | 1. Testability & Automation | {T_MET}/4 | {T_PASS} | {T_CONCERNS} | {T_FAIL} | {T_STATUS} {T_ICON} |
  259. | 2. Test Data Strategy | {TD_MET}/3 | {TD_PASS} | {TD_CONCERNS} | {TD_FAIL} | {TD_STATUS} {TD_ICON} |
  260. | 3. Scalability & Availability | {SA_MET}/4 | {SA_PASS} | {SA_CONCERNS} | {SA_FAIL} | {SA_STATUS} {SA_ICON} |
  261. | 4. Disaster Recovery | {DR_MET}/3 | {DR_PASS} | {DR_CONCERNS} | {DR_FAIL} | {DR_STATUS} {DR_ICON} |
  262. | 5. Security | {SEC_MET}/4 | {SEC_PASS} | {SEC_CONCERNS} | {SEC_FAIL} | {SEC_STATUS} {SEC_ICON} |
  263. | 6. Monitorability, Debuggability & Manageability | {MON_MET}/4 | {MON_PASS} | {MON_CONCERNS} | {MON_FAIL} | {MON_STATUS} {MON_ICON} |
  264. | 7. QoS & QoE | {QOS_MET}/4 | {QOS_PASS} | {QOS_CONCERNS} | {QOS_FAIL} | {QOS_STATUS} {QOS_ICON} |
  265. | 8. Deployability | {DEP_MET}/3 | {DEP_PASS} | {DEP_CONCERNS} | {DEP_FAIL} | {DEP_STATUS} {DEP_ICON} |
  266. | **Total** | **{TOTAL_MET}/29** | **{TOTAL_PASS}** | **{TOTAL_CONCERNS}** | **{TOTAL_FAIL}** | **{OVERALL_STATUS} {OVERALL_ICON}** |
  267. **Criteria Met Scoring:**
  268. - ≥26/29 (90%+) = Strong foundation
  269. - 20-25/29 (69-86%) = Room for improvement
  270. - <20/29 (<69%) = Significant gaps
  271. ---
  272. ## Gate YAML Snippet
  273. ```yaml
  274. nfr_assessment:
  275. date: '{DATE}'
  276. story_id: '{STORY_ID}'
  277. feature_name: '{FEATURE_NAME}'
  278. adr_checklist_score: '{TOTAL_MET}/29' # ADR Quality Readiness Checklist
  279. categories:
  280. testability_automation: '{T_STATUS}'
  281. test_data_strategy: '{TD_STATUS}'
  282. scalability_availability: '{SA_STATUS}'
  283. disaster_recovery: '{DR_STATUS}'
  284. security: '{SEC_STATUS}'
  285. monitorability: '{MON_STATUS}'
  286. qos_qoe: '{QOS_STATUS}'
  287. deployability: '{DEP_STATUS}'
  288. overall_status: '{OVERALL_STATUS}'
  289. critical_issues: { CRITICAL_COUNT }
  290. high_priority_issues: { HIGH_COUNT }
  291. medium_priority_issues: { MEDIUM_COUNT }
  292. concerns: { CONCERNS_COUNT }
  293. blockers: { BLOCKER_BOOLEAN } # true/false
  294. quick_wins: { QUICK_WIN_COUNT }
  295. evidence_gaps: { EVIDENCE_GAP_COUNT }
  296. recommendations:
  297. - '{RECOMMENDATION_1}'
  298. - '{RECOMMENDATION_2}'
  299. - '{RECOMMENDATION_3}'
  300. ```
  301. ---
  302. ## Related Artifacts
  303. - **Story File:** {STORY_FILE_PATH} (if applicable)
  304. - **Tech Spec:** {TECH_SPEC_PATH} (if available)
  305. - **PRD:** {PRD_PATH} (if available)
  306. - **Test Design:** {TEST_DESIGN_PATH} (if available)
  307. - **Evidence Sources:**
  308. - Test Results: {TEST_RESULTS_DIR}
  309. - Metrics: {METRICS_DIR}
  310. - Logs: {LOGS_DIR}
  311. - CI Results: {CI_RESULTS_PATH}
  312. ---
  313. ## Recommendations Summary
  314. **Release Blocker:** {RELEASE_BLOCKER_SUMMARY}
  315. **High Priority:** {HIGH_PRIORITY_SUMMARY}
  316. **Medium Priority:** {MEDIUM_PRIORITY_SUMMARY}
  317. **Next Steps:** {NEXT_STEPS_DESCRIPTION}
  318. ---
  319. ## Sign-Off
  320. **NFR Evidence Audit:**
  321. - Overall Status: {OVERALL_STATUS} {OVERALL_ICON}
  322. - Critical Issues: {CRITICAL_COUNT}
  323. - High Priority Issues: {HIGH_COUNT}
  324. - Concerns: {CONCERNS_COUNT}
  325. - Evidence Gaps: {EVIDENCE_GAP_COUNT}
  326. **Gate Status:** {GATE_STATUS} {GATE_ICON}
  327. **Next Actions:**
  328. - If PASS ✅: Proceed to `*gate` workflow or release
  329. - If CONCERNS ⚠️: Address HIGH/CRITICAL issues, re-run `*nfr-assess`
  330. - If FAIL ❌: Resolve FAIL status NFRs, re-run `*nfr-assess`
  331. **Generated:** {DATE}
  332. **Workflow:** testarch-nfr v5.0
  333. ---
  334. <!-- Powered by BMAD-CORE™ -->