算法艺术创作
algorithmic-art
通过代码和可调参数创作生成艺术与交互式视觉效果。
traceability-matrix【设计与创意】Create a requirements traceability matrix linking requirements to design, test, and delivery. Use when the user says "traceability matrix", "RTM", "requirements traceability", "link requirements to tests", "trace requirements", "coverage matrix", "are all requirements tested", "requirements coverage", "forward traceability", "backward traceability" -…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
references/traceability-template.md - Template table for the RTM with all standard columns plus a V-Model diagram showing the requirement-to-test level mapping. Read this in Step 2 when setting up the matrix structure.Based on Requirements Engineering by Elizabeth Hull, Ken Jackson, and Jeremy Dick - the most thorough treatment of pre-RS traceability (source to requirement) and post-RS traceability (requirement to design to test to delivery). Also draws on the BABOK Guide v3 (IIBA) Requirements Life Cycle Management knowledge area, and Mastering the Requirements Process by Robertson & Robertson where each Volere Snow Card links requirement to event, source, and rationale. The key insight from Hull: traceability is not a bureaucratic checkbox. It answers three critical questions: "Why does this requirement exist?" (backward), "Is this requirement implemented?" (forward), and "Is anything implemented that wasn't required?" (coverage).
PROJECT: [name]
TRACEABILITY DIRECTION:
- Backward (pre-RS): Source -> Business Req -> Stakeholder Req -> Functional Req
- Forward (post-RS): Functional Req -> Design -> Code -> Test Case -> Test Result
DEPTH: [How many levels of tracing? Minimum: requirement -> test case]
TOOL: [spreadsheet, requirements management tool, or issue tracker]
Use the template from references/traceability-template.md. The V-Model determines which requirement level maps to which test level:
Business Requirements <------> Acceptance Tests (UAT)
Stakeholder Requirements <------> System Tests
Functional Requirements <------> Integration Tests
Component/Technical Specs <------> Unit Tests
For each requirement, trace backward:
| Req ID | Source | Business Req | Stakeholder Req | Notes |
|--------|--------|-------------|-----------------|-------|
| FR-AUTH-001 | ISO 27001, Security team | BO-3: Reduce security incidents | SR-12: Lock after failed attempts | |
| FR-ORD-005 | Customer feedback Q3 | BO-1: Improve order experience | SR-04: Real-time order tracking | |
This answers: "Why does this requirement exist?" and "What happens if we remove it?"
For each requirement, trace forward:
| Req ID | Design Ref | Test Case ID | Test Result | Status |
|--------|-----------|-------------|-------------|--------|
| FR-AUTH-001 | DD-Auth-3.2 | TC-AUTH-001, TC-AUTH-002 | Pass | Verified |
| FR-ORD-005 | DD-Ord-5.1 | TC-ORD-012 | Fail (defect #234) | Open |
This answers: "Is this requirement implemented and tested?"
Run three coverage checks:
Forward coverage: % of requirements with at least one test case
Forward coverage = (Requirements with test cases / Total requirements) x 100%
Target: 100% for Must requirements, 90%+ for Should requirements
Backward coverage: % of requirements traceable to a business source
Backward coverage = (Requirements with source / Total requirements) x 100%
Target: 100% - any requirement without a source is suspect
Gold plating check: Test cases or design elements that don't trace to any requirement
Orphan tests = Test cases with no linked requirement
Orphan design = Design components with no linked requirement
These indicate scope creep or unnecessary work.
Monitor each requirement through its lifecycle:
| State | Definition |
|-------|-----------|
| Proposed | Identified but not yet approved |
| Approved | Accepted for implementation |
| Designed | Design artifact created |
| Implemented | Code complete |
| Tested | Test cases executed |
| Verified | All tests pass, accepted |
| Deferred | Postponed to a future release |
Deliver the traceability matrix with coverage metrics. Update it as requirements change - the matrix is a living document, not a one-time artifact.
1. Traceability as a checkbox exercise Bad: Filling in the matrix after everything is built, just to satisfy an audit. Good: Building the matrix as requirements are written and maintaining it through delivery.
2. Forward-only traceability Bad: Linking requirements to tests but not back to business sources. Good: Both directions - backward (why) and forward (is it done).
3. No coverage analysis Bad: A complete-looking matrix that's never analyzed for gaps. Good: Run coverage metrics regularly - forward, backward, and gold plating checks.
4. One-to-one assumption Bad: Expecting every requirement maps to exactly one test. Good: Many-to-many is normal - one requirement may need multiple tests; one test may verify multiple requirements.
5. Stale matrix Bad: Matrix created in month 1, never updated when requirements changed. Good: Update the matrix whenever a requirement is added, changed, deferred, or removed.