What is an observable software outcome?

Definition

An observable software outcome describes what a system should demonstrably do after a change. Examples include a test passing, a route returning the required response or a build producing a validated artifact.

Outcome-based checks reduce ambiguity because completion depends on external evidence rather than confidence or effort. The observation should be relevant to the requirement and captured from the correct environment.

ELI5

An observable software outcome is a result that someone can inspect or measure directly. Completion depends on evidence from the system, not only on a developer or AI agent saying that the work is done.

For example, a requirement can say that a route must return a valid page with status 200. A saved test result and the actual response show the outcome, while a message saying 'fixed' does not prove it.

How is an observable outcome different from a task description?

A task describes work to perform, while an observable outcome states the measurable state or behavior that proves the work achieved its purpose.

Can every software outcome be checked automatically?

No. Some outcomes require human judgment, but the evidence and review decision can still be stated explicitly and retained.

  1. Prove It - Then Report Done above a flat acceptance-checklist illustration
Definition card for observable software outcome: What is an observable software outcome?

An observable software outcome is a result that can be inspected or measured independently of the developer or agent reporting it.