Analyze specification quality using Axiomatic Design principles. Optional advanced validation for critical systems. Evaluates independence, completeness, and information content of requirements.
OPTIONAL Advanced Validation Tool for Problem-Based SRS methodology
Purpose: Analyze specification quality using Axiomatic Design principles
When to use: After completing the standard process, when deeper quality analysis is needed
This is NOT part of the standard Problem-Based SRS flow. Use it when you want to:
Standard Flow: customer-problems → software-glance → customer-needs → software-vision → functional-requirements → zigzag-validator
Optional: complexity-analysis (call explicitly when needed)
The complexity analysis is based on Axiomatic Design (Suh, 1990), an engineering design theory with two fundamental axioms:
| Axiom | Name | Principle |
|---|---|---|
| Axiom 1 | Independence | Maintain independence of functional requirements |
| Axiom 2 | Information | Minimize the information content of the design |
Based on the relationship between domains, specifications fall into three categories:
(Number of CNs < Number of CPs) OR (Number of FRs < Number of CNs)
(Number of CNs > Number of CPs) OR (Number of FRs > Number of CNs)
(Number of CNs = Number of CPs) AND (Number of FRs = Number of CNs)
For each mapping (CP→CN and CN→FR), check:
Create a design matrix to visualize relationships:
CN.1 CN.2 CN.3
CP.1 [X] [ ] [ ] ← Ideal: one X per row
CP.2 [ ] [X] [ ]
CP.3 [ ] [ ] [X]
Matrix Types:
| Type | Pattern | Status |
|---|---|---|
| Diagonal | One X per row/column | ✅ Ideal (uncoupled) |
| Triangular | Xs below diagonal only | ✅ Acceptable (semi-coupled) |
| Full | Xs scattered | ❌ Coupled (needs revision) |
Use C (Complete) and P (Partial) markers to indicate how well each element addresses its source:
CN.1 CN.2 CN.3
CP.1 [C] [ ] [ ] C = CN completely solves CP
CP.2 [P] [P] [ ] P = CN partially solves CP
CP.3 [ ] [ ] [C]
Interpretation:
FR.1 FR.2 FR.3 FR.4
CN.1 [C] [ ] [ ] [ ]
CN.2 [P] [P] [ ] [ ]
CN.3 [ ] [ ] [C] [P]
Information Content (IC) measures the probability that a design will successfully satisfy its requirements. Lower IC = better design.
Formula:
IC = log₂(1/p)
Where p = probability of success
For each CN, estimate:
Example:
CN.1: Manager needs to know account balances within 24 hours
Need Range: 0-24 hours (acceptable)
System Range: 0-2 hours (what system delivers)
Overlap: 100% → High probability of success → Low IC ✅
| Scenario | System vs Need | IC Level | Action |
|---|---|---|---|
| System range fully within need range | Full overlap | Low ✅ | Good |
| System range partially overlaps need | Partial overlap | Medium ⚠️ | Review constraints |
| System range outside need range | No overlap | High ❌ | Redesign required |
When running complexity analysis, produce:
## Complexity Analysis Report
### 1. Element Count Summary
| Domain | Count |
|--------|-------|
| Customer Problems (CP) | [N] |
| Customer Needs (CN) | [N] |
| Functional Requirements (FR) | [N] |
**Specification Type:** [Coupled | Redundant | Ideal]
### 2. Independence Analysis
**CP → CN Matrix:**
[Include matrix with X markers]
**CN → FR Matrix:**
[Include matrix with X markers]
**Independence Status:** [Uncoupled ✅ | Semi-coupled ⚠️ | Coupled ❌]
### 3. Completeness Analysis
**CP → CN Completeness:**
[Include matrix with C/P markers]
**CN → FR Completeness:**
[Include matrix with C/P markers]
**Coverage Issues:**
- [List any uncovered CPs]
- [List any uncovered CNs]
- [List any orphan FRs]
### 4. Information Content Assessment
| CN | Need Range | System Range | Overlap | IC Level |
|----|------------|--------------|---------|----------|
| CN.1 | [range] | [range] | [%] | [Low/Med/High] |
### 5. Recommendations
1. [Specific recommendation based on analysis]
2. [Specific recommendation based on analysis]
| Situation | Use Complexity Analysis? |
|---|---|
| Quick prototype or MVP | No |
| Learning the methodology | No |
| Critical system (safety, finance) | Yes |
| Large specification (>20 FRs) | Yes |
| Specification seems bloated | Yes |
| Requirements conflicts detected | Yes |
| Formal review required | Yes |
Element Counts:
Assessment: Redundant specification (CNs > CPs, FRs > CNs)
CP → CN Matrix:
CN.1 CN.2 CN.3 CN.4 CN.5 CN.6
CP.1 [C] [P] [ ] [ ] [ ] [ ]
CP.2 [ ] [ ] [C] [ ] [ ] [ ]
CP.3 [ ] [ ] [ ] [C] [ ] [ ]
CP.4 [ ] [ ] [ ] [ ] [C] [P]
CP.5 [ ] [ ] [ ] [ ] [ ] [C]
Result: Semi-coupled (triangular tendency). CP.1 and CP.4 have multiple CNs but they don't compete. Acceptable.
Version: 1.2
Type: Optional Advanced Validation Tool
Command: /complexity-analysis