Heuristic

Separate opposite requirements by condition

The answer may be 'both,' provided the system knows when each one applies.

When it fits

  • The system needs different behavior depending on state, risk, load, user or another observable condition.

When to avoid it

  • Conditional rules can become complex and inconsistent; keep the condition set small, testable and auditable.

Why it matters

Name the condition that changes which property is desirable, then make system behavior conditional on it. Prefer a condition that is observable before the action. This can replace one compromised default with two explicit policies.

An example

Allow automatic deployment for low-risk changes that pass defined checks, but require human approval for high-impact permission or schema changes.

Check your result

The system has an observable condition that determines which opposite behavior applies.

Keep this limit in mind

  • Conditional rules can become complex and inconsistent; keep the condition set small, testable and auditable.

Evidence and sources

Supports

Classical TRIZ lists separation in time, separation in space and separation upon condition among methods for resolving physical contradictions.

These are solution-search heuristics; implementation still needs domain evidence, safety and feasibility checks.

Contradictions · Methods for resolving physical contradictions

All sources (1)