Framework
Edge cases are the difference between "works" and "works reliably."
Systematic edge case discovery:
| Category | Examples | Test |
|---|---|---|
| Empty states | No data, new user, no history | Does system handle gracefully? |
| Boundary values | Min/max values, zero, negative | Do calculations handle them? |
| Extreme scale | 1M items, 1M users | Does performance hold? |
| Concurrent operations | Same user, two sessions | Does system conflict? |
| Degradation | API down, network slow | Does UX degrade gracefully? |
| Bad data | Invalid input, corrupted data | Does system reject cleanly? |
For each category: List 5-10 specific edge cases your feature must handle.
Actionable Steps
1. Create Edge Case Matrix
List all features + categories above. Fill in specific edge cases.
2. Test Each Edge Case
Don't assume—test. Automated tests for clear edge cases, manual tests for complex ones.
3. Document Handling
For each edge case: How does system handle it? Is this acceptable?
Key Takeaways
- Edge cases aren't exceptional—they're normal when deployed. Plan for them.
- Systematic discovery catches 10x more cases than ad-hoc brainstorming.