# Software testability
## MicroSim spec
- **Recommended sim type:** coverage / observability
- **Microsimmability score:** 79/100
- **Layout:** drawing region (canvas) on top; control region (sliders/buttons) below.
### Parameters (tunable controls)
- `Controllability`
- `Observability`
- `Test effort`
### What animates
Tests exercise and observe internal paths; defect-detection rate climbs as controllability and observability improve.
### Learning objective
Relate fault detection to controllability and observability.
## Links (Wikipedia order)
<!-- injected from _registry/childlinks/Software_testability.json (2026-07-30T02:09:12Z) -->
[[Accuracy_and_precision]] · [[Adaptability]] · [[Algorithmic_efficiency]] · [[Computer_programming]] · [[Correctness_(computer_science)]] · `Design_for_testing` · [[Flexibility_(engineering)]] · `ISO/IEC_9126` · `Indicator_function` · `List_of_system_quality_attributes` · [[Loose_coupling]] · [[Maintainability]] · [[Non-functional_requirement]] · [[Orthogonality_(programming)]] · `ReCAPTCHA` · [[Reliability_engineering]] · [[Reusability]] · [[Robustness_(computer_science)]] · [[Scalability]] · `Separation_of_concerns` · [[Software_portability]] · [[Software_quality]] · [[Software_quality_assurance]] · [[Software_quality_control]] · [[Software_quality_management]] · `Software_requirements` · [[Software_sizing]] · `Software_testing` · `Test-driven_development` · `Testability` · [[Usability]]
> p5.js MicroSim stub · part of System Quality Attributes · [Wikipedia source](https://en.wikipedia.org/wiki/Software_testability)
> Relation: subfield of system quality attributes.
## Concept summary
Testability is how easily a [[System|system]]'s faults can be revealed by testing, driven by controllability and [[Observability|observability]].
## Build checklist
- [ ] Claim it: set `status: in-progress` + `lease` + `leased_at`
- [ ] Write the child page explaining the concept (tie it back to system quality attributes)
- [ ] Finalize parameter ranges and defaults
- [ ] Implement the p5.js sketch (drawing + control regions)
- [ ] Add caption + the learning objective on the page
- [ ] Set `status: done`
## p5.js sketch
```javascript
// MicroSim: Software testability
let controls = {};
function setup() {
// createCanvas(...); create sliders for the parameters above.
}
function draw() {
// background(...); read controls; render coverage / observability; respond live.
}
```
---
Back to System Quality Attributes · Wikipedia: [Software testability](https://en.wikipedia.org/wiki/Software_testability)
---
<!-- SEMIOTIC-PROFILE:START -->
## Semiotic profile
> *The semiotic universals this article invokes, machine-derived from the crossref — **unverified** (born so). Populated 2026-07-06 for the Systems room.*
**Universals (1):** 🟡 system (7)
**Enter by sign:** Systems Semiotic Gateway · Alphabetum · Icon Registry · ← Systems Portal
<!-- SEMIOTIC-PROFILE:END -->
## Wikipedia : Wikitube
**Strict pair:** [Wikipedia](https://en.wikipedia.org/wiki/Software_testability) : [Wikitube](https://en.wikitube.io/wiki/Software_testability)
## Previous hub tags
Tree parent: [[Reliability_engineering]].
Legacy hubs: none.
---
*Sources: 1 legacy note. Minted wave 1, 2026-07-30 (v1.6 order).*